美文网首页解密大数据IT在线课程
Python 学习笔记 Lesson 02 & 03

Python 学习笔记 Lesson 02 & 03

作者: LY加油站 | 来源:发表于2017-08-24 21:24 被阅读144次

    ​这个编程系列我采用的方法是,照着老师课件一步步跟做,遇到问题就记录,能搜索解决就搜索解决,搜不到的去提问,尽量找到解答。

    简书专栏里有非常完备的新手上路指南(从下载软件开始),我就不一步步搬运了。

    这里主要是根据我在操作时出错的地方,从小白的角度做下总结,同时也分享入门路上的体验,希望能对你有点帮助。

    本文分两部分,第一部分是我自己做的课程知识总结,第二部分是错误汇总及心得。


    一、上课内容复盘:

    Lesson2和Lesson3两节课总的来说都是基础介绍。

    如果说第一节课是入门、安装,以及熟悉界面的话,第二节和第三节主要就是最基本的功能介绍,简单概括为四部分,数据结构、条件语句、循环和函数。

    数据结构部分,讲了编程时用到的基础元素都叫什么名字、长什么样、能干什么。

    ◆整型int(比如2)

    ◆浮点型float(比如2.15)

    ◆复数型(比如1+i,课上没讲,估计使用范围不太多)

    ◆布尔bool(True/ False)

    ◆字符串str(一串字符“hello world“)

    ◆列表list(比如family=[‘dad’, 1.6, 'mom', 2.0, 1.7, 'dog', 1.5])

        列表用「,」分割,用「:」切片,什么类型都能存,可以增改删。

    ◆元组tuple (比如 team=[poppy, 5, honey, 3.1, money])

       元组与列表高度相似,相关操作也可使用,但不能增改删。

    ◆字典dictionary (一堆一一对应的键和值,比如score={'marry':68, 'cuihua':86, 'tom':35})

     「:」前是键key,「:」后是值value,键指向值,字典无序,可以增改删。

    小结:

    1、比较容易搞混的是列表、元组、字典的表现形式,即各种不同括号。好在列表和元组基本长一样,剩下一个就是不常用的{},专属于字典。

    2、字符串、列表、元组和字典,均可使用[ ]取其一部分,只不过[ ]里的内容略有不同,前三个都是有序排列,因此按照0、1、2、3…的顺序进行索引,最后一个字典无序,是用「键」进行索引。

    (其实这么一总结,感觉要记住的东西也不算很多)


    条件语句主要判断是和非,以及如何让计算机明白『在什么条件下做什么』。

    ◆布尔表达式(==  !=  <  >  is  is not)

    ◆逻辑运算符(and  or  not)

    ◆条件执行(if  elif  else…根据存在的可能性数量,选取对应的语句数)

    循环主要是for和while,包括它们长什么样、各自怎么用、组合在一起怎么用。

    每个循环的开始,都要进行一次判断,然后再逐个访问元素,找到『目标』、实现『目的』。

    ◆for:遍历任何序列的项目,即,逐个过一遍,谁也跑不掉(使用恰当方法,也是跑得掉的,比如continue)

    常用格式

    for xxx in XXX:

    balabalabala

    balabalabala

    ◆while :什么情况下做什么

    常用格式

    定义变量

    while balabala:

    balabalabala

    balabalabala

    更新变量

    (在判断出False时,循环结束)

    ◆在for和while中,使用break跳出循环,使用continue跳入下个循环

    函数分为两种,一种是Python的内置函数(自带的工具包),直接拿来用就能出结果;另一种是自定义函数(自己做的工具包),是把具体问题拆分,再把一堆解决步骤打包到一起。

    ◆内置函数:type()、 int()、 float()、 str()、 len()、 range()、 max()、 min()…

    ◆自定义函数:形式是  def函数名(参数,可省略),最后返回/不返回结果均可,

    调用时使用  函数名(参数)。

    二、实操过程中的问题总结:

    1、  变量名称最好有意义,方便以后操作,比如用height代表高度,从一开始就应该养成好习惯。

    2、调用函数时,用的是名称.函数名()的方式,名称在前,函数名在后,不要颠倒顺序。

    3、 对字符形式还是不够敏感,比如打印时,应该记得加上’ ‘。

    4、while循环里特别容易出问题的点就是,执行完一次循环后,忘记将变量更新(比如+1),结果变成了死循环。

    5、死循环时,左边显示行数的In[ ],会变成In[*]。有*就是有错

    6、将造成死循环的错误修改之后,要restart一次(kernel/restart),然后在运行一下(shift

    +enter)才可以正常通行,restart代表把原来的内存清零,但是不代表运行。

    (另,不建议用restate all,不然会从第一条重新运行,然后卡在你为了复习方便特意保留的出错kernel,于是剩下的部分就要一条条手动run…别问了,我就是知道…)。

    7、数字作为判断条件时,要注意=的影响,以下是个错误案例,我在条件里多打了一个=(老师的例子里 number <20),实际上是没有的。

    以下是正确的:

    8、在循环中出现的问题,有时候只是因为缩进的位置不对造成的,感觉python对于「对齐」还是有比较深的执念,不同的语句都要跟对等的条件保持对齐。

    9、error出现在哪一行,不代表问题就在那一行,只是刚巧运行到它执行不下去了。出了问题多往前翻翻。

    计算加班工资的练习,出现以下错误

    实际上与21行没关系,错误在于,先定义user = str,却判断时却拿它和整型0对比

    10、不要打错字!不要打错字!不要打错字!

    心得:

    基础知识看似简单,但是学习过程中发现一个比较明显的问题:学得越多,越感觉混乱。虽然每次做作业练习时还算顺利,但等过后回头去想,感觉各种知识点好像又都混在了一起。

    感觉出现这个问题的主要原因在于,对于概念不够清晰。

    从数据结构开始,虽然从布尔、整型到元组、字典,每个都掌握了,但由于练习过少,对于它们之间的差别(包括()/[]/{},各种命令调取时的方式等等)都不能快速辨别。

    一个有用的对策就是,像上面第一部分那样,把学过的东西归类和总结,过程中会发现一些共通点和差别,把这些内容重新归类,就是个内化的过程。

    合并同类项的好处是,给大脑减轻点负担,而且也能够查缺补漏。

    另外分享一个学习课程时使用的方法,老师在讲课时提出一个新的概念,在应用它之前,可以先暂停视频,根据要求自己试着做一下,然后再与老师做的对比。

    对于一直没有在课前进行预习的同学来说,这种回看过程中的『迷你预习』,能让自己更加投入,也印象更深点,算是对冲没有课前预习的损失。


    推荐阅读:

    Python 学习笔记 Lesson01

    努力做个沉迷学习的好少年!——元学习课实践及体验

    欢迎关注微信公众号,LY加油站。

    相关文章

      网友评论

      • 彭健平6点30:感觉基础知识还是自己多实践多查才更深刻, 刚做项目的时候列表、元组、字典查了十几遍才有点感觉哈
        LY加油站:@彭健平真实 是的,惟手熟尔~

      本文标题:Python 学习笔记 Lesson 02 & 03

      本文链接:https://www.haomeiwen.com/subject/ebfydxtx.html