赞
踩
目录
3.1.1对列表magicians中每一位魔术师,都将其名字打印出来
- magicians=['alice','david','carolina']
- for magician in magicians:
- print(magician)
'运行
- alice
- david
- carolina
¥两个函数print()都缩进了,因此它们都将针对列表中的每一个魔术师执行一次。
¥第二个print()有换行符"\n"。
¥第三个函数print()没有缩进,因此只执行一次。
- magicians=['alice','david','carolina']
- for magician in magicians:
- print(f"{magician.title()},that was a great trick!")
- print(f"I can't wait to see you next trick,{magician.title()}.\n")
- print("Thank you everyone,That was a great magic show!")
'运行
- Alice,that was a great trick!
- I can't wait to see you next trick,Alice.
- David,that was a great trick!
- I can't wait to see you next trick,David.
-
- Carolina,that was a great trick!
- I can't wait to see you next trick,Carolina.
- Thank you everyone,That was a great magic show!
python从指定的第一个值开始数,并且达到你指定的第二个值时停止。
range(初始值,结束地址),地址由0开始数。
- for value in range(1,5):
- print(value)
'运行
- 1
- 2
- 3
- 4
1.使用函数list()将range()的结果直接转换为列表。
如果将range()作为list()的参数,输出将是一个数字列表。
- numbers=list(range(1,11))
- print(numbers)
-
- [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
'运行
2.使用range()函数时,还可指定步长
range(初始值,结束地址,步长)
- num=list(range(2,11,2))
- print(num)
-
- [2, 4, 6, 8, 10]
'运行
3.使用range()函数几乎能够创建任何需要的数集
例如创建一个列表,其中包含前十个整数(1~10)的平方
- squares=[]
- for value in range(1,11):
- square=value**2
- squares.append(square)
- #squares.append(value**2)
- print(squares)
-
- [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
'运行
有几个专门用于处理数字列表的python函数。例如
找出列表的
min() 最小值
max() 最大值
sum() 总和
- digits=[7,4,1,2,5,8,9,6,3]
- print(max(digits))
- print(min(digits))
- print(sum(digits))
'运行
- 9
- 1
- 45
¥考虑到版面原因,虽然实例的数字列表很短,但此知识也适用于包含数百万个数的列表。
将for循环和创建的新元素代码合并成一行,并且自动附加新元素。
展示上文的平方书列表
- squares=[value**2 for value in range(1,11)]
- print(squares)
-
- [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
'运行
要创建切片,可指定要使用的第一个元素和最后一个元素的索引。与range()函数一样,python在到达第二个索引之前的元的后停止。
也可简单理解如下列函数所示
players[起始地址:结束地址]
起始位置或结束位置可不写,默认第一个或最后一个元素。
如果要输出名单上最后三名队员,可使用切片players[-3:];
- players=['amy','bye','cid','dli','eju']
- print(players[:])
- print(players[:3])
- print(players[2:])
- print(players[2:3])
- print(players[-3:])
'运行
- ['amy', 'bye', 'cid', 'dli', 'eju']
- ['amy', 'bye', 'cid']
- ['cid', 'dli', 'eju']
- ['cid']
- ['cid', 'dli', 'eju']
在for循环中使用切片,遍历前三名队员并打印他们的名字。
- #遍历切片
- players=['amy','bye','cid','dli','eju']
- for player in players[:3]:
- print(player)
'运行
- amy
- bye
- cid
要复制列表,可创建一个包含整个列表的切片。
这让python创建一个始于第一个元素、终于最后一个元素的切片,即整个列表的副本。
- #复制列表
- players=['amy','bye','cid','dli','eju']
- players_1=players[:]
- print(players)
- print(players_1)
- players.append('jio')
- players_1.append('kio')
- print(players)
- print(players_1)
'运行
- ['amy', 'bye', 'cid', 'dli', 'eju']
- ['amy', 'bye', 'cid', 'dli', 'eju']
- ['amy', 'bye', 'cid', 'dli', 'eju', 'jio']
- ['amy', 'bye', 'cid', 'dli', 'eju', 'kio']
那如果不是复制副本又会怎样呢
- #只赋值变量,不赋值副本,且左赋右
- players=['amy','bye','cid','dli','eju']
- players_1=players
- print(players)
- print(players_1)
- players.append('jio')
- players_1.append('kio')
- print(players)
- print(players_1)
'运行
- ['amy', 'bye', 'cid', 'dli', 'eju']
- ['amy', 'bye', 'cid', 'dli', 'eju']
- ['amy', 'bye', 'cid', 'dli', 'eju', 'jio', 'kio']
- ['amy', 'bye', 'cid', 'dli', 'eju', 'jio', 'kio']
很显然,在改变players的值后players_1的列表也跟着改变,即复制副本后,二者修改列表值不受影响。
python将不能修改的值称为不可变的,而不可变的列表称为元组。
¥元组(tuple)是关系数据库中的基本概念,关系是一张表,表中的每行(即数据库中的每条记录)就是一个元组,每列就是一个属性。 在二维表里,元组也称为行。
¥定义一个只包含一个元素的元组,必须在这个元素后面加上逗号
例如,如果有一个大小不应该变得矩形,可将其长度和宽度存储在一个元组中,从而确保它们是不能修改的。
遍历依旧使用for循环
- dimensions=(200,50)
- print(dimensions[0])
- print(dimensions[1])
- for dimension in dimensions:
- print(dimension)
- print("\n")
'运行
- 200
- 50
- 200
- 50
虽然不能直接修改元组的元素,但可以给存储元组的变量赋值。因此如果要修改前述矩形的尺寸,可重新定义整个元组(可以改变整体元组,不能改变值)
- dimensions=(200,50)
- print(dimensions[0])
- print(dimensions[1])
- for dimension in dimensions:
- print(dimension)
- print("\n")
- #元组不可单独修改元素值,但可以给存储元组的变量赋值
- dimensions=(300,100)
- print(dimensions[0])
- print(dimensions[1])
- for dimension in dimensions:
- print(dimension)
'运行
- 200
- 50
- 200
- 50
-
-
- 300
- 100
- 300
- 100
请指正
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。