2015-05-13 24 views
-5

我很困惑,談不上什麼print呢,讓我解釋一下:Python中,獨立的打印意義

if <something>: 
    for i in x 
      print "Hello" 
    print 

什麼是最後打印的點,它做什麼?

+4

爲什麼不使用'print'運行腳本並查看? – unutbu

+0

您確定for循環中的'print'沒有尾隨逗號嗎?最終的打印將被用於在一組之前沒有輸出換行符的命令之後提供換行符。 – chepner

+0

在'hello'之後添加''',看看它做了什麼 – letsc

回答

4

它打印一個空行。例如:

print 1 
print 2 
print 
print 3 

給出:

+0

@FreshTendrils如果我的答案解決了您的問題,請單擊我答案旁邊的複選標記以將其標記爲已接受。 – orlp

+0

@FreshTendrils這是upvoting - 接受答案總是可以完成:)複選標記在投票按鈕的左側。 – orlp

2

它在python 2.x中打印新行。在python 3.x中,它什麼都不會做。

我建議使用python控制檯來快速檢查這樣的事情。

+1

它不是3.x語法錯誤,它只是沒有做任何事情(有用)。 – Kevin

+0

哦,對不起。我糾正了它。 – Dzarafata

+1

請注意,它什麼都不做,因爲'print'本身只是對函數的引用,而不是函數調用。 – chepner

0

它可以讓你打開一個Python解釋器跳過一個新的生產線在Python 2

你可以自己試試:

>>> print 

>>> 
2

它打印一個空行。這在documentation中有解釋:

A '\n'字符寫在最後,除非打印語句以逗號結尾。如果聲明僅包含關鍵字print,則這是唯一的操作。

它可以運行你的例子可以看到:

if True: 
    for i in [1,2,3,4]: 
      print "Hello" 
    print 

輸出:

> python test.py 
Hello 
Hello 
Hello 
Hello 

> 

公告最後提示之前的空行。