天天看點

python--清單,元組

清單

list在循環的時候不能删,因為會改變索引

ls = ['aaa', 'bbb', 'ccc', 'ddd']
for el in ls:
    print(el)
    ls.remove(el)
print(ls)      

結果:

aaa
ccc
['bbb', 'ddd']      
names = ["aa", 'bb', 'cc', 'dd', 'ee', 77]
print(names)  # ['aa', 'bb', 'cc', 'dd', 'ee', 77]
print(names[0])  # aa
print(names[-1])  # 77
print(names[1], names[4])  # bb ee
print(names[:3])  # ['aa', 'bb', 'cc']
print(names[-2:])  # ['ee', 77]      
names = ["aa", 'bb', 'cc', 'dd', 'ee', 77]
print(names.index('cc'))  # 2   查cc的位置
print(names[names.index('cc')])  # cc      

插入

names = ["aa", 'bb', 'cc', 'dd', 'ee', 77]
names.append('ff')  # 往清單的最後插入元素
print(names)  # ['aa', 'bb', 'cc', 'dd', 'ee', 77, 'ff']
names.insert(2, 'gg')  # 往清單的指定位置插入元素
print(names)  # ['aa', 'bb', 'gg', 'cc', 'dd', 'ee', 77, 'ff']      

删除

names = ["aa", 'bb', 'cc', 'dd', 'ee', 77]
print(names)  # ['aa', 'bb', 'cc', 'dd', 'ee', 77]


names.pop()  # 删除清單中的最後一個元素
print(names)  # ['aa', 'bb', 'cc', 'dd', 'ee']


names.pop(2)  # 删除清單中的第三個元素
print(names)  # ['aa', 'bb', 'dd', 'ee']


names.remove('dd')  # 删除清單中為dd的元素
print(names)  # ['aa', 'bb', 'ee']


del names[1]  # del names[1] =names.pop(1)
print(names)  # ['aa', 'ee']


names.clear()  # 清除清單中的元素
print(names)  # []
del names  # 删除清單      
names = ["aa", 'bb', 'cc', 'dd', 'ee', '77']
print(names)
names.reverse()  # 倒序排列
print(names)
names.sort()  # 排序,按符号,數字,大小寫
print(names)
name2 = ['ff', 'gg']
names.extend(name2)  # 将name2合并到names中
print(names)
names.insert(2, 'ee')
print(names)
print(names.count('ee'))  # 查詢有幾個ee      

結果:

['aa', 'bb', 'cc', 'dd', 'ee', '77']
['77', 'ee', 'dd', 'cc', 'bb', 'aa']
['77', 'aa', 'bb', 'cc', 'dd', 'ee']
['77', 'aa', 'bb', 'cc', 'dd', 'ee', 'ff', 'gg']
['77', 'aa', 'ee', 'bb', 'cc', 'dd', 'ee', 'ff', 'gg']
2      

如果數字不用引号括起來運作排序時錯誤,字元串和數字不能比較

names = ["aa", 'bb', ['zou', 'xx'], 'cc', 'dd', 'ee', '77']
print(names)
print(names[0:-1:2])
print(names[::2])      

結果:

['aa', 'bb', ['zou', 'xx'], 'cc', 'dd', 'ee', '77']
['aa', ['zou', 'xx'], 'dd']
['aa', ['zou', 'xx'], 'dd', '77']      

元組

  • 不可變的清單. 隻讀清單. 有索引和切片.
  • 不可變的是它内部子元素. 如果子元素是清單. 清單中的元素是可以變的.
  • 元組: 俗稱不可變的列表.又被成為隻讀列表, 元組也是python的基本資料類型之一, 用小括号括起來, ⾥面可以放任何資料類型的資料, 查詢可以. 循環也可以. 切片也可以. 但就是不能改.
  • 關于不可變, 注意: 這里元組的不可變的意思是子元素不可變. 而子元素内部的子元素是可以變, 這取決于子元素是否是可變對象.
  • 元組中如果隻有一個元素. 一定要添加一個逗号, 否則就不是元組
  • 元組也有count(), index(), len()等方法. 可以自己測試使⽤
tu = (1, "馬化騰", ["胡辣湯", "疙瘩湯", "蕃茄雞蛋湯"])

tu[2].append("粘包米")  # 元組本身沒有變.變的是兒子中的内容
print(tu)  # (1, '馬化騰', ['胡辣湯', '疙瘩湯', '蕃茄雞蛋湯', '粘包米'])      

元組裡隻有一個元素時,要加逗号

tu1 = (1,)  # 需要添加一個逗号      

繼續閱讀