2011-04-18 187 views
2

如何在Python中添加空格?在字符串中添加空格

Ex。

print "How many times did " + name + "go here?"; 

會打印:

How many times didnamego here?" 

如何我補充一點空間?

+0

伊格納西奧,你可以請更歡迎和有用的,特別是對於21代表的OP,所以,顯然很新?解釋你的意思。例如那麼,它看起來像你已經有一個空間左邊。我認爲你的輸出實際上應該看起來更像「名字在這裏出現過多少次」。那是對的嗎? – leoger 2011-04-18 00:19:34

+3

@leoger:請考慮一下模糊的可能性,您可能會無意中錯誤地咆哮錯誤的樹。我認爲OP的print語句沒有打印任何內容,因爲它有語法錯誤。那是對的嗎? – 2011-04-18 08:02:49

回答

5

@yookd:歡迎來到SO。這不是一個真正的答案,只是一些提出更好問題的建議。

請檢查您在發佈之前輸入的內容。您的print聲明不會顯示您所說的內容。 實際上它不打印任何東西,因爲它有語法錯誤。

>>> name = "Foo" 
>>> print "How many times did " + name "go here?"; 
    File "<stdin>", line 1 
    print "How many times did " + name "go here?"; 
               ^
SyntaxError: invalid syntax 

你缺少一個+name

>>> print "How many times did " + name + "go here?"; 
How many times did Foogo here? 

和固定的語法錯誤,你說,它做什麼它不會做後均勻。它所做的是展示獲得空間的方式之一(包括常量文本)。

提示:要保存檢查,請在Python交互式提示符處輸入您的代碼,然後將代碼和結果直接複製/粘貼到您的問題中,就像我在此「答案」中所做的一樣。

+0

感謝您的幫助! – 2011-04-19 01:05:16

10
print "How many times did " + name + " go here?" 

print "How many times did", name, "go here?" 

print "How many times did %s go here?" % name 

在這個簡單的情況下,優選的形式是第二個。第一個使用連接(如果你想要多個或少於一個空間之間的空間,這是有用的),第二個使用逗號運算符,在print的上下文中用空格連接字符串,第三個使用字符串格式(舊樣式),如果你來自C,Perl,PHP等,這應該看起來很熟悉。第三種是最強大的形式,但在這種簡單的情況下,使用格式字符串是不必要的。

請注意,在Python中,行不需要(而且不應該)以分號結尾。您還可以使用某些string justification methods在字符串的一側或兩側添加幾個空格。

+2

或''print'{0:s}在這裏出現了多少次?「。format(name)''使用[更新的字符串格式](http://docs.python.org/library/stdtypes .html#str.format)在Python 2.6中引入。 – Blair 2011-04-18 01:23:21

+1

@Blair tbh,我討厭那種風格。我非常喜歡C風格。 – 2011-04-18 01:27:50

+0

是的,考慮到我的C背景,我通常也默認使用舊的風格。但新風格是Python 3的推薦方法,因此值得一提。 – Blair 2011-04-18 08:03:41

1
print "How many times did ", name, "go here?" 

>>> name = 'Some Name' 
>>> print "How many times did", name, "go here?" 
How many times did Some Name go here? 
>>> 
1

使用Python 3,

使用打印級聯:

>>> name = 'Sue' 
>>> print('How many times did', name, 'go here') 
How many times did Sue go here 

使用字符串連接:

>>> name = 'Sue' 
>>> print('How many times did ' + name + ' go here') 
How many times did Sue go here 

使用格式:

>>> sentence = 'How many times did {name} go here' 
>>> print(sentence.format(name='Sue')) 
How many times did Sue go here 

用%:

>>> name = 'Sue' 
>>> print('How many times did %s go here' % name) 
How many times did Sue go here 
相關問題