日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python基本数据类型(二)

發布時間:2024/9/30 python 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python基本数据类型(二) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

五、列表(list)

1、列表的介紹

列表:列表是Python的基礎數據類型之? ,其他編程語?也有類似的數據類型. 比如JS中的數
組, java中的數組等等. 它是以[ ]括起來, 每個元素?’ , '隔開?且可以存放各種數據類型:

例:

lst = ["嘿嘿", "吼吼", ["我是", "列表"], ("I'm", "tuple"), {"dict": "我是字典"}, {"set", "我是集合呀"}, 2]

列表相比于字符串可以存取更多類型的數據,而且可以存放大量的數據。列表是有序的,可以通過索引對列表進行切片取值等操作。

2、列表的索引和切片

列表和字符串一樣擁有索引

lst = ["孫悟空", "豬八戒", "沙僧", "唐僧"] print(lst[0]) # 孫悟空 print(lst[1]) # 豬八戒 print(lst[2]) # 沙僧 print(lst[3]) # 唐僧lst[0] = "齊天大圣" # 注意:列表是可變類型,可以直接發生改變,和字符串不一樣哈 print(lst) # ["齊天大圣", "豬八戒", "沙僧", "唐僧"] temp = "天蓬元帥" temp[0] = "地" print(temp) # TypeError: 'str' object does not support item assignment (不可變類型)

列表的切片

lst = ["孫悟空", "豬八戒", "沙僧", "唐僧"] print(lst[0:2]) # ["孫悟空", "豬八戒", "沙僧"] print(lst[::2]) # ["孫悟空", "沙僧"] print(lst[::-1]) # ['唐僧', '沙僧', '豬八戒', '孫悟空'] print(lst[-1:1:-1]) # ["唐僧", "沙僧"]

3、列表的增刪該查

注意:列表是可變類型,所以可以直接對列表中的元素進行操作。

lst = ["name", "age", "job", "hobby"] lst.append("gender") print(lst) # ["name", "age", "job", "hobby", "gender"]lst = ["name", "age", "job", "hobby"] lst.insert(1, "gender") print(lst) # ["name", "gneder", "age", "job", "hobby"] 按照索引進行插入lst = ["name", "age", "job", "hobby"] lst.extend(["gender", "salary"]) print(lst) # ["name", "age", "job", "hobby", "gender", "salary"] 將可迭代對象進行迭代添加 lst = ["name", "age", "job", "hobby"] lst.extend("hello") print(lst) # ['name', 'age', 'job', 'hobby', 'h', 'e', 'l', 'l', 'o']

lst = ["鬼劍士", "神槍手", "召喚師", "圣職者", "格斗家"] ret1 = lst.pop() # 默認刪除列表最后一個元素,并且可以取得被刪除的元素的值 ret2 = lst.pop(1) # 也可以指定索引刪除 print(ret1) # 格斗家 print(ret2) # 神槍手 print(lst) # ["鬼劍士", "召喚師", "圣職者"]lst = ["鬼劍士", "神槍手", "召喚師", "圣職者", "格斗家"] lst.remove("圣職者") # 指定列表中的元素名稱進行刪除,刪除不存在的元素會報錯 print(lst) # ["鬼劍士", "神槍手", "召喚師", 格斗家"]lst = ["鬼劍士", "神槍手", "召喚師", "圣職者", "格斗家"] del lst[2] # 使用del刪除指定的列表元素,只能使用索引或者切片進行刪除 print(lst) # ["鬼劍士", "神槍手", "圣職者", "格斗家"]lst = ["鬼劍士", "神槍手", "召喚師", "圣職者", "格斗家"] lst.clear() # 清空列表 print(lst) # []

lst = ["馬云", "馬化騰", "馬良", "馬蓉", "馬克思"] lst[1] = "麻花藤" print(lst) # ["馬云", "麻花藤", "馬良", "馬蓉", "馬克思"]lst = ["馬云", "馬化騰", "馬良", "馬蓉", "馬克思"] lst[1:4] = "hello" print(lst) # ["馬云", "h", "e", "l", "l", "o", "馬克思"]

列表是一個可迭代對象,所以可以使用for循環查詢

for ele in list:print(i)

其它操作

# 計算"行者孫"在列表中出現的次數 lst = ["孫行者", "行者孫", "者行孫", "行者孫"] print(lst.count("行者孫")) # 2# 計算列表的長度 lst = ["孫行者", "行者孫", "者行孫", "行者孫"] print(len(lst)) # 4# 對列表元素進行翻轉 lst = ["孫行者", "行者孫", "者行孫", "行者孫"] lst.reverse() print(lst) # ["行者孫", "者行孫", "行者孫", "孫行者"]# 對列表進行排序 lst = [10,2,45,64,4,16,8] lst.sort() # 默認從小到大排序 print(lst) # [2, 4, 8, 10, 16, 45, 64] lst.sort(reverse=True) # 加上參數reverse=True變成從大到小排序 print(lst2) # [64, 45, 16, 10, 8, 4, 2]

列表的嵌套

lst = [1, "夸父", "dogfa", ["jack ma", ["康帥博"], "麻辣干子"]] # 找到"夸父" print(lst[1])# 找到“夸父“和”dogfa” print(lst[1:3])# 將"夸父“替換成”夸母” lst[1] = lst[1].replace("父", "母") print(lst)# 將”jack ma“各個首字母大寫 lst[3][0] = lst[3][0].title() print(lst)# 將”康帥博“替換成”康師傅“ lst[3][1][0] = lst[3][1][0].replace("帥博", "師傅") print(lst)# 將”dogfa“首字母大寫 lst[2] = lst[2].capitalize() print(lst)

循環刪除列表中的元素(注意)

lst = ["鬼劍士", "神槍手", "召喚師", "圣職者", "格斗家"] for i in lst:lst.remove(i) print(lst) # ['神槍手', '圣職者'] # 為什么我們進行for循環時沒有將列表中的元素全部刪除?因為for循環每循環一次內部索引會加1,而刪除了列表中的元素之后,后面的元素會前移,導致刪除錯亂。 # 第一次循環: ["神槍手", "召喚師", "圣職者", "格斗家"] 刪除索引0對應的元素,后面的元素前移 # 第二次循環: ["神槍手", "圣職者", "格斗家"] 刪除索引1對應的元素,后面的元素前移 # 第三次循環: ["神槍手", "圣職者"] 刪除索引2對應的元素,后面的元素前移# 解決辦法1 for i in range(len(lst)):lst.pop() print(lst) # []# 解決辦法2 lst2 = [] for i in lst:lst2.append(i)for el in lst2:lst.remove(el) print(lst) # []

六、元祖(tuple)

元組: 俗稱不可變的列表.?被成為只讀列表, 元組也是python的基本數據類型之?, ??括
號括起來, ??可以放任何數據類型的數據, 查詢可以. 循環也可以. 切片也可以. 但就是不能
改.

tu = ("name", "age", "gender") print(tu) # ("name", "age", "gender") print(tu[0]) # name print(tu[2]) # gender print(tu[0:2]) # 元祖切片之后還是元祖# for循環遍歷元祖 for ele in tu:print(ele)# 嘗試修改元祖 tu[0] = "我就是要改變你" # TypeError: 'tuple' object does not support item assignment (元祖中的元素不支持被修改)# 再次嘗試修改元祖 tu = ("你改不了我的", [], "你也改不了我的", "我們中出了一個叛徒") tu[1] = "我是叛徒" # 再次修改失敗 tu[1].append("我是叛徒") # 修改成功 print(tu) # ("你改不了我的", ["我是叛徒"], "你也改不了我的", "我們中出了一個叛徒")# 通過以上結論,我們可以得出:元祖的不可變指的是元祖內的子元素不可變,而子元素的子元素可不可變取決于是否是可變類型的對象。 # 注意:當元祖中只有一個元素時,必須在元素后面加上一個逗號,否則就不是元祖,例:tu = ("name",) # 元祖同樣含有len(), index(), count()方法。

未完待續

總結

以上是生活随笔為你收集整理的Python基本数据类型(二)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。