selfteaching-learning-notes.github.io icon indicating copy to clipboard operation
selfteaching-learning-notes.github.io copied to clipboard

1901100351-自学训练营20-python入门

Open rtgong opened this issue 6 years ago • 11 comments

学员信息

  • 学号:1901100351
  • 职业:文字工作者
  • 年龄:年近不惑
  • 目标:探索这个陌生的世界

Day 01

  • 学习内容:使用github进行协作
  • 学习用时:60分钟左右

学习笔记

收获总结

连猜带蒙完成任务,约略理解github协作模式和版权。

遇到的难点与问题

没有及时学会打卡和按要求记录学习心得,直到第4次作业时才摸索出来。


Day 02

  • 学习内容:配置本地运行开发环境
  • 学习用时:0

学习笔记

收获总结

由于之前参加过体验营,在教练的帮助下,环境已安装好。

遇到的难点与问题

后来发现,体验营安装的环境其实不完全,后来又学习安装jupyter lab 和 git


Day 03

  • 学习内容:编写简单计算器程序
  • 学习用时:300分钟

学习笔记

收获总结

学习有效搜索、模仿,感觉正式进入代码世界。

遇到的难点与问题

完成任务初始阶段,感觉指导文件太过模糊,确定具体任务就花了好长时间;直到搜索到战友的作业,才真正明白任务,复制粘贴后尝试阅读,大体结构能够理解,若干细节还有问题,后来通过阅读与搜索才逐步解决。


Day 04

  • 学习内容:控制流程,打印乘法表
  • 学习用时:120分钟

学习笔记

收获总结

01 经过前3次作业,对自学有了新的认识,没有急于完成作业,先仔细阅读相关文件,再去探索,实际完成任务时间大大缩短。 02 初步理解控制流程,理解若干语句和常用符号。

遇到的难点与问题

01 感觉一大堆的符号扑面而来,只能慢慢理解和掌握,包括符号的用法,甚至是否空格的细节,都需要注意。 02 细心和耐心,特别重要。阅读,探索,使用。


Day 05

  • 学习内容:理解数据容器,处理字符串、统计字符串次数、操作数组
  • 学习用时:约10小时

学习笔记

收获总结

这一章涉及的知识点比较多,消化起来需要一个过程,但通过搜索、比较、修改,大体上知道字符串、列表、字典的基本用法,尤其是通过搜索,能够完成一些不太复杂的任务。

遇到的难点与问题(是否解决)

复杂任务的分解,还是有一些问题,比如数组操作中为何要先初始化字符,翻转后的拼接为何是这样的?

for i in range(0,len(array)): string=string+str(array[i])

以及reverse与string[::-1] 的使用有何区别,还是未能彻底搞清楚。


Day 06

  • 学习内容:自定义函数的基本概念与运用
  • 学习用时:4h

学习笔记

收获总结

工作中会涉及到大量重复性动作,通过自定义函数就可以把某个单元的重复性动作进行封闭定义,然后自动重复运行。

这是提高工作效率极好的一个思路和方法,但在自定义函数中有许多应注意的地方,比如要把动作进行科学分解,要注意可能出现的细节,等等。

遇到的难点与问题(是否解决)

实际操作中,第二次才成功。第一次采取DAY5作业中的思路,直接加自定义函数,但卡在一个细节上,没有找到解决办法,最后只好另起炉灶,参考其他战友的作业,换了一个思路才成功。

在编辑器中始终显示有一行代码中有错误,不知道如何修改,但貌似可以正常运行,就没有深究了。


Day 07

  • 学习内容:学习和理解模块调用
  • 学习用时:20分钟

学习笔记

收获总结

自定义函数的目标是为了用,尤其是重复地用。这个时候,把任务中的重复性动作拆解出来是第一步,把重复性动作封装成一个函数模块是第二步,调用这个模块就是第三步。

遇到的难点与问题(是否解决)

在调动模块时,一定要注意调用的路径。如果在同一个文件夹可以忽略,但如果在不同文件夹就必须写清路径。


Day 08

  • 学习内容:学习python中的异常处理
  • 学习用时:60分

学习笔记

收获总结

在DAY7作业的基础上,修改参数,主要是if…else的使用,检查参数是否符合要求,如果不符合要求就给出提示。

遇到的难点与问题(是否解决)

函数设置好后,尝试在参数中设置了一些数值,但运行后仍然是之前的结果。


Day 09

  • 学习内容:学习标准库的调用
  • 学习用时:60分

学习笔记

收获总结

标准库就相当Python中常用函数的快捷方式,也是编程中常规武器库。如果能够熟练掌握应用,那肯定可以大大提升工作效率。

遇到的难点与问题(是否解决)

作业总体上不难,通过阅读与搜索,能够大致读懂别人的代码和逻辑,但如果不借鉴,自己仍无从下手。过程中调用‘tang300.json’出现问题,在教练的帮助下解决,理解了调用地址的概念。


Day 10

  • 学习内容:学习使用第三方库
  • 学习用时:120分

学习笔记

收获总结

01 阅读和理解第三方库,相当于更大更复杂的函数调用。 02 在上一次作业的基础上,根据作业要求,写出第三库调用及有条件打印的代码,顺利完成任务。

遇到的难点与问题(是否解决)

在安装第三方库时遇到一点问题,然后搜索,尝试不同方式顺利解决。


Day 11

  • 学习内容:综合利用几种第三方库统计一篇公众号文章的词频
  • 学习用时:180分

学习笔记

收获总结

01 进一步熟悉第三方库的安装; 02 对库的调用和函数定义有进一步了解。

遇到的难点与问题(是否解决)

01 自定义函数的某些表达虽然写出来了,但为何这样写,仍不太清楚; 02 在发邮箱的具体操作中,卡了很久,老是显示:

socket.gaierror: [Errno 11004] getaddrinfo failed

多次搜索后,调试了邮箱的SMTP和电脑的DNS,但仍未能解决。最后发现,“输入发件箱密码”,其实是要输入“发件箱授权码”(即在开启SMTP时设置的“授权码”)。


Day 12

  • 学习内容:将之前的作业打包,通过wxpy在微信中实现有用的服务
  • 学习用时:120分

学习笔记

收获总结

通过阅读与搜索后,完成代码,大体上理解程序打包与调用的流程,对实际场景中的应用也有初步感受。

遇到的难点与问题(是否解决)

代码调试时,总是显示登陆错误,pass_ticket。进一步搜索后才知道是微信官方对登陆网页版的限制,暂时也没有更好的办法破解,后续实际场景中的应用未能完成。


Day 13

  • 学习内容:学习使用第三方库,把数据做成图表
  • 学习用时:60分

学习笔记

收获总结

通过阅读参考文献,在没有参考其他同学的作业下独立完成,感觉对编程的理解和应运有了进步。

只字不差地阅读,理解结构,理解细节,是完成项目的关键!

遇到的难点与问题(是否解决)

把数据转化成可视为的图表,关键是把数据结构梳理出来,核心在X和Y轴如何表达。过程中对个别设置还未能完全理解,但通过搜索和应用大致掌握,关键还是要在用的过程中加深理解。


依样画葫芦算是“快速入门”么?

想学编程大概已有两年多,主要是听了许多牛人,包括笑来老师的介绍后,越来越觉得编程是个重要的工具。虽然从自己目前的工作来看,似乎还看不出有什么具体的应用场景。但还是抽出时间,从2019年的8月中旬开始,用了将近2个月的时间,学完了“入门14次课”。

 总体感觉,这是一个陌生而庞杂的世界,需要更多时间和精力去摸索。

对于入门而言,14次课确实不多。但这的确是一个陌生而庞杂的世界,刚开始接触时一度感到崩溃,大概从第5次作业开始才慢慢体会到自学的精义。

自学不是一个人默默地学习,而是仔细阅读、快速搜索后有社交的学习。

通过仔细阅读材料,细致搜索资料,就像野外生存过程中找到一些必要工具后一样,大体上能够比较顺利地完成作业。到第13次作业时,在结构上对编程的理解,似乎有了感觉。

必须承认的是,尽管每次作业平均都要花3个小时以上,但感觉仍然远远不够。在完成作业时,多数情况下对整体的逻辑结构大体能基本搞清楚,但少数细节还是不甚了了,甚至很多时候都是搜索资料后的依样画葫芦

每次作业后,都会对照教学视频再做一遍,但有时仍会有不些难于理解、甚至无法解决的问题。所以,才不得不感叹:

 依样画葫芦算是快速入门么?

回答这个问题,可能仁者见仁,智者见智。我自己的理解,关键不是看你画得好不好,像不像? 如果通过深入、仔细地阅读、搜索和探索,画得好、画得像,甚至能够以不同角度、不同层次地画出来,那这个入门的质量肯定不会差。

而我自己显然没有达到这个程度。这既有时间、精力的因素,也有其他因素。比如,对于这个技能的学习和掌握,还没有成为目前的刚需。

但既然大体上入门,就跟之前的完全不懂、不会有了区别。

 比如,在学习编程的过程中,就习惯了使用markdown写文章,学会了公众号的一键排版,虽然远没有到精通和完美的程度,但毕竟是进了一个不太一样的世界。

入门课的改进看,教练和教学视频的质量还需要提高。但如果用自学的定义来审视,这些遗憾都不是问题,更重要的是你的深度阅读、搜索、摸索和有效交流。

一个新的世界在打开,但风景需要进入你有足够的耐心。

rtgong avatar Aug 28 '19 13:08 rtgong

由于之前的失误,理解不到位,把前4次作业打卡一次性补上,不知是否算数?

@liujiayi0042

rtgong avatar Aug 28 '19 13:08 rtgong

完成第5次作业打卡,请收查 @liujiayi0042

rtgong avatar Sep 01 '19 13:09 rtgong

完成第6次作业打卡,请查收 @liujiayi0042

rtgong avatar Sep 07 '19 14:09 rtgong

完成第7次作业打卡,请查收 @liujiayi0042

rtgong avatar Sep 11 '19 13:09 rtgong

教练-练巨人,请查收DAY8作业 @liujiayi0042

rtgong avatar Sep 15 '19 12:09 rtgong

完成第9次作业打卡,请查收!

@liujiayi0042

rtgong avatar Sep 20 '19 12:09 rtgong

完成第10次作业打卡,请查收!

@liujiayi0042

rtgong avatar Sep 28 '19 09:09 rtgong

教练-练巨人 @liujiayi0042

rtgong avatar Oct 01 '19 15:10 rtgong

教练-练巨人,完成第12次作业及打卡,请查收~

@liujiayi0042

rtgong avatar Oct 06 '19 13:10 rtgong

完成第13次作业打卡,请查收 @liujiayi0042

rtgong avatar Oct 12 '19 13:10 rtgong

完成第14次作业打卡,请查收 @liujiayi0042

rtgong avatar Oct 20 '19 02:10 rtgong