1、遍历整个列表
for循环语句
magicians = ['alice', 'david', 'carolina']
for magician in magicians: # for、in是关键字,冒号不能忘
print(magician) # 缩进四个字符
# 上面的for循环逐个遍历了列表 magicians 并存储在变量 magician 中,每存储一次,就打印出来
输出是:
Python不像C/C++那样,每句代码的结尾有 ;表示结束、代码段会有{}圈定,所以Python会特别的注重缩进,也是迎合了Python之禅里面的优美的讲述。Python会根据缩进判断是否多句代码在同一代码段,缩进不正确也会报错,在错误提示这方面PyCharm做的比较完善,学习Python的前期建议用简单的编辑器、IDE,方便于养成良好的习惯,后期在转到功能强大的IDE上,更有利于开发效率。
for循环体里面可以有N多句代码
magicians = ['alice', 'david', 'carolina']
for magician in magicians:
introduce = "Welcome " + magician.title() + " !"
print(introduce)
输出是:
若是想在for循环结束之后再写一些逻辑,只要恢复缩进即可
magicians = ['alice', 'david', 'carolina']
introduce = ''
for magician in magicians:
introduce = "Welcome " + magician.title() + " !"
print(introduce)
introduce = "The End !"
print(introduce)
输出是:
2、创建数字列表
使用函数range()
for value in range(1, 5):
print(value)
输出是:
注意: range(1, 5) 包含1,但不包含5 相当于 数字列表 [1, 2, 3, 4] ,若想包含1 - 10 ,应写成 range(1, 11) .
使用函数range()创建数字列表
number = list(range(1, 11))
print(number)
odd_number = list(range(1, 11, 2)) # range函数可以指定步长,从 1 开始,不断的加 2 知道列表的终值
print(odd_number)
even_number = list(range(2, 11, 2))
print(even_number)
输出是:
对数字列表执行简单的统计计算
最大值、最小值、总和
digits = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
print('min = ' + str(min(digits)))
print('max = ' + str(max(digits)))
print('sum = ' + str(sum(digits)))
输出是:
列表解析
# ----- 1 ------
squares = []
for value in range(1, 11):
square = value ** 2
squares.append(square)
print(squares)
# ----- 1 ------
# ----- 2 ------
squares = [value ** 2 for value in range(1, 11)]
print(squares)
# ----- 2 ------
#上下两段代码等价
输出是:
3、使用列表的一部分
切片
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[0:3]) # 输出的是从索引0到索引3之间的元素, 不包含索引为3的元素 等价于 players[:3]
print(players[1:4]) # 输出的是从索引1到索引4之间的元素, 不包含索引为4的元素
print(players[:4]) # 输出的是从索引0到索引4之间的元素, 不包含索引为4的元素
print(players[2:]) # 输出的是从索引2到结束
print(players[-3:]) # 输出的是最后三个元素
输出是:
遍历切片
players = ['charles', 'martina', 'michael', 'florence', 'eli']
for player in players[:3]:
print(player)
输出是:
复制列表
players = ['charles', 'martina', 'michael', 'florence', 'eli']
copy_players = players[:] # 不可写成 copy_players = players ,这样的话 copy_players 和 players指向的是同一内存块,列表并没有在内存中另外备份,改变 players 则 copy_players 也会跟着改变,就像是一个人有个大名,也有个小名,指向的目标只有一个
print(players)
print('*****分割线*****')
print(copy_players)
输出是:
4、元组
定义元组
元组看起来犹如列表,但是用圆括号()而不是方括号表示。定义元组后,就可以使用索引来访问其元素,跟访问列表一样。元组的元素是不可以修改的,但可以给存储元组的变量重新赋值,因此,想要修改元组的元素,可以重新定义元组。
dimensions = (200, 50)
print(dimensions[0])
print(dimensions[1])
print('-----分割线-----')
for dimension in dimensions:
print(dimension)
print('-----分割线-----')
dimensions = (400, 350)
for dimension in dimensions:
print(dimension)
输出是:
了解代码格式
格式设置指南 :PEP 8
缩进 :4
行长 :建议每行不超过80个字符 注释每行不超过72个字符 注:每个汉字占两个字符
空行 :将不同的代码段分割可以使用空行,合理使用空行可以使代码更具可读性。