在 Python 中,如何在列表中包含单个反斜杠元素?

2024-03-05

首先,我在 Windows 10 上运行 Python 3.6。

python 中的反斜杠字符是一个特殊字符,充当字符串的“转义符”。因此,无法直接打印。如果我想打印一个反斜杠,这样做是行不通的:

print("\") #error message

解决这个问题的方法是简单地添加另一个反斜杠,如下所示:

print("\\") #\

到目前为止,一切都很好。但是,当您创建字符串元素列表时,如下所示:

list_of_strings = ['<','>','\u20AC','\u00A3','$','\u00A5','\u00A4','\\']
print(list_of_strings)

打印出以下内容: [''、'€'、'£'、'$'、'¥'、'¤'、'\\'] 这并不理想。尝试在字符串中仅使用一个反斜杠('\')将导致与开头提到的相同的 EOL 错误。 如果您尝试使用其 unicode (u005C) 的单个实例直接打印反斜杠,如下所示:

print(['<','>','\u20AC','\u00A3','$','\u00A5','\u00A4','\u005C'])

输出仍然有双斜杠: [''、'€'、'£'、'$'、'¥'、'¤'、'\\']

我尝试过的另一件事是:

bs = "\\"
print(bs) #prints a single \
list_of_strings = ['a','b','c','d',bs]
print(list_of_strings) #prints ['a', 'b', 'c', 'd', '\\']

那么有没有办法让我能够进行设置,以便将单个反斜杠打印为列表中的字符串元素?

我感谢您能给我的任何帮助!


在 python 中打印列表时repr() 方法在后台调用。这意味着 print(list_of_strings) 本质上与以下内容相同(除了换行符之外):

>>> for element in list_of_strings:
...     print(element.__repr__())
... 
'<'
'>'
'€'
'£'
'$'
'¥'
'¤'
'\\'

实际上存储的字符串是 '\' 它只是表示为 '\\'

>>> for element in list_of_strings:
...     print(element)
... 
<
>
€
£
$
¥
¤
\

如果您按照上面的方式单独打印每个元素,它将显示文字值而不是表示的值。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Python 中,如何在列表中包含单个反斜杠元素? 的相关文章

随机推荐