Last updated: 12 Jun 25 13:47:46 (UTC)
5.操作列表
操作列表
for循环
languages = ["python", "c", "c#", "rust", "java"] for language in languages: print(language)
languages = ["python", "c", "c#", "rust", "java"]
for language in languages:
print(language)
python c c# rust java
python
c
c#
rust
java
range函数
for循环、生成列表、步长控制 、列表推到式、结合生成器
for循环
for value in range(1,5): print(value)
for value in range(1,5):
print(value)
1 2 3 4
1
2
3
4
生成列表
a = list(range(1,11)) print(a)
a = list(range(1,11))
print(a)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
控制步长
a = list(range(1,11,3)) print(a)
a = list(range(1,11,3))
print(a)
[1, 4, 7, 10]
[1, 4, 7, 10]
列表推到式
b = [i**2 for i in range(1,11)] print(b)
b = [i**2 for i in range(1,11)]
print(b)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
结合生成器
a = list( i**2 for i in range(1,11)) print(a)
a = list( i**2 for i in range(1,11))
print(a)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
统计相关
>>> a = [i for i in range(0,11)] >>> print(a) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] >>> min(a) 0 >>> max(a) 10 >>> sum(a) 55
>>> a = [i for i in range(0,11)]
>>> print(a)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> min(a)
0
>>> max(a)
10
>>> sum(a)
55
切片
打印切片、遍历切片、切片拷贝(浅拷贝) 切片和range函数一样右边不计入
打印切片
>>> a = [i for i in range(0,11)] >>> print(a[0:11]) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] >>> print(a[:-3]) [0, 1, 2, 3, 4, 5, 6, 7] >>> print(a[-3:]) [8, 9, 10]
>>> a = [i for i in range(0,11)]
>>> print(a[0:11])
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> print(a[:-3])
[0, 1, 2, 3, 4, 5, 6, 7]
>>> print(a[-3:])
[8, 9, 10]
遍历切片
>>> a = ['python','c','c#','c++','rust','java','php'] >>> for language in a[2:6]: ... print(language) ... c# c++ rust java
>>> a = ['python','c','c#','c++','rust','java','php']
>>> for language in a[2:6]:
... print(language)
...
c#
c++
rust
java
切片拷贝(浅拷贝)
>>> a = ['python','c','c#','c++','rust','java','php'] >>> b = a[:] >>> print(a) ['python', 'c', 'c#', 'c++', 'rust', 'java', 'php'] >>> print(b) ['python', 'c', 'c#', 'c++', 'rust', 'java', 'php'] >>> a.append('js') >>> b.append('go') >>> print(a) ['python', 'c', 'c#', 'c++', 'rust', 'java', 'php', 'js'] >>> print(b) ['python', 'c', 'c#', 'c++', 'rust', 'java', 'php', 'go']
>>> a = ['python','c','c#','c++','rust','java','php']
>>> b = a[:]
>>> print(a)
['python', 'c', 'c#', 'c++', 'rust', 'java', 'php']
>>> print(b)
['python', 'c', 'c#', 'c++', 'rust', 'java', 'php']
>>> a.append('js')
>>> b.append('go')
>>> print(a)
['python', 'c', 'c#', 'c++', 'rust', 'java', 'php', 'js']
>>> print(b)
['python', 'c', 'c#', 'c++', 'rust', 'java', 'php', 'go']
注意
>>> a = [[1,2],[6,9]] >>> print(a) [[1, 2], [6, 9]] >>> b = a[:] >>> print(b) [[1, 2], [6, 9]] >>> a[0][1] = 66 >>> print(a) [[1, 66], [6, 9]] >>> print(b) [[1, 66], [6, 9]]
>>> a = [[1,2],[6,9]]
>>> print(a)
[[1, 2], [6, 9]]
>>> b = a[:]
>>> print(b)
[[1, 2], [6, 9]]
>>> a[0][1] = 66
>>> print(a)
[[1, 66], [6, 9]]
>>> print(b)
[[1, 66], [6, 9]]
>>> a = ['python','c','c#','c++','rust','java','php'] >>> b = a >>> a.append('go') >>> print(b) ['python', 'c', 'c#', 'c++', 'rust', 'java', 'php', 'go']
>>> a = ['python','c','c#','c++','rust','java','php']
>>> b = a
>>> a.append('go')
>>> print(b)
['python', 'c', 'c#', 'c++', 'rust', 'java', 'php', 'go']
元组(tuple)
元组 与 列表类似,只不过表层是不可变的,但是你在里面套了 列表,这个列表是可以改变的。