Python每日一練0003
問題
在每日一練0001中介紹了如何unpack一個可迭代對象,使用,
運算符即可
但往往我們遇到的問題是可迭代對象中的數量是不確定的
這個時候該如何拿到我們想要的元素,比如我們只需要可迭代對象的第一個或者最後一個元素而已
解決方案
使用Python中的*
運算符
例如我們需要拿到一個元組的第一個和最後一個元素
>>> zoo = (monkey, camel, python, owl, zebra)>>> first, *middle, last = zoo>>> print(first, last)monkey zebra
並且*
也可以放在第一個元素的位置,比如我們想要拿到迭代器的最後一個元素
>>> zoo = (monkey, camel, python, owl, zebra)>>> *head, last = zoo>>> print(last)zebra
討論
使用*
運算符,可以很方便的拿到迭代器的某些元素(在迭代器中數量不是確定的時候),雖然也可以使用循環來完成,但是使用*
更加的簡潔
Python沒有規定如何丟掉某些元素,當需要丟掉某些元素的時候,我們可以用_
來代替
當我們只想要第一個元素時
>>> zoo = (monkey, camel, python, owl, zebra)>>> first, *_ = zoo>>> print(first)monkey
來源
Python Cookbook
關注
歡迎關注我的微信公眾號:python每日一練
http://weixin.qq.com/r/YygOFnnE8iSNrT11931x (二維碼自動識別)
推薦閱讀:
※Python generators, coroutines, native coroutines and async/await
※Python分析中文文字有哪些方法,那些庫?
※對numpy的一系列實驗
※MaxCompute Studio使用心得系列6——一個工具完成整個Python UDF開發
※Python built-in functions D&E
TAG:Python |