目录
1.遍历
for循环
magicians = ['alice','david','carolina']
for magician in magicians:
print(magician)
①. 对列表的每个元素,都将执行指定的步骤,而不管列表包含多少元素。
②. 对于存储列表元素的变量名,可随意制定名称,但考虑到实际使用,可采取与列表名相同的单复数形式,例如上述代码段中,列表名为magicians,变量名则使用了单数形式magician。
③. 在for循环的后续的缩进语句中,可包含任意行代码,且针对每个元素都会执行一次。例如,在如下语句中,对每个元素,都会执行两次print语句。此外,“\n”为插入空行作用。
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")
2.缩进
①. 若for循环后无缩进语句,则python程序找不到for循环的后续执行语句,进而报错;
②. for循环只会对缩进语句进行重复执行,直至元素遍历完毕,对需重复执行而未缩进语句,将会排除在循环操作之外。
③. python中只有在for循环中对每个元素执行的代码需要缩进,对无需缩进的代码进行缩进编写后,python会指出错误。
④. 对实际执行中,对本应执行一次却执行多次的语句,以及本应执行多次却执行一次的语句,需查看代码缩进是否有误。
⑤. for循环语句末尾有一个冒号“:”,不可遗漏,否则python无法执行操作,提示如下错误,但不会直接指出缺少冒号,因为python不知你要执行什么操作。
3.数值列表
①. 函数range():该函数从指定的第一个值开始数,到指定的第二个数停止,例:
for value in range(a,b):
print(value)
上述代码段只会输出a到(b-1)的数字,而不会输出b,这是因为函数range()会从指定的第一个值开始数,到指定的b值前停止,即不会包括b,因此输出只到b-1为止。在使用range()时,若输出不符预期,尝试将指定值(第二个值)加1或减1。
②. 函数list():与range搭配使用,可直接创建列表,例如:
numbers = list(range(1,6))
print(numbers)
可得到一个列表numbers=[1,2,3,4,5]
③. 列表解析:用一行语句创建一个列表
squares = [value**2 for value in range(1,11)]
print(squares)
创建一个名为squares的列表,元素为1到10的平方。注意,此时for语句没有冒号":"。
4.使用列表部分元素
①. 切片
利用索引号,输出列表中部分元素:
players = ['dsaf','dhgd','dhdhd','dhdhdh','ukh']
print(players[m:n])
上述代码输出索引号m到n-1的元素,注意以下几点:a. 输出只到player[n]元素之前; b. m与n可以为空,当仅m空置时,默认从列表开头开始,同理,当仅n为空时,默认到列表末尾结束;c. 当m为负数,n为空时,从列表末尾开始,引用m个元素;d. 当m与n都为空时,相当于将整个列表都复制一边。
②. 利用切片遍历部分元素
将for与切片搭配使用,可仅输出部分元素:
players = ['dsaf','dhgd','dhdhd','dhdhdh','ukh']
for player in players[:3]
print(players[m:n])
以上代码仅会输出players中前三个元素,而不是全部元素。
③. 复制列表中已有元素到新列表
old = ['xxx','ddd','hhh']
new = old[:]
print(old)
print(new)
print("\n")
old.append('ooo')
new.append('nnn')
print(old)
print(new)
执行以上代码,得到如下结果:
可以看到,在各自添加新元素之后,两个列表元素并不完全相同,说明第一次打印前只是将old列表的元素复制给new列表,二者之间不含逻辑关系。
old = ['xxx','ddd','hhh']
new = old
print(old)
print(new)
print("\n")
old.append('ooo')
new.append('nnn')
print(old)
print(new)
执行以上代码,得到如下结果:
可以发现,在新增元素之后,两个列表的元素依然相同,,新增到old的元素出现在new中,新增到new的元素也出现在old中,这是因为new=old的操作是将两个列表名指向同一组列表元素。
5.元组
python将不能修改的值称为不可变的,而不可变的列表称为元组。
元组的定义与普通列表相似,唯一的区别是将[ ]换成( ),且其中的元素无法修改。
遍历元组的元素也可采用for语句。
虽然不可对元组内元素直接进行修改,但可通过对整个元组重新赋值的方式来进行元素的变换:
dimensions = (50,100)
print('old')
for dimension in dimensions
print(dimension)
dimensions = (250,300)
print('new')
for dimension in dimensions
print(dimension)
运行以上代码,得到如下结果:
利用变量保存元素,可以看到新旧元组的元素更改。
6.代码格式
采用PBE 8规则进行修改:
①. 每行缩进采用4个空格
②. 每行字符不超过79个字符
③. 采用空行将程序的不同模块分开,但空行不宜使用过多