1. 程式人生 > 程式設計 >Python模組future用法原理詳解

Python模組future用法原理詳解

這篇文章主要介紹了Python模組future用法原理詳解,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

計算機的知識太多了,很多東西就是一個使用過程中詳細積累的過程。最近遇到了一個很久關於future的問題,踩了坑,這裡就做個筆記,免得後續再犯類似錯誤。

future的作用:把下一個新版本的特性匯入到當前版本,於是我們就可以在當前版本中測試一些新版本的特性。說的通俗一點,就是你不用更新python的版本,直接加這個模組,就可以使用python新版本的功能。 下面我們用幾個例子來說明它的用法:

python 2.x print不是一個函式,不能使用help. python3.x print是一個函式,可以使用help.這個時候,就可以看一下future的好處了:

程式碼:

# python2
#from __future__ import absolute_import,division,print_function
#print(3/5)
#print(3.0/5)
#print(3//5)
help(print)

執行結果:

➜ future git:(master) ✗ python future.py
 File "future.py",line 8
  help(print)
       ^
SyntaxError: invalid syntax

報錯了,原因就是python2 不支援這個語法。

上面只需要把第二行的註釋開啟:

# python2
from __future__ import absolute_import,print_function
#print(3/5)
#print(3.0/5)
#print(3//5)
help(print)

結果如下,就對了:

Help on built-in function print in module __builtin__:

print(...)
  print(value,...,sep=' ',end='\n',file=sys.stdout)
  
  Prints the values to a stream,or to sys.stdout by default.
  Optional keyword arguments:
  file: a file-like object (stream); defaults to the current sys.stdout.
  sep: string inserted between values,default a space.
  end: string appended after the last value,default a newline.

另外一個例子:是關於除法的:

# python2
#from __future__ import absolute_import,print_function

print(3/5)
print(3.0/5)
print(3//5)
#help(print)

結果:

➜ future git:(master) ✗ python future.py
0.6

把編譯巨集開啟,運算結果:

➜ future git:(master) ✗ python future.py
0.6
0.6

看看,python3.x的語法可以使用了。

有了這兩個例子,估計你對future的用法就清晰了吧。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。