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

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.

主站蜘蛛池模板: 汉沽区| 抚松县| 台山市| 勃利县| 咸丰县| 伊宁县| 东乌珠穆沁旗| 梁山县| 海丰县| 达州市| 北海市| 商水县| 分宜县| 南京市| 辛集市| 连州市| 招远市| 平罗县| 巴林右旗| 高雄市| 佛冈县| 常熟市| 德昌县| 孙吴县| 同心县| 长宁区| 芒康县| 辽阳市| 神农架林区| 延边| 汶上县| 景洪市| 普定县| 定州市| 凤阳县| 南溪县| 轮台县| 天门市| 昆明市| 碌曲县| 固镇县|