人生苦短,我選Pythonpython
前文傳送門git
小白學 Python(1):開篇github
在開始今天的內容以前先簡單介紹一下 Python 內置的數據結構,包括:
在Python語言中,以上4種數據結構和基礎數據類型(整數、浮點數等)統稱爲「內置類型」(Built-in Types)。
Python list(列表),是Python中最經常使用的一種數據結構,它是一組用方括號括起來、逗號分隔的數據。
建立列表:
list1 = [1, 2, 3, 4, 5]
print(list1)
list2 = ['a', 'b', 'c', 'd', 'e']
print(list2)複製代碼
輸出結果:
[1, 2, 3, 4, 5]
['a', 'b', 'c', 'd', 'e']複製代碼
列表中的數據類型能夠是相同的,如上面的 int 和 str ,也能夠是不一樣的:
list3 = [1, 2, 3, 'a', 'b']
print(list3)複製代碼
結果以下:
[1, 2, 3, 'a', 'b']複製代碼
這個還不算什麼,還有更騷的操做,列表裏面是能夠嵌套列表的:
list4 = [1, 2.33, 'a', list3]
print(list4)複製代碼
結果以下:
[1, 2.33, 'a', [1, 2, 3, 'a', 'b']]複製代碼
這一層一層的,又讓我想起了洋蔥。。。
空列表
list5 = []
print(list5)複製代碼
查看類型的函數是 type()
,那麼若是咱們看下列表的類型呢?
print(type(list4))複製代碼
結果以下:
<class 'list'>複製代碼
語法:列表名[索引]
list1 = [1, 2, 3, 4, 5]
print(list1[0])複製代碼
這裏的數字 0 是列表的索引,含義是取出第 0 位的元素。
注意: 這裏的索引是從 0 開始的,例如 list1 的索引是 0 ~ 4 。
若是咱們直接去取 list1 的索引爲 5 的值:
list1 = [1, 2, 3, 4, 5]
print(list1[5])複製代碼
這時會直接拋出異常。
Traceback (most recent call last):
File "F:/project/python-learning/base-data-list/Demo.py", line 20, in <module>
print(list1[5])
IndexError: list index out of range複製代碼
這個異常的含義是:列表索引超出範圍。
Python 列表除了正索引還有一個負索引,正索引是列表從頭至尾的方向,負索引的是從尾到頭。
列表: ['a', 'b', 'c', 'd', 'e']
| | | | |
正索引: 0 1 2 3 4
負索引: -5 -4 -3 -2 -1複製代碼
語法: 列表1 + 列表2
print(list1 + list2)複製代碼
結果以下:
[1, 2, 3, 4, 5, 'a', 'b', 'c', 'd', 'e']複製代碼
語法:for 變量 in 列表:print(變量)
for i in list1:
print(i)複製代碼
結果以下:
1
2
3
4
5複製代碼
語法: len(列表)
print(len(list1))
print(len(list1 + list2))複製代碼
結果以下:
5
10複製代碼
返回的是布爾值 bool 。
print('a' in list1)
print(1 in list1)複製代碼
結果以下:
False
True複製代碼
語法: del 列表名
list1 = [1, 2, 3, 4, 5]
del list1
print(list1)複製代碼
結果以下:
Traceback (most recent call last):
File "D:/Development/Projects/python-learning/base-data-list/Demo.py", line 40, in <module>
print(list1)
NameError: name 'list1' is not defined複製代碼
很顯然,將 list1 刪除以後會報錯 list1 未定義。
語法: del list1[i]
list1 = [1, 2, 3, 4, 5]
del list1[2]
print(list1)複製代碼
結果以下:
[1, 2, 4, 5]複製代碼
語法:max(list1)
print(list1)
print(max(list1))
print(list4)
print(max(list4))複製代碼
結果以下:
[1, 2, 4, 5]
5
[1, 2.33, 'a', [1, 2, 3, 'a', 'b']]
Traceback (most recent call last):
File "D:/Development/Projects/python-learning/base-data-list/Demo.py", line 51, in <module>
print(max(list4))
TypeError: '>' not supported between instances of 'str' and 'float'複製代碼
list4 中取最大值報錯了,報錯緣由是 'str' 和 'float' 沒法比較大小。
語法:min(list1)
print(list1)
print(min(list1))
print(list4)
print(min(list4))複製代碼
結果以下:
[1, 2, 4, 5]
1
[1, 2.33, 'a', [1, 2, 3, 'a', 'b']]
Traceback (most recent call last):
File "D:/Development/Projects/python-learning/base-data-list/Demo.py", line 51, in <module>
print(max(list4))
TypeError: '<' not supported between instances of 'str' and 'float'複製代碼
list4 中取最小值報錯了,報錯緣由和上面取最大是同樣的, 'str' 和 'float' 沒法比較大小。
本系列的全部代碼小編都會放在代碼管理倉庫 Github 和 Gitee 上,方便你們取用。