repr() 没有前导和尾随引号?
repr() without leading and trailing quote?
需要字符串在打印输出中显示 \n
而不带尾随 + 前导 '
。目前在输入(打开 + 阅读 .txt)上使用 repr
,所以我想知道什么是删除 '
的最佳方法以获得正确的 indexing/search?
repr('s')[1:-1]
repr('s').strip("'")
不幸的是,一些字符正在被转义,我不想使用 repr
转义,例如 '
.
您正在过早地使用 repr()
。它应该用于输出,而不是输入。
将 repr(string)
添加到您的 print
语句并将其从输入中删除。
你没有说为什么要这样做,但我猜你打算将字符串存储在数据库或 .csv
文件或其他东西中,并且你不希望非- 在数据中打印换行符等字符,因为它们会使 SQL 解释器等其他工具行为不端。
如果这是正确的猜测,请不要使用 repr()
,因为它会转义我认为您不想转义的字符,例如引号和反斜杠。相反,决定要引用哪些非打印字符(我认为唯一可能的是 \n
和 \t
)并自己替换它们。
fixed_s = s.replace("\n",r"\n").replace("\t",r"\t")
但是如果您只是将该字符串用作普通 Python 字典键,请不要对其进行操作,按原样使用它。
需要字符串在打印输出中显示 \n
而不带尾随 + 前导 '
。目前在输入(打开 + 阅读 .txt)上使用 repr
,所以我想知道什么是删除 '
的最佳方法以获得正确的 indexing/search?
repr('s')[1:-1]
repr('s').strip("'")
不幸的是,一些字符正在被转义,我不想使用 repr
转义,例如 '
.
您正在过早地使用 repr()
。它应该用于输出,而不是输入。
将 repr(string)
添加到您的 print
语句并将其从输入中删除。
你没有说为什么要这样做,但我猜你打算将字符串存储在数据库或 .csv
文件或其他东西中,并且你不希望非- 在数据中打印换行符等字符,因为它们会使 SQL 解释器等其他工具行为不端。
如果这是正确的猜测,请不要使用 repr()
,因为它会转义我认为您不想转义的字符,例如引号和反斜杠。相反,决定要引用哪些非打印字符(我认为唯一可能的是 \n
和 \t
)并自己替换它们。
fixed_s = s.replace("\n",r"\n").replace("\t",r"\t")
但是如果您只是将该字符串用作普通 Python 字典键,请不要对其进行操作,按原样使用它。