使用Python將數(shù)組的元素導出到變量中(unpacking)
解決的問題
需要將數(shù)組(list)或元組(tuple)中的元素導出到N個變量中。
解決的方案
任何序列都可以通過簡單的變量賦值方式將其元素分配到對應的變量中,唯一的要求就是變量的數(shù)量和結(jié)構(gòu)需要和序列中的結(jié)構(gòu)完全一致。
p = (1, 2) x, y = p # x = 1 # y = 2 data = ['google', 100.1, (2016, 5, 31)] name, price, date = data # name = 'google' # price = 100.1 # date = (2016, 5, 31) name, price, (year, month, day) = data # name = 'google' # price = 100.1 # year = 2016 # month = 5 # day = 31
如果變量結(jié)構(gòu)和元素結(jié)構(gòu)不一致,你將會遇到以下錯誤:
p = (1, 2) x, y, z = p Traceback (most recent call last): File "<pyshell#12>", line 1, in <module> x, y, z = p ValueError: not enough values to unpack (expected 3, got 2)
其實這樣的操作不限于元組和數(shù)組,在字符串中也是可以用的。Unpacking支持大多數(shù)我們常見的序列,比如文件迭代,各種生成器等等。
s = 'Hello' a,b,c,d,e = s # a = 'H' # b = 'e'
如果導出過程中你想丟掉一些元素,其實Python并不支持這樣的語法,不過你可以指定一些不常用的變量來達到你的目的。
data = ['google', 100.1, (2016, 5, 31)] name, _, (_,month,_) = data # name = 'google' # month = '5' # other fileds will be discarded
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作能有所幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
flask操作數(shù)據(jù)庫插件Flask-SQLAlchemy的使用
Python?中最廣泛使用的ORM框架是SQLAlchemy,它是一個很強大的關(guān)系型數(shù)據(jù)庫框架,本文就來介紹一下flask操作數(shù)據(jù)庫插件Flask-SQLAlchemy的使用,感興趣的可以了解一下2023-09-09詳解Python中Pytest和Unittest的區(qū)別
Pytest?和?Unittest是Python中屬于最常用的兩個測試框架。那么他們有些什么區(qū)別呢??Playwright?為什么只給了Pytest的深度支持,而不是Unittest呢?本文就來和大家詳細聊聊2023-03-03詳盡講述用Python的Django框架測試驅(qū)動開發(fā)的教程
這篇文章主要介紹了詳盡講述用Python的Django框架測試驅(qū)動開發(fā)的教程,主要使用TDD工具,全文介紹非常詳細,需要的朋友可以參考下2015-04-04