您的位置:首页 > 编程语言 > Python开发

Python编程:从入门到实践读书笔记-4 操作列表 & 5 if语句

2017-03-22 23:42 543 查看
今天学习效率还行,就是中间没管住自己,玩了会儿手机,学习速度感觉还是稍微有点慢,后面尽量加快学习速度

复习过程中发现还是有遗忘,以后在公司坐班时要复习

学前复习:
1. 今天练习切片时,想对list中的每个元素首字母大写后,进行打印输出,使用了title()方法,但是一直报错     
     我是这样写的:
          cities = ['china','usa','russa','england','france','germany']
          print(cities.title())
     报错提示:print(cities.title())
          AttributeError: 'list' object has no attribute 'title'
后查询,title()方法只能对字符串里面的所有单词首字母大写,不能对list里面所有元素首字母大写,因此正确的方法是:
          ' '.join(names).title().split()
     暂不明白为什么,待周末整理所有疑问后再解答!

4.5 元祖(tuple)
     Python将不能修改的值称为不可变的,而不可变的列表被称为元组。
     4.5.1 定义元组(使用圆括号()定义,list使用方括号[]定义)
          元组看起来犹如列表,但使用圆括号而不是方括号来标识。禁!止!修!改!
     
          eg:
               names = ('china','usa','russa')
               print(names[1])
               names[1] = 'USA'
          op:
               TypeError: 'tuple' object does not support item assignment
     4.5.2 遍历元组中所有值
          eg:
               names = ('china','usa','russa')
               for name in names:
                   print(name)
          op:
               china
               usa
               russa
     4.5.5 修改元组变量
          修改元组变量某种程度上可以这样理解:因为Python是动态语言,元组元素无法修改,可以对其重新赋值即可。
          eg:
               names = ('china','usa','russa')
               print("Original names is :")
               for name in names:
               print(name)

               names = ('chinese','american','russian')
               print("\nmodified names is :")
               for name in names:
               print(name)
          op:
               Original names is :
               china
               usa
               russa

               modified names is :
               chinese
               american
               russian
          注意:如果需要存储的一组值在程序的整个生命周期内都不变,可使用元组。

4.6 设置代码格式
          目的:1. 使代码易于阅读,既方便自己掌握代码的目的,又方便他人理解你的代码
     4.6.1 代码设置指南
          要提出Python语言修改建议,需要编写Python改进提案(Python Enhancement Proposal, PEP)。
     PEP 8是最古老的PEP之一,它向Python程序员提供了代码格式设置指南。
          如果想写出清晰的代码,请做到如下:
     4.6.2 缩进
          PEP 8建议每级缩进都使用四个空格,这既可提高可读性,又留下了足够的多级缩进空间。
     4.6.3 行长
          很多Python程序员都建议每行不超过80字符,PEP 8还建议 注释的行长都不超过72字符,
     因为有些工具为大型项目自动生成文档时,会在每行注释开头添加 格式化字符。
          (pad ++ 如何设置缩进和行长???根据附录B选择一款合适的编辑器!!!
     4.6.4 空行
          要将程序的不同部分分开,可使用空行。你应该使用空行来组织程序文件,但也不能滥用;

          空行不会影响代码的运行,但会影响代码的可读性。

5.1 一个简单示例
     检查当前汽车名是不是'bmw',是则大写,不是则对首字母大写:
     eg:
          cars = ['audi', 'bmw', 'subaru', 'toyota']
          for car in cars:
               if car =='bmw':
                    print(car.
aab8
upper())
               else:
                    print(car.title()) 
     op:
          Audi
          BMW
          Subaru
          Toyota
5.2 条件测试
          每条if语句的核心都是一个值为True或False的表达式,这种表达式被称为条件测试。
          Python中,条件测试为True,执行紧跟if语句后面的代码
                           条件测试为False,就忽略这些代码
     5.2.1 检查是否相等
          大多数条件测试都将一个变量的当前值同特定值进行比较。
          最简单的条件测试检查变量的值 是否与特定值相等:
          eg:
               car = 'bmw'
               car == 'bmw'
          op:
               True
          解释:上例中,单等号=可理解为赋值运算
                                 双等号==则为检查car的值是否为'bmw'。
                                 这个相等运算符在它两边的值相等时返回True,
                                 否则返回False。
     5.2.2 检查是否相等时不考虑大小写
          首先,在Python中是区分大小写的,即
          eg:
               car = 'Audi'
               car == 'audi'
          op:
               False
          如果大小写无关紧要,而只想检查变量的值,可 将变量的值转换为小写,再进行比较:
          eg:
               car = 'Audi'
               car.lower() == 'audi'
          op:     
               True
          注意:这个方法在网站上进行校验验证码时最常用,即输入小写,对正确校验码转为小写,想通为True即可。
     5.2.3 检查是否不相等
          要判断两个值是否不等,可结合使用惊叹号和等号(!=),其中的惊叹号表示不,在很多编
     程语言中都如此。

    小结:  通过每节后面的练习题发现还是有知识点遗漏,比如说一些方法,全部大小写,list和tuple的区别,list的一些用法,学是一方面,后续的复习也很重要,加油!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息