1. 程式人生 > >Python學習筆記-列表與元組

Python學習筆記-列表與元組

·序列

 筆記:

Python中,最基本的資料結構為序列。序列中每個元素都有編號,其位置或索引,其中第一個元素索引為0,第二個為1,以此類推

Python內建多種序列,其中包含列表、元組、字元串等,他們都可以稱為“容器”(字典也稱作容器)。

注意:列表可以修改,而元組和字串則不能修改(可以重新賦值)。

@通用的序列操作:

 1 索引:訪問列表中的元素

正向索引:

x = "請輸入帶有符號的溫度值:"
print(x[1])列印結果:
輸
x = "請輸入帶有符號的溫度值:"[1]
print(x)列印結果:
輸

反向索引:

x = "請輸入帶有符號的溫度值:"
print(x[-1
])列印結果: :

切片:訪問多個特定範圍內的元素

x = "請輸入帶有符號的溫度值:"
print(x[0:3])列印結果:
請輸入
x = "請輸入帶有符號的溫度值:"
print(x[-3:-1])列印結果:
度值    (包左不包右)
x = "請輸入帶有符號的溫度值:"
print(x[-1:-3])列印結果:        (值為空,切片反向遞減,索引應從小到大)

切片遍歷整個序列:

x = "請輸入帶有符號的溫度值:"
print(x[:])列印結果:
請輸入帶有符號的溫度值: ([:]遍歷整個序列)

 序列步長:

x = "請輸入帶有符號的溫度值:"
print(x[0
:12:2]) #步長為2(步長不能為0,否者無法向前移動,可以為負數,即從右向左提取元素。 列印結果:請入有號溫值

筆記:切片提供兩個索引來指定切片範圍,第一個索引的元素包含在切片內,第二個索引指定的元素不包含在切片內。(包左不包右)

相加:序列的拼接

字串拼接:

x = "hello"
y = ",world"
print(x+y)列印結果:
hello,world

序列拼接

x = [1,2,3]
y = [4,5,6]
print(x+y)列印結果:
[1, 2, 3, 4, 5, 6]

字串和序列拼接

x = "hello"
y = [4,5,6]
print(x+y)
Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: can only concatenate str (not "list") to str

筆記:不能拼接不同型別的序列。

相乘:建立n個空元素

x = [None]*10
print(x)列印結果:
[None, None, None, None, None, None, None, None, None, None]

成員資格:檢查特定的值是否包含在序列中,innot in(返回值為bool值)

x = "abcdefg"
print('w' not in x)列印結果:
True
x = "abcdefg"
print('a' in x)列印結果:
True

·列表(list

筆記:

list():它實際上是一個類,有很多特有的方法。

將字串轉換為字串列表:

x = list("hello")
print(x)列印結果:
['h', 'e', 'l', 'l', 'o']

將字串列表轉換為字串:

x = ['h', 'e', 'l', 'l', 'o']
print(''.join(x))列印結果:hello

@列表的基本操作:

 1 修改列表:給元素賦值

x = [1,3,3]
x[1] = 2
print(x)列印結果:
[1, 2, 3]

2 刪除列表中的元素

x = [1,3,3]
del x[1]
print(x)列印結果:
[1, 3]

3 切片賦值

插入:

x = [1,5]
x[1:1] = [2,3,4] #[1:1]在索引 1 後插入[1,2,3]
print(x)列印結果:
[1, 2, 3, 4, 5]

替換:

x = list("persons")
x[1:] = list("ython") #[1:]可將索引 1 後的切片全部替換
print(x)列印結果:
['p', 'y', 't', 'h', 'o', 'n']

@列表中的方法

1 append:新增一個物件到末尾

2 pop:刪除末尾最後一個元素

3 clear:清空表格

4 copy:複製列表

5 count:計算列表中特定元素出現了多少次

6 extend:將多個值新增到列表末尾(需要區分與拼接的不同,拼接不改變x值)

7 index:查詢指定值第一次出現的索引

8 insert:在指定位置差入一個物件(可讀性優於extend)

9 remove:刪除指定值的元素

10 reverse:反向排序列表中的元素

11 sort:接受key和reverse兩個引數,對列表中的數進行有邏輯的排序(永久排序)

順序:

x = [5,2,1,4,3]
x.sort()
print(x)
列印結果:
[1, 2, 3, 4, 5]

倒序:

x = [5,2,1,4,3]
x.sort(reverse = True)
print(x)
#列印結果:
[5, 4, 3, 2, 1]

按元素長度排序:

x = ['apple','beer','to','g','banana']
x.sort(key=len)
print(x)
#列印結果:
['g', 'to', 'beer', 'apple', 'banana']

12 sorted函式:臨時排序

13 len函式:獲取列表的長度

·元組(tuple)

筆記:

  元組也是序列,區別在於元組不能修改

print(tuple([1,2,3]))
print(tuple("abcdefg"))
#列印結果:
(1, 2, 3)
('a', 'b', 'c', 'd', 'e', 'f', 'g')

將元組賦值給x:

x = 1,2,3
print(x)
#列印結果:
(1, 2, 3)

建立多個元組:

x = 3 * (40+2,)
print(x)
#列印結果:
(42, 42, 42)

元組中只有一個值時,也必須在它後面加逗號(,):

x = (2,)
print(x)
#列印結果:
(2,)

end~

 ****** 幾米花的Python ****** 部落格主頁:https://www.cnblogs.com/jimmy-share/  歡迎轉載 ~