官术网_书友最值得收藏!

The omnipresent print() function

Printing in Python is a very common technique as it allows the developer to display text to the console as the script executes. While there are many differences between Python 2 and 3, the way printing is called is the most obvious change, and is the reason why our previous example primarily only works with Python 3 as it is currently written. With Python 3, print became a function rather than a statement, as was the case with older versions of Python 2. Let's revisit our previous script and see a slight difference.

Note the following for Python 3:

001 print("Hello World!") 

Note the following for Python 2:

001 print "Hello World!"

The difference is seemingly minor. In Python 2, where print is a statement, you do not need to wrap what is being printed in parentheses. It would be disingenuous to say the difference is just semantics; however, for now just understand that print is written in two different ways, depending on the version of Python being used. The ramifications of this minor change mean that legacy Python 2 scripts that use print as a statement cannot be executed by Python 3.

Where possible, our scripts will be written to be compatible with both versions of Python. This goal, while seemingly impossible due to the difference in print, can be accomplished by importing a special Python library, called __future__, and changing the print statement to a function. To do this, we need to import the print function from the __future__ library and then write all print commands as function.

The following script executes in both Python 2 and 3:

001 from __future__ import print_function
002 print("Hello World!")

In the previous screenshot, you can see the result of this script in Python 2.7.15 and Python 3.7.1.

主站蜘蛛池模板: 贵德县| 怀安县| 长顺县| 屯留县| 固原市| 张家界市| 比如县| 昆明市| 分宜县| 疏附县| 通山县| 通辽市| 宝兴县| 宁蒗| 九龙县| 大余县| 兴安县| 运城市| 松溪县| 思茅市| 宣化县| 政和县| 襄樊市| 洛川县| 尚志市| 桂林市| 通道| 黔南| 玛纳斯县| 紫金县| 措勤县| 马公市| 宽城| 同仁县| 龙川县| 肇东市| 天气| 高雄县| 晋宁县| 云梦县| 江陵县|