python中的yield from語(yǔ)法快速學(xué)習(xí)
協(xié)程是什么?可能很多人不清楚,所以我們先從其中的yield from開始講解。
yield from 用法詳解:
yield from 是在Python3.3才出現(xiàn)的語(yǔ)法。所以這個(gè)特性在Python2中是沒有的。
yield from 后面需要加的是可迭代對(duì)象,它可以是普通的可迭代對(duì)象,也可以是迭代器,甚至是生成器。
簡(jiǎn)單應(yīng)用:拼接可迭代對(duì)象我們可以用一個(gè)使用yield和一個(gè)使用yield from的例子來(lái)對(duì)比看下。
使用yield
<p style='line-height: 1.75em;'><span style='font-family: 微軟雅黑, 'Microsoft YaHei'; font-size: 14px;'># 字符串<br>astr=’ABC’<br># 列表<br>alist=[1,2,3]<br># 字典<br>adict={'name':'wangbm','age':18}<br># 生成器<br>agen=(i for i in range(4,8))<br><br>def gen(*args, **kw):<br> for item in args:<br> for i in item:<br> yield i<br><br>new_list=gen(astr, alist, adict, agen)<br>print(list(new_list))<br># [’A’, ’B’, ’C’, 1, 2, 3, ’name’, ’age’, 4, 5, 6, 7]<br></span></p>
使用yield from
<p style='line-height: 1.75em;'><span style='font-family: 微軟雅黑, 'Microsoft YaHei'; font-size: 14px;'># 字符串<br>astr=’ABC’<br># 列表<br>alist=[1,2,3]<br># 字典<br>adict={'name':'wangbm','age':18}<br># 生成器<br>agen=(i for i in range(4,8))<br><br>def gen(*args, **kw):<br> for item in args:<br> yield from item<br><br>new_list=gen(astr, alist, adict, agen)<br>print(list(new_list))<br># [’A’, ’B’, ’C’, 1, 2, 3, ’name’, ’age’, 4, 5, 6, 7]<br></span></p>
到此這篇關(guān)于python中的yield from語(yǔ)法快速學(xué)習(xí)的文章就介紹到這了,更多相關(guān)如何快速掌握python中的yield from語(yǔ)法內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. ASP.NET MVC實(shí)現(xiàn)城市或車型三級(jí)聯(lián)動(dòng)2. IntelliJ IDEA設(shè)置條件斷點(diǎn)的方法步驟3. PHP數(shù)組array類常見操作示例4. 淺談Java HttpURLConnection請(qǐng)求方式5. 永久解決 Intellij idea 報(bào)錯(cuò):Error :java 不支持發(fā)行版本5的問題6. Eclipse XSD 生成枚舉類型的Schema的實(shí)例詳解7. PHP中常用的函數(shù)庫(kù)和一些小技巧8. JavaScript內(nèi)置對(duì)象之Array的使用小結(jié)9. Java正則表達(dá)式實(shí)現(xiàn)經(jīng)緯度的合法性操作10. python實(shí)現(xiàn)ftp文件傳輸系統(tǒng)(案例分析)
