for.py 1.9 KB
Newer Older
逆流者blog's avatar
base  
逆流者blog 已提交
1 2 3 4 5 6 7
# 遍历 for
names = ['name1', 'name3', 'name2']
for name in names:
	print(name)

# 数值列表
# 函数 range() 范围左闭右开
逆流者blog's avatar
逆流者blog 已提交
8
for value in range(1, 10):
逆流者blog's avatar
base  
逆流者blog 已提交
9 10 11
	print(value)

# 使用range() 创建数字列表
逆流者blog's avatar
逆流者blog 已提交
12
numbers = list(range(1, 6))
逆流者blog's avatar
base  
逆流者blog 已提交
13 14 15 16
print(numbers)

# 创建一个数值列表, 包含1-10 的平方
squares = []
逆流者blog's avatar
逆流者blog 已提交
17 18
for value in range(1, 11):
	square = value ** 2
逆流者blog's avatar
base  
逆流者blog 已提交
19 20 21 22 23
	squares.append(square)

print(squares)

# 统计计算
逆流者blog's avatar
逆流者blog 已提交
24
digits = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
逆流者blog's avatar
base  
逆流者blog 已提交
25 26 27 28 29 30
print(min(digits))
print(max(digits))
print(sum(digits))

# 列表解析
# 前面 生成列表squares需要好几行代码, 这里用下列表解析
逆流者blog's avatar
逆流者blog 已提交
31
squares = [value ** 2 for value in range(1, 11)]
逆流者blog's avatar
base  
逆流者blog 已提交
32 33 34
print(squares)

# 使用列表的一部分- 切片
逆流者blog's avatar
逆流者blog 已提交
35
players = ['a', 'b', 'c', 'd', 'e', 'f', 'g']
逆流者blog's avatar
base  
逆流者blog 已提交
36 37
print(players[0:3])
print(players[1:4])
逆流者blog's avatar
逆流者blog 已提交
38 39 40
print(players[:4])  # 不指定, 从列头开始
print(players[2:])  # 不指定, 到列尾
print(players[-3:])  # 返回最后3个
逆流者blog's avatar
base  
逆流者blog 已提交
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61

# 遍历切片
for player in players[:3]:
	print(player)

# 复制列表
my_foofs = ['pizza', 'falafel', 'carrot cake']
friend_foods = my_foofs[:]
my_foofs.append('cannoli')
friend_foods.append('ice cream')
print("我喜欢的食物是: ")
print(my_foofs)
print('\n我朋友喜欢的食物是: ')
print(friend_foods)
# 上面是使用切片来复制的列表, 如果不使用切片呢? 直接friend_foods = my_foofs 这样是不行的, 这种做法是将my_foofs 赋值给了friend_foods, 这两个指向的是同一个列表

# 元祖 不可变
dimensions = (200, 500)
print(dimensions)
print(dimensions[0])
print(dimensions[1])
逆流者blog's avatar
逆流者blog 已提交
62
# dimensions[0] = 300 # 不能修改, 会报错
逆流者blog's avatar
base  
逆流者blog 已提交
63 64 65 66 67 68 69 70 71 72 73 74
# 遍历元祖
for dimension in dimensions:
	print(dimension)

# 虽然元祖不能修改, 但是可以给存储元祖的变量赋值一个新的元祖
print('original: ')
for dimension in dimensions:
	print(dimension)

print('modified: ')
dimensions = (100, 200)
for dimension in dimensions:
逆流者blog's avatar
逆流者blog 已提交
75
	print(dimension)