4
print
這樣解釋的空白字符的完整列表是什麼?什麼`print`解釋爲空格?
我需要真正理解print
語句在Python中的工作原理。到目前爲止如此怪異,但是這是一個細節,我想不通:
在Python的參考手冊的第6.6章,它說:
...當寫到標準輸出的最後一個字符是一個除''之外的空格字符,...
我知道這種情況最常見的空格是'\ n',但我需要知道其他字符。
print
這樣解釋的空白字符的完整列表是什麼?什麼`print`解釋爲空格?
我需要真正理解print
語句在Python中的工作原理。到目前爲止如此怪異,但是這是一個細節,我想不通:
在Python的參考手冊的第6.6章,它說:
...當寫到標準輸出的最後一個字符是一個除''之外的空格字符,...
我知道這種情況最常見的空格是'\ n',但我需要知道其他字符。
在CPython的,它可能是所有字符爲哪些isspace()返回true
,即:
\f
(換)\n
(換行)\r
(回車)\t
(水平標籤)\v
(垂直標籤)
可能你需要這個:'import string; print repr(string.whitespace)'。 –
我建議試圖找到一個解決方案,它不需要使用'print'語句的語義的隱晦部分。例如,將各種子串連接成單個輸出字符串(您可以完全控制)。或者從__future__ import print_function'嘗試一種前向兼容的方法(它的參數之間總是包含它的'sep'參數,即使它們以空格結尾)。 – Blckknght
@Blckknght我不同意。但是,我必須精確地重現print語句的行爲。並不是說我會鼓勵任何依靠它的人。 – Stefan