詳解python 拆包可迭代數(shù)據(jù)如tuple, list
拆包是指將一個結(jié)構(gòu)中的數(shù)據(jù)拆分為多個單獨變量中。
以元組為例:
>>> a = ('windows', 10, 25.1, (2017, 12, 29))
假設(shè)數(shù)據(jù)的意思是購買windows 10 份, 每份價值25.1刀。數(shù)據(jù)獲取時間是2017年12月29日。
我們需要獲取該數(shù)據(jù)中每份的價格:
>>> a[2]
也可以使用拆包的方法:
>>>os_type, number, price, dat = a >>>price
注意的問題拆包對象必須是可迭代的比如tuple和list。
第二個問題:我們只關(guān)心價格和日期,不關(guān)心系統(tǒng)和數(shù)量:
用一個不使用的變量,然后通過適配符號*,統(tǒng)配前兩項。
>>> *_, price, dat = a >>> price >>>dat
第三個問題,如果我們只關(guān)心價格和月份,如何解開包?
>>> *_, price, (_, m, d) = a >>> price >>> m
注意解包在python中都支持,但是使用*統(tǒng)配多個數(shù)值python3中開始支持。所以使用*時候注意python版本信息。
問題: 如果左邊和右邊個數(shù)不匹配,沒有使用*,結(jié)果會是什么:
ValueError: too many values to unpack
>>> _, price, (*_, m, d) =a Traceback (most recent call last): File "<pyshell#10>", line 1, in <module> _, price, (*_, m, d) =a ValueError: too many values to unpack (expected 3)
總結(jié)
以上所述是小編給大家介紹的python 拆包可迭代數(shù)據(jù)如tuple, list,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
django filter過濾器實現(xiàn)顯示某個類型指定字段不同值方式
這篇文章主要介紹了django filter過濾器實現(xiàn)顯示某個類型指定字段不同值方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-07-07基于django 的orm中非主鍵自增的實現(xiàn)方式
這篇文章主要介紹了基于django 的orm中非主鍵自增的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05Python導(dǎo)入或執(zhí)行python源文件的3種方法
這篇文章主要給大家介紹了關(guān)于Python導(dǎo)入或執(zhí)行python源文件的3種方法,python源代碼的文件以"py"為擴展名,由python.exe解釋,可以在控制臺下運行,需要的朋友可以參考下2023-08-08Python?numpy中np.random.seed()的詳細用法實例
在學(xué)習(xí)人工智能時,大量的使用了np.random.seed(),利用隨機數(shù)種子,使得每次生成的隨機數(shù)相同,下面這篇文章主要給大家介紹了關(guān)于Python?numpy中np.random.seed()的詳細用法,需要的朋友可以參考下2022-08-08Pandas庫中dataframe.corr()函數(shù)的使用
dataframe.corr()是Pandas庫中的一個函數(shù),用于計算DataFrame中各列之間的相關(guān)系數(shù),本文主要介紹了Pandas庫中dataframe.corr()函數(shù)的使用,具有一定的參考價值,感興趣的可以了解一下2024-07-07Python使用wget實現(xiàn)下載網(wǎng)絡(luò)文件功能示例
這篇文章主要介紹了Python使用wget實現(xiàn)下載網(wǎng)絡(luò)文件功能,簡單介紹了wget安裝以及Python使用wget下載tar格式網(wǎng)絡(luò)文件并進行解壓處理相關(guān)操作技巧,需要的朋友可以參考下2018-05-05