本周即Python学习的第一周,其实笔者在参加培训之前已经自学了Python的基础知识,故前两周的任务意在巩固基础,更加系统地学习一门语言,并弥补自己在细节上的缺漏。
Python是一种解释型语言,跨平台性强,学习初期简单易上手,最明显的缺点是执行效率较C语言等低下。但当今计算机硬件已经足够发达,开发人员的关注点便逐渐从细微的执行效率差异转移至开发效率上来。同时,大量与机器学习、数值分析相关的应用促使Python得到了广泛关注,其在权威语言排行榜的位次日益上升。笔者科班出生,目前为川内某985高校在读硕士,就学院内而言,除网安、灾备方向外,如若在毕业论文中不应用机器学习、深度学习,则会显得对技术前沿缺乏关注,工作量不够。
同时,Python拥有丰富的第三方库,许多应用都有现成的模块以供调用,多数情况下可以越过造轮子的环节直接开车,节约了时间,提高了效率,使编程人员关注于程序整体的实现而非细枝末节的构造。
本周的学习内容主要分为Python概述、变量(作用、命名、类型)、运算符(赋值、算数、关系、逻辑、身份)、分支结构(if ... elif ... else)、循环结构(while 、for)五部分。其具体内容与C、C++,Java语言等高级编程语言类似,需要注意的是:
1)Python通过缩进来控制代码段的归属;
2)变量名中涉及多个单词的情况下,建议用下划线进行分隔(C,C++,Java往往采用“驼峰命名法”);
3)Python独有的简便语法帮助程序员提升开发效率,在今后的学习、开发中应灵活运用.如:
#交换两个数的值
C Python
temp = x x , y = y, x
x = y
y = temp
通过一周的学习,主要收获如下:
1)解决了之前Python解释器无法运行的问题,主要源于更新DirectX之后导致某些动态链接库文件缺失,安装DirectX Repair V3.5 (Enhanced Edition)后进行修复即可;
2)了解了PyCharm的Debug功能,其实和Visual Studio很相似,此处用于巩固;
3)学习了jupyter安装和使用(注:jupyter在安装过程中如果提示内存不足,不一定是虚拟内存或实际内存不足,有可能换个盘安装即可成功,笔者C盘为固态盘,D-G盘为机械盘,原本Python3.6.x位于C:/ 后改为E:/ 问题迎刃而解)。jupyter的notebook及ipython适用于交互式环境下的开发,而PyCharm集成开发工具更适合做团队开发以及需要使用多文件多模块的大型项目,后者在今后的项目、工作中更为通用。
4)重新找回了编程的感觉,大学毕业后到此之前再没有正儿八经地敲过代码。
总的来说,培训让我感觉到虚度了一半的研究生时光后终于做了点正事。当初读研的初衷在于谋求高起点,用三年的时光磨练技术,一切准备就绪后踏入职场。如今时间过半却发现学到的东西少之又少,相较于同期的小伙伴,自己的就业压力远没有毕业压力沉重,希望半年之后能拿出一个出色的成品,一物两用,毕业就业双丰收!拼搏,到无能为力;坚持,到感动自己!