为什么我不能用'strip('\“')删除引号?

2024-10-02 22:25:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我只能使用str.strip('\"')删除左引号: 在

with open(filename, 'r') as fp :
    for line in fp.readlines() :
        print(line)
        line = line.strip('\"')
        print(line)

部分结果:

^{pr2}$

使用line.replace('\"', '')可以得到正确的结果:

"Route d'Espagne"

Route d'Espagne

有人能解释一下吗?在


Tags: inforaswithlineopenfilenameroute
1条回答
网友
1楼 · 发布于 2024-10-02 22:25:27

你的台词不以引号结尾。换行分隔符是行to的一部分,在从文件中读取时不会删除,因此除非在要剥离的字符集中包含\n,否则{}将保留。在

诊断字符串问题时,使用print(repr(line))或甚至print(ascii(line))生成调试输出,以使不可打印或非ASCII代码点可见:

>>> line = '"Route d\'Espagne"\n'
>>> print(line)
"Route d'Espagne"

>>> print(repr(line))
'"Route d\'Espagne"\n'

\n添加到str.strip()参数:

^{pr2}$

演示:

>>> line.strip('"')
'Route d\'Espagne"\n'
>>> line.strip('"\n')
"Route d'Espagne"
>>> print(line.strip('"\n'))
Route d'Espagne

相关问题 更多 >