2013-10-18 68 views
4

print這樣解釋的空白字符的完整列表是什麼?什麼`print`解釋爲空格?

我需要真正理解print語句在Python中的工作原理。到目前爲止如此怪異,但是這是一個細節,我想不通:

在Python的參考手冊的第6.6章,它說:

...當寫到標準輸出的最後一個字符是一個除''之外的空格字符,...

我知道這種情況最常見的空格是'\ n',但我需要知道其他字符。

+0

可能你需要這個:'import string; print repr(string.whitespace)'。 –

+0

我建議試圖找到一個解決方案,它不需要使用'print'語句的語義的隱晦部分。例如,將各種子串連接成單個輸出字符串(您可以完全控制)。或者從__future__ import print_function'嘗試一種前向兼容的方法(它的參數之間總是包含它的'sep'參數,即使它們以空格結尾)。 – Blckknght

+0

@Blckknght我不同意。但是,我必須精確地重現print語句的行爲。並不是說我會鼓勵任何依靠它的人。 – Stefan

回答

2

在CPython的,它可能是所有字符爲哪些isspace()返回true,即:

  • \f(換)
  • \n(換行)
  • \r(回車)
  • \t (水平標籤)
  • \v(垂直標籤)
相關問題