乙個future是用來表示將來要完成的結果,非同步迴圈可以自動完成對這種物件的狀態觸發,例子如下:
import asyncio
def mark_done(future, result):
print('setting future result to '.format(result))
future.set_result(result)
event_loop = asyncio.get_event_loop()
try:
all_done = asyncio.future()
print('scheduling mark_done')
event_loop.call_soon(mark_done, all_done, 'the result')
print('entering event loop')
result = event_loop.run_until_complete(all_done)
print('returned result: '.format(result))
finally:
print('closing event loop')
event_loop.close()
print('future result: '.format(all_done.result()))
輸出結果如下:
scheduling mark_done
entering event loop
setting future result to 'the result'
returned result: 'the result'
closing event loop
future result: 'the result'
在這個例子裡,並沒有呼叫return語句,但也可以生成乙個結果返回。future的使用跟協程使用是一樣的。
Python學習筆記 使用 future
根據廖雪峰python教程整理 使用 future python的每個新版本都會增加一些新的功能,或者對原來的功能作一些改動。有些改動是不相容舊版本的,也就是在當前版本執行正常的 到下乙個版本執行就可能不正常了。從python 2.7 到python 3.x 就有不相容的一些改動,比如 2.x裡的字...
Python學習(二十) future
future 模組 from future import division使用python3中的除法.在python2除法中小數部分被截除,匯入division後變成了真正的除法 7 32 from future import division 7 32.3333333333333335 print...
Python的未來 future模組
簡單介紹一下python未來將會支援的一些語言特點 雖然ibm的 上也有介紹.但是太凌亂了.而且中翻譯過後,的格式想狗屎一樣.下面簡單介紹一下這些特點 nested scopes 改變名空間的搜尋過程 generators 使用生成器.能夠產生能儲存當前狀態的函式.division 精確的除法 ab...