Python 查找和查找特殊“文件”很麻烦&引用;字符串中的字符? 我有一个人名列表(字符串元素),其中一些人被一个向后斜线“”坐在中间的名字中。p>

Python 查找和查找特殊“文件”很麻烦&引用;字符串中的字符? 我有一个人名列表(字符串元素),其中一些人被一个向后斜线“”坐在中间的名字中。p>,python,string,Python,String,我想在外面过滤它们,但我发现很难解释问题 为了查找\反斜杠,我使用了.find方法或中的,它们的工作方式似乎相同 唯一有效的参数是“\\”,因为“\”或r'\'都会导致错误(在扫描字符串文字时转义最终引号-->语法错误:EOL) 因此,这是搜索代码: names=[“robert”、“rob\xadt”、“egi\xadio”] 对于名称中的名称: 打印(name.find('\\')) 这将返回-1,-1,-1(未找到任何内容) 我无法更改包含这些名称的输入字符串,但是,为了解决此问题,如果我

我想在外面过滤它们,但我发现很难解释问题

为了查找
\
反斜杠,我使用了
.find
方法或
中的
,它们的工作方式似乎相同

唯一有效的参数是
“\\”
,因为
“\”
r'\'
都会导致错误(在扫描字符串文字时转义最终引号-->
语法错误:EOL

因此,这是搜索代码:

names=[“robert”、“rob\xadt”、“egi\xadio”]
对于名称中的名称:
打印(name.find('\\'))

这将返回-1,-1,-1(未找到任何内容)

我无法更改包含这些名称的输入字符串,但是,为了解决此问题,如果我手动获取其中一个名称并在之前添加
r
raw,则代码可以工作,如下面最后一个元素所示:

names=[“egi\xadio”,r“egi\xadio”]
对于名称中的名称:
打印(name.find('\\'))

这将返回-1,3(找到了一些东西!)

我尝试系统地添加原始符号
r
,但没有成功,如下所示:

name='rob\xadt'
name=fr'{name}'
name.find(“\\”)

最后,下面的两个“相似”代码都找不到
\
,但我想知道为什么第一个代码会导致错误:

name=“rob\xar”
name.find(“\\”)

语法错误:(unicode错误)'UnicodeScape'编解码器无法解码位置3-5:截断\xXX转义中的字节

name=“rob\xad”
name.find(“\\”)

有什么见解吗??提前谢谢

name = r"rob\xar"
name.find('\\')
我想这就是你想要的。 这里,“r”表示“原始”字符串

字符串文本可以选择前缀字母“r”或“r”;这些字符串称为原始字符串,并使用不同的规则来解释反斜杠转义序列


ref:

'\xad'
'-'
字符。这是UTF-8字符编码。。。