Python每日一練0003

問題

在每日一練0001中介紹瞭如何unpack一個可迭代對象,使用,運算符便可python

但每每咱們遇到的問題是可迭代對象中的數量是不肯定的微信

這個時候該如何拿到咱們想要的元素,好比咱們只須要可迭代對象的第一個或者最後一個元素而已spa

解決方案

使用Python中的*運算符code

例如咱們須要拿到一個元組的第一個和最後一個元素對象

>>> zoo = ('monkey', 'camel', 'python', 'owl', 'zebra')
>>> first, *middle, last = zoo
>>> print(first, last)
monkey zebra

而且*也能夠放在第一個元素的位置,好比咱們想要拿到迭代器的最後一個元素rem

>>> zoo = ('monkey', 'camel', 'python', 'owl', 'zebra')
>>> *head, last = zoo
>>> print(last)
zebra

討論

使用*運算符,能夠很方便的拿到迭代器的某些元素(在迭代器中數量不是肯定的時候),雖然也能夠使用循環來完成,可是使用*更加的簡潔it

Python沒有規定如何丟掉某些元素,當須要丟掉某些元素的時候,咱們能夠用_來代替ast

當咱們只想要第一個元素時class

>>> zoo = ('monkey', 'camel', 'python', 'owl', 'zebra')
>>> first, *_ = zoo
>>> print(first)
monkey

來源

Python Cookbook循環

關注

歡迎關注個人微信公衆號:python每日一練

相關文章
相關標籤/搜索