重温Python基础——操作列表
哈喽兄弟们,今天咱们来复习一下Python基础中的列表操作,不知道各位还记得多少呢?
遍历列表的所有元素,对每一个元素进行相同的操作,是我们常常所需要的。在python中可使用for()循环。
假如我们需要将一个列表中的手机品牌一一打印,我们可以分别获取手机品牌的名字。如果数据特别的,对我们的操作要求量很大,而且容易输入错误,但使用for循环,python可以帮你解决这些问题。
例如:
shouji=['iphone','huawei','xiaomi','vivo','oppo'] for shoujis in shouji: print(shoujis)
运行结果
iphone
huawei
xiaomi
vivo
oppo
循环这一概念非常重要,它是计算机自动重复完成工作的常见方法之一。
python首先读取第一行命令 for shoujis in shouji: 这让python获取到列表shouji的第一个值,iphone,然后下一行 print(shoujis),于是打印出读取出的第一个值 iphone ,如此循环。
在for循环中可对每一个元素执行任意操作。下列展示对没一部手机打印一条消息
# Python资料源码领取q群:708525271 shouji=['iphone','huawei','xiaomi','vivo','oppo'] for shoujis in shouji: print(f"{shoujis.title()} it is a good phone")
运行结果
Iphone it is a good phone Huawei it is a good phone Xiaomi it is a good phone Vivo it is a good phone Oppo it is a good phone
在for循环后面,每一个缩进的代码都是循环的一部分。将针对列表的每一个值都执行一次。
在for循环后面,没有缩进的代码只执行一次,不会重复执行。现在操作一下对于所有手机予以五行好评,代码不缩进。
# Python资料源码领取q群:708525271 shouji=['iphone','huawei','xiaomi','vivo','oppo'] for shoujis in shouji: print(f"{shoujis} it is a good phone") print("我给出五星好评")
运行结果
iphone it is a good phone huawei it is a good phone xiaomi it is a good phone vivo it is a good phone oppo it is a good phone 我给出五星好评
开始编写正确缩进代码时,需要注意常见的缩进错误,对于for循环部分且属于组成循环的代码行,一定要缩进!有时候忘记缩进代码会运行且不报告错误,结果很可能出乎你的意料。
range()可以轻松的帮助你生产一系列数
例如:
for value in range(1,5): print(value)
运行结果
1 2 3 4
上述代码好像打印1到5,实际并不打印5。这是编辑语言中常见的差一行行为的结果。如果需要打印5,则需要使用
for value in range(1,6):
调用函数**range()**时,也可指定打印一个参数,他将从0开始。
要创建数字列表,可使用函数list()将range()的结果直接转换为列表。如果将range()作为list()的一个参数,输出的将时数字列表。
numbers = list(range(1,6)) print(numbers)
运行结果
[1, 2, 3, 4, 5]
使用range函数也可指定步长
numbers = list(range(1,6,2)) print(numbers)
运行结果
[1, 3, 5]
使用range()依然可以创建一些你想要的数集,例如得出在0——10中偶数的平方的数集
squares = [] for numbers in range(0,11,2): square = numbers ** 2 squares.append(square) print(squares)
运行结果
[0, 4, 16, 36, 64, 100]
要创建切片,可指定要使用的第一个和最后一个元素的索引。与函数range()一样python到达到达第二个索引前截至。
你可以生产列表的任意子集,如果想提取列表的第1,2,3个数,可将起始索引指定为0,终止索引指定为3。
如果起始没有指定索引那么python将在开头开始提取
如果终止没有指定索引那么python将至结尾结束
value = list(range(1,11)) print(value[0:3]) print(value[4:]) print(value[:4])
运行结果
[1, 2, 3] [5, 6, 7, 8, 9, 10] [1, 2, 3, 4]
列表非常适合用于存储在程序运行期间可能变化的数据集。列表时可以修改的。但有时候需要创建一系列不可修改的元素,元组可以满足这种需求。
元组看起来很像列表,使用圆括号而不是中括号来标识。定义元组后,可以使用索引来访问元素,就像访问列表一样。
下例操作一下元组及尝试修改元组。
name = ('xiao','xiong') print(name[0]) print(name[1]) name[1]='old'
运行结果
Traceback (most recent call last): File "C:\Users\Desktop\python\py1.py", line 195, in <module> name[1]='old' TypeError: 'tuple' object does not support item assignment xiao xiong
由此可见,如果对元组内的数据进行更改,则会出现报错。
按照列表访问的方法可以正常访问。
像列表一样,可以使用for循环来遍历元组中的所有值
numbers = (1,2,3,4,5,6) for number in numbers: print(number)
#运行结果
1 2 3 4 5 6
虽然不能修改元组的元素,但可以存储元组的变量赋值。因此可以遍历整个元组:
numbers = (1,2,3,4,5,6) print("original numbers") for number in numbers: print(number) numbers = (11,22,33,44,55,66) print("change numbers") for number in numbers: print(number)
运行结果
original numbers 1 2 3 4 5 6 change numbers 11 22 33 44**加粗样式** 55 66
首先定义一个元组,并将其存储的数据打印出来,接下来将一个新元组关联到变量numbers,然后打印新的数据。这一次可以成功编译,因为给元组变量重新赋值是合法的。
今天的分享就到这里结束了,祝各位早日学有所成!