python中的带有换行符的字符串在juypter中直接输入、print与写入文件的区别
為什么會(huì)有這么個(gè)問題呢?
因?yàn)槲以趈upternotebook中輸入帶有換行符的字符串\n,但最終結(jié)果并沒有體現(xiàn)換行的效果,這個(gè)出乎我意料,于是就有了這個(gè)記錄。
實(shí)驗(yàn)結(jié)果:
第一種:jupternotebook:
s = "www.baidu.\n.com\n"
s
輸出:
'www.baidu.\n.com\n'
這種方式輸出是直接返回字符串的原始內(nèi)容,即內(nèi)存中的原始樣貌(這個(gè)判斷是錯(cuò)誤的,請(qǐng)看第五種情況 )。
第二種:直接print
print("www.baidu.\n.com\n")
輸出:
www.baidu.
.com
print是反映了最終效果的
第三種:open file寫入
with open("/home/test/testxxxxxx.txt", "w") as fw:
? ? fw.write(s)
輸出:
www.baidu.
.com
結(jié)果等同于print效果。
第四種:在python的交互環(huán)境中:
Python 2.7.5 (default, Apr ?9 2019, 14:30:50)?
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> s = "www.baidu.\n.com\n"
>>> s
'www.baidu.\n.com\n'
第五種:
s = "\.\."
s
輸出:
'\\.\\.'
第六種:
with open("/home/test/20200521222.txt", "r") as fr:d = fr.read() print(d) d Output: 1 2 '1\n2'即jupyter并不是直接輸出內(nèi)存中內(nèi)容,即定義中內(nèi)容是需要經(jīng)過轉(zhuǎn)換處理才能到內(nèi)存中。所以并不造價(jià)。
結(jié)論:如果要看字符串的原始內(nèi)容,直接在jupternote book中直接輸出;所以流程:定義的字符串原始內(nèi)容-->內(nèi)存中的字符串-->display的字符串(print或者寫入).?
?
?
總結(jié)
以上是生活随笔為你收集整理的python中的带有换行符的字符串在juypter中直接输入、print与写入文件的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: dict格式转字符串两种方法的区别
- 下一篇: python的字符串的转义