python Vs bash字符串切片
作者:互联网
我的文件包含文字,
bcd\\\\.
使用bash,我读取文件并从第4位到第8位打印字符,
tmp=$(cat a)
echo "${tmp:3:4}"
它打印,
\\\\
都很开心现在我使用python的数组切片来打印从第4位到第8位的字符,
>>> f = open('a')
>>> v=f.read()
>>> v[3:7]
它打印,
'\\\\\\\\'
为什么bash和python在有反斜杠时表现不同?
解决方法:
这是python如何显示字符串的问题.注意:
>>> f = open('a')
>>> v=f.read()
>>> v[3:7]
'\\\\\\\\'
>>> print v[3:7]
\\\\
显示v [3:7]时,反斜杠会被转义.打印时,打印v [3:7],它们不会被转义.
其他例子
文件中的行应以换行符结尾.在这种情况下,请观察:
>>> v[-1]
'\n'
>>> print v[-1]
>>>
换行符显示为反斜杠-n.它打印为换行符.
选项卡的结果类似:
>>> s='a\tb'
>>> s
'a\tb'
>>> print s
a b
标签:quoting,python,string 来源: https://codeday.me/bug/20190816/1666930.html