python中列表、元組、集合、字典有什么用-創(chuàng)新互聯(lián)

這篇文章將為大家詳細(xì)講解有關(guān)python中列表、元組、集合、字典有什么用,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

十載的梅江網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。網(wǎng)絡(luò)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整梅江建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)建站從事“梅江網(wǎng)站設(shè)計”,“梅江網(wǎng)站推廣”以來,每個客戶項目都認(rèn)真落實執(zhí)行。

list列表

  • 一組有順序的數(shù)據(jù)的組合,可進(jìn)行增刪改查

  • 賦值操作

    • 常用函數(shù) del ls[2]:刪除,

    • 可以將列表乘一個整數(shù),表示多個列表鏈接在一起

      a = ['a',2,3,4,5]
      b= 2
      c = a *b
      print(c)
      #輸入結(jié)果如下
      ['a', 2, 3, 4, 5, 'a', 2, 3, 4, 5]
    • 雙層列表循環(huán)和dict 用法一致,要求每個列表只有兩個值:for k,v in ls:

    • 列表內(nèi)涵:快速建立列表

    • 通用函數(shù):len,min,max,其他類型也通用的函數(shù)

    • append:在末尾添加,insert(index,data):在index前面插入

    • pop()彈出最后一個,返回值的彈出的數(shù)據(jù).

    • remove:在列表中刪除指定的值的第一個元素

    • clear:清空列表,id 不變

    • reverse():反轉(zhuǎn)

    • extend 擴(kuò)展列表 a =[1] b=[2] a.extend(b) a== [1,2]

    • count():統(tǒng)計某個數(shù)據(jù)出現(xiàn)的次數(shù)

    • copy屬于淺拷貝,即只是拷貝一層

    • ls = list() ,ls = []

    • 下標(biāo)從0開始,最后一個數(shù)可使用-1訪問,依次類推

    • 可使用其切片操作[:],反序排列[::-1]

    • 進(jìn)行切片和copy()后的新list的ID原id不一致,其他方法:

    • 賦值\append\del\等id和原list一致

    • 賦值操作是傳址,copy是傳值

      a = [x for x in range(1,35)] #生成從1到34的一個列表
      # 把a(bǔ)中所有偶數(shù)生成一個新的列表 b
      b = [m for m in a if m % 2 == 0]
      print(b)
      #..
      c = [  m+n for m in a for n in b if m+n < 250]
      print(c)
# 深拷貝跟淺拷貝的區(qū)別
# 出現(xiàn)下列問題的原因是,copy函數(shù)是個淺拷貝函數(shù),即只拷貝一層內(nèi)容
# 深拷貝需要使用特定工具
a = [1,2,3, [10, 20, 30]]
b = a.copy()
print(id(a))
print(id(b))
print(id(a[3]))
print(id(b[3]))
a[3][2] = 666
print(a)
print(b)
#輸出結(jié)果如下:
140249408365768
140249409236040
#a[3] 和b[3] id一致,說明還是指向同一地址
140249409236232
140249409236232
[1, 2, 3, [10, 20, 666]]
[1, 2, 3, [10, 20, 666]]

元組-tuple

  • 元組可看成是不可更改的list

  • 特性:

    • 是序列表,有序

    • 元組數(shù)據(jù)值可以訪問,不能修改和刪除,指的是內(nèi)容不可修改,參考下例

    • 元組數(shù)據(jù)可以是任意類型

    • list所有特性,除了可修改外,元組都具有

    • 也就是說,list具有的一些操作,比如索引,分片,序列相加,相乘,成員資格操作等,一模一樣

      # 元組相加
      t1 = (1,2,3)
      t2 = (5,6,7)
      # 傳址操作
      print(t1)
      print(id(t1))
      t1 = t1 + t2
      print(t1)
      print(id(t1))
      # tuple 的不可修改,指的是內(nèi)容的不可修改
      # 修改和刪除tuple內(nèi)容會導(dǎo)致報錯
      t1[1] = 100
      del(t1[2])
      #元組相乘
      t2 =t2 *2

集合 -set

  • 集合是高中數(shù)學(xué)中的一個概念

  • 一堆確定的無序唯一的數(shù)據(jù),集合中每一個數(shù)據(jù)成為一個元素

  • 特性:

    • 集合內(nèi)數(shù)據(jù)無序,即無法使用索引和分片

    • 集合內(nèi)部數(shù)據(jù)元素具有唯一性,可以用來排除重復(fù)數(shù)據(jù)

    • 集合內(nèi)的數(shù)據(jù),str, int, float, tuple,冰凍集合等,即內(nèi)部只能放置可哈希數(shù)據(jù)

集合的內(nèi)涵

  • 如果定義時有重復(fù)數(shù)據(jù)則自動過濾重復(fù)數(shù)據(jù)

    • s = {3,1,2,3,4,3,2,3,1,2,4,3}

    • s == {1,2,3,4}

      # 多循環(huán)的集合內(nèi)涵
      s1 = {1,2,3,4}
      s2 = {"i", "am", "stu"}
      s = {m*n for m in s2 for n in s1}
      print(s)
      s = {m*n for m in s2 for n in s1 if n ==2}
      print(s)

集合的函數(shù)

  • add(),添加數(shù)據(jù)

  • copy(),拷貝

  • remove:移除指定的值,直接改變原有值,如果要刪除的值不存在,報錯 : s.remove(1)

  • discard:移除集合中指定的值,跟remove一樣,但是入股要刪除的話,不報錯:s.discard(1)

  • pop 隨機(jī)彈出一個元素

  • 集合函數(shù)

    # intersection: 交集
    # difference:差集  等于s1 -s2
    # union: 并集
    # issubset: 檢查一個集合是否為另一個子集
    # issuperset: 檢查一個集合是否為另一個超集
    s1 = {1,2,3,4,5,6}
    s2 = {5,6,7,8,9}
    s_1 = s1.intersection(s2)
    print(s_1)
    s_2 = s1.difference(s2)
    print(s_2)
    s_3 = s1.issubset(s2)
    print(s_3)
  • fronzenset:冰凍集合

    • 一種特殊集合:不可以進(jìn)行任何修改的集合

    • s = frozenset()

字典-dict

  • 字典是沒有順序的組合數(shù)據(jù),數(shù)據(jù)以鍵值對形式出現(xiàn)

  • 創(chuàng)建:

    # 創(chuàng)建有值的字典, 每一組數(shù)據(jù)用冒號隔開, 每一對鍵值對用逗號隔開
    d = {"one":1, "two":2, "three":3}
    print(d)
    d = dict({"one":1, "two":2, "three":3})
    print(d)
    # 利用關(guān)鍵字參數(shù)
    d = dict(one=1, two=2, three=3)
    print(d)
    # 
    d = dict( [("one",1), ("two",2), ("three",3)])
    print(d['one'])
  • 特性:

    • 字典是序列類型,但是是無序序列,所以沒有分片和索引

    • 字典中的數(shù)據(jù)每個都有鍵值對組成,即kv對

    • key: 必須是可哈希的值,比如int,string,float,tuple, 但是,list,set,dict 不行

    • value: 任何值

字典常用訪問

d = {"one":1, "two":2, "three":3}
# 使用for循環(huán),直接按key值訪問
for k in d:
    print(k,  d[k])    
# 上述代碼可以改寫成如下
for k in d.keys():
    print(k,  d[k])   
# 只訪問字典的值
for v in d.values():
    print(v)    
# 注意以下特殊用法
for k,v in d.items():
    print(k,'--',v)

字典常用函數(shù)

  • keys():返回字典的鍵組成的一個結(jié)構(gòu)

  • values():返回字典的值組成的一個結(jié)構(gòu)

  • items():返回字典的鍵值對組成的元組格式

  • get():根據(jù)指定鍵返回相應(yīng)的值, 可以設(shè)置默認(rèn)值

    • d.get('one',100)

  • fromkeys 使用指定的序列作為鍵,使用一個值作為字典的所有的鍵的值

    l = ["eins", "zwei", "drei"]
    # 注意fromkeys兩個參數(shù)的類型
    # 注意fromkeys的調(diào)用主體
    d = dict.fromkeys(l, "hahahahahah")
    print(d)

關(guān)于“python中列表、元組、集合、字典有什么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

網(wǎng)站標(biāo)題:python中列表、元組、集合、字典有什么用-創(chuàng)新互聯(lián)
分享地址:http://muchs.cn/article0/dsgioo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計、商城網(wǎng)站做網(wǎng)站、微信小程序服務(wù)器托管、軟件開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站