多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[TOC] ***** # 4.1 遍历整个列表 **遍历列表** :之后可以包含缩进的多行代码,代码块 ``` magicians = ['alice', 'david', 'carolina'] for magician in magicians: print(magician.title() + ", that was a great trick!") print("I can't wait to see your next trick, " + magician.title() + ".\\n") ``` # 4.2 避免缩进错误 Python根据缩进来判断代码行与前一个代码行的关系。在前面的示例中,向各位魔术师显示消息的代码行是for循环的一部分,因为它们缩进了 ![](https://img.kancloud.cn/ad/a4/ada4e00828beaceadc36f8269d858d02_414x210.png) **注意** for语句末尾不要漏掉冒号 # 4.3 创建数值列表 ## 4.3.1 使用函数 range() range()生成一系列的数字 ![](https://img.kancloud.cn/ad/a4/ada4e00828beaceadc36f8269d858d02_414x210.png) ## 4.3.2 使用 range()创建数字列表 用函数list()将range()的结果转换为列表 生成1到5的数字列表 ![](https://img.kancloud.cn/ad/a4/ada4e00828beaceadc36f8269d858d02_414x210.png) **指定生成数字列表的步长** ![](https://img.kancloud.cn/ad/a4/ada4e00828beaceadc36f8269d858d02_414x210.png) **两个星号(**)表示乘方运算** ``` int a = 5; b = a**2; # b =25 ``` ## 4.3.3 对数字列表执行简单的统计计算 ``` digits = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] min(digits) max(digits) sum(digits) ``` ## 4.3.4 列表解析 创建数字列表 ``` squares = [value**2 for value in range(1,11)] #结果 #[1, 4, 9, 16, 25, 36, 49, 64, 81, 100] ``` # 4.4 使用列表的一部分 切片: 列表的部分元素 ## 4.4.1 切片 在到达你指定的第二个索引前面的元素停止,要输出列表中的前三个元素,需要指定索引0~3 ``` players = ['charles', 'martina', 'michael', 'florence', 'eli'] print(players[0:3]) #结果 # ['charles', 'martina', 'michael'] ``` 没有指定第一个索引, Python将自动从列表开头开始: ``` players = ['charles', 'martina', 'michael', 'florence', 'eli'] print(players[:4]) #结果 #['charles', 'martina', 'michael', 'florence'] ``` 让切片终止于列表末尾 例如: 从第3个元素到列表末尾的所有元素 ``` players = ['charles', 'martina', 'michael', 'florence', 'eli'] print(players[2:]) #结果 #['michael', 'florence', 'eli'] ``` 负数索引返回离列表末尾相应距离的元素 例如: 返回从倒数第三个元素到列表末尾的所有元素 使用切片players[-3:] ## 4.4.2 用for循环遍历切片 ``` players = ['charles', 'martina', 'michael', 'florence', 'eli'] for player in players[:3]: print(player.title()) #Here are the first three players on my team: #Charles #Martina #Michael ``` ## 4.4.3 使用切片复制列表 ``` my_foods = ['pizza', 'falafel', 'carrot cake'] friend_foods = my_foods[:] ``` friend_foods 是 my_foods 列表的复制 # 4.5 元组 不可变的列表被称为元组 ## 4.5.1 定义元组 ``` dimensions = (200, 50) print(dimensions[0]) #结果 # 200 ``` 如果试图修改元组中的元素,将返回错误消息 dimensions[0] = 250 ``` Traceback (most recent call last): File "dimensions.py", line 3, in dimensions\[0\] = 250 TypeError: 'tuple' object does not support item assignment ``` ## 4.5.2 for循环遍历元组中的所有值 ``` dimensions = (200, 50) for dimension in dimensions: print(dimension) ``` 200 50 ## 4.5.3 修改元组变量 ``` dimensions = (200, 50) dimensions = (400, 100) ``` # 4.6 设置代码格式 PEP 8:请访问 https://python.org/dev/peps/pep-0008/