Python编程:从入门到实践
第三章 操作列表
-
4.1遍历整个列表
在python中,你常需要遍历列表的所有元素,对每个元素执行相同的操作。- 4.1.3在for循环结束后执行一些操作
for循环后面,没有缩进的代码都执行一次,而不会重复执行。
- 4.1.3在for循环结束后执行一些操作
-
4.2避免缩进错误
python需要根据缩进来判断代码行与前一个代码行之间的关系-
4.2.1忘记缩进
python没有找到期望缩进的代码块时,会让你知道哪行代码有问题。
IndentationError:expected an indented block -
4.2.2忘记缩进额外的代码行
有可能发生逻辑错误,系统并不会报错。 -
4.2.3不必要的缩进
-
message="Hello Python World!"
print(message)
IndentationError:unexpected indent
python会指出该代码行无需缩进,因为他不属于前一行代码
- 4.3创建数值列表
-
4.3.1使用range()生成一组数字
range(1,5) #生成的数字是1-4,这个函数从你指定的第一个值开始数,并在到达你指定的第二个值后停止,因此输出不包含第二个值(这里为5)
如果输出不符合预期,请尝试将指定的值加一或减一 -
4.3.2使用range()函数可以结合其他函数
- list(range(1,6)) #将1-5这个五个数字转化为列表
- range(2,11,2) #使用range函数时还可以定步长,打印1-10内的偶数
- range()函数几乎能创建任何需要的数字集
-
squares=[]
for value in range(1,11):
square=value**2 #两个星号表示乘方运算
squares.append(square) #将每个计算得到的结果加到列表结尾
print(squares)
- 4.3.4列表解析
squares=[valus**2 for value in range(1,11)]
print(squares)
首先指定一个描述性的列表名,如squares;然后,制定一个左方括号,并定义一个表达式,用于生成你要存储到列表中的值。在这个示例中,表达式为value**2,它计算平方值。接下来编写一个for循环,用于给表达式提供值,再加上右方括号。
-
4.4使用列表的一部分
-
4.4.1切片
-
你可以生成列表的任何子集,例如,如果你要提取列表的第2-4个元素,可将起始索引指定为1,并将终止索引指定为4
players=[“qwe”,“asd”,“zxc”,“dfg”,“lkj”]
print(players[1:4])
打印结果为 [“asd”,“zxc”,“dfg”] -
如果你没有指定第一个索引,python将自动从列表开头开始:
print(players[:4])
打印结果为[“qwe”,“asd”,“zxc”,“dfg”] -
要让切片终止与末尾,也可用类似语法
print(players[2:])
打印结果为[“zxc”,“dfg”,“lkj”] -
负数索引返回列表末尾 相应距离的元素
print(players[-3:])
打印结果为[“zxc”,“dfg”,“lkj”]
-
-
4.4.3复制列表
要复制列表,可以创建一个包含整个 列表的切片,方法是同时省略起始索引和终止索引([:])
-
-
4.5元组
- 元组与列表的区别是,元组不能被修改,元组用圆括号定义,可以和列表一样使用索引来访问其元素。
- 虽然不能修改元组的元素,但可以给存储元组的变量赋值。因此,如果想要修改元组中的值,可重新定义整个元组