2016-10-18 180 views
3

當我在Python IDLE中寫入以下命令時,它會給你帶有引號的輸出,我想知道它爲什麼給出這樣的輸出。Python轉義複雜輸出

x='''''abc\'abcddd''''' 

print x 

這是書面代碼的輸出。

''abc'abcddd 
+1

多線串具有在啓動和結束 –

+1

3個報價瞭解蟒蛇換行符,使用「\」。閱讀此:http://www.python.org/dev/peps/pep-0008/ –

+0

感謝您的幫助 – iamjayp

回答

3

正是由於蟒蛇三重引用的字符串:

''' ''' 

這兩者之間的一切解釋爲一個字符。所以在你的字符串中:

'''''abc\'abcddd''''' 

前三個引號'打開'的字符串。它會遇到2個引號,它會將其解釋爲字符。接下來它會遇到一個轉義報價,它將作爲報價打印出來,但它仍然使用轉義報價。然後它遇到最後5個引號中的前3個,結束三重引號字符串。然後它會遇到2個更多的引號,形成一個空字符串''

在地方蟒蛇的空間考慮1「的事情」:

''' ''abc\'abcddd ''' '' 
+1

好的答案,但你應該提到,Python自動連接(連接)相鄰的字符串文字。 –

+0

但問題是,雙引號是繼續在6間隔。這意味着,這些雙引號開始於5引號,並從那,他們繼續來到6的間隔,如11引號,17引號,23引號和等等。你能告訴我這是怎麼回事嗎? – iamjayp