相关文章链接:
python编程从入门到实践第二章——变量和简单数据类型
python编程从入门到实践第三章——列表简介
python编程从入门到实践第五章——if语句
python编程从入门到实践第七章——用户输入和while循环
python编程从入门到实践第八章——函数
python编程从入门到实践第九章——类
python编程从入门到实践第十章——文件和异常
4.1 遍历整个列表
需要对列表中的每个元素都执行相同的操作时,可使用Python中的for循环
magicians = ['alice','david','carlian']
for magician in magicians:
print(magician)
#alice
#david
#carolina
使用单数和复数式名称可帮助你判断代码段处理的是单个列表元素还是整个列表元素。
4.1.1 在for循环中执行更多操作
magicians = ['alice','david','carlian']
for magician in magicians:
print(f"{magician.title()},that was a great trick!")
#Alice,that was a great trick!
#David,that was a great trick!
#Carlian,that was a great trick!
4.1.2 在for循环结束后执行一些操作
使用for循环处理数据是一种对数据集执行整体操作的不错方式。
magicians = ['alice','david','carlian']
for magician in magicians:
print(f"{magician.title()},that was a great trick!")
print(“Thank,everyone.That was a great show!")
#Alice,that was a great trick!
#David,that was a great trick!
#Carlian,that was a great trick!
#Thank,everyone.That was a great show!
4.2 避免缩进错误
1、忘记缩进;
2、忘记缩进额外的代码行;
3、不必要的缩进;
4、循环后不必要的缩进;
5、遗漏了冒号。
4.3 创建数值列表
列表非常适合用于存储数字集合
4.3.1 使用range()函数
函数range()让你能够轻松地生成一系列数。
for value in range(1,5):
print(value)
#1
#2
#3
#4
函数range()让Python从指定的第一个值开始数,并在到达你指定的第二个值时停止。
使用range()时,如果输入不符合预期,请尝试将指定的值加1或减1。
调用函数range()时,也可只指定一个参数,这样它将从0开始。
4.3.2 使用range()创建数字列表
要创建数字列表,可使用函数list()将range()的结果直接转换为列表。
numbers = list(range(1,6))
print(numbers)
#[1,2,3,4,5]
使用函数range()时,还可指定步长。
#打印1-10的偶数
even_numbers = list(range(2,11,2))
print(even_numbers)
#[2,4,6,8,10]
使用函数range()几乎能够创建任何需要的数集,使用两个星号(**)表示乘方运算。
#打印前10个整数的平方
squares = []
for value in range(1,11):
square = value **2
square.append(square)
print(squares)
#[1,4,9,16,25,36,49,64,81,100]
4.3.3 对数字列表执行简单的统计计算
digits = [1,2,3,4,5,6,7,8,9,0]
min(digits)
#0
max(digits)
#9
sum(digits)
#45
4.3.4 列表解析
列表解析将for循环和创建新元素的代码合并成一行,并自动附加新元素。
squares = [value**2 for value in range(1,11)]
print(squares)
#[1,4,9,16,25,36,49,64,81,100]
4.4 使用列表的一部分
处理列表的部分元素,Python称之为切片。
4.4.1 切片
要创建切片,可指定要使用的第一个元素和最后一个元素的索引,输出的也是一个列表。
player = ['charles','martina','michael','eli']
print(player[0:3])
# ['charles','martina','michael']
如果没有指定第一个索引,Python将自动从列表开头开始。
要让切片终止于列表末尾,可将起始索引指定,并省略终止索引:
player = ['charles','martina','michael','eli']
print(player[2:])
#['michael','eli']
可在表示切片的方括号内指定第三个值。这个值告诉Python在指定范围内每隔多少个元素提取一个。
4.4.2 遍历切片
如果要遍历列表的部分元素,可在for循环中使用切片。
player = ['charles','martina','Michael',‘florence’,'eli']
print("Here are the first three players on my team:")
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[:]
print("My favorite foods are:")
print(my_food)
print("\nMy friend's favorite foods are:)
print(friend_foods)
#My favorite foods are:
#['pizza','falafel','carrot cake']
#My friend's favorite foods are:
#['pizza','falafel','carrot cake']
4.5 元组
列表非常适合用于存储在程序运行期间可能变化的数据集。列表是可以修改的。Python将不能修改的值称为不可变的,而不可变的列表被称为元组。
4.5.1 定义元组
元组看起来很像列表,但使用圆括号而非中括号来标识。
dimensions = (200,50)
print(dimensions[0])
print(dimensions[1])
#200
#50
严格来说,元组是由逗号标识的,圆括号只是让元组看起来更加整洁、更清晰。如果定义只包含一个元素的元组,必须在这个元素后面加上逗号!
my_t = (3,)
4.5.2 修改元组变量
虽然不能修改元组的元素,但可以给存储元组的变量赋值。
dimensions = (200,50)
print("Original dimensions:")
for dimension in dimensions:
print(dimension)
dimensions = (400,100)
print("\nModified dimensions:")
for dimension in dimensions:
print(dimension)
#Original dimensions:
#200
#50
#Modified dimensions:
#400
#100