繁体   English   中英

str.replace添加反斜杠

[英]str.replace adding back slash

我有这个互动环节:

>>> str = '192.168.1.1'
>>> str = str.replace('.','\.')
>>> str
'192\\.168\\.1\\.1'

我希望输出为: 192\\.168\\.1\\.1而不是192\\\\.168\\\\.1\\\\.1

我该如何实现? 为什么会这样呢?

使用print str代替str

>> str = '192.168.1.1'
>>> str = str.replace('.','\.')
>>> str
'192\\.168\\.1\\.1'
>>> print str
192\.168\.1\.1

您的字符串是您希望的字符串,但是当您仅转储对象时,python会以一种可用于分配给另一个字符串的形式向您显示该字符串-这意味着转义\\字符。

该字符串正是应该的。 多余的斜杠仅出现在显示中,而不出现在实际的字符串中。

\\是转义字符,因此要求\\通过隐藏其转义字符性质将\\添加到字符串中。

如果在字符串名称前使用“打印”,则会看到它的显示方式,而不是实际包含的内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM