向字符串列表的所有元素添加以“\”结尾的字符串

2024-04-20 02:14:18 发布

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

我有一个字符串列表:['John','William','Ken','Rogers']。我需要在列表中的每个元素前面加上"Corp\",以便最终的列表如下所示:

['Corp\John','Corp\William','Corp\Ken','Corp\Rogers']

我尝试了以下方法:

 s=['John','William','Ken','Rogers']
 users=['Corp\\' + m for m in s]
 print(users)

输出给我

 ['Corp\\John','Corp\\William','Corp\\Ken','Corp\\Rogers']

如果我尝试users=['Corp\' + m for m in s],我会得到一个明显的错误:

"StringError EOL while scanning string literal"

我需要每个元素的确切形式'Corp\name',因为这需要在for循环中使用,以验证有资格登录的用户。你知道吗


Tags: 方法字符串in元素列表for错误john
1条回答
网友
1楼 · 发布于 2024-04-20 02:14:18

这可能是您如何“输出”列表的问题。使用REPL:

>>> lsa = ["Corp\{}".format(item) for item in ls]
>>> print(lsa)
['Corp\\Jenna', 'Corp\\Wilma', 'Corp\\Katie', 'Corp\\Rebecca']
>>> for i in lsa:
...     print(i)
... 
Corp\Jenna
Corp\Wilma
Corp\Katie
Corp\Rebecca

如您所见,在打印完整列表的第一个print中,我们看到两个斜杠。这是因为Python说第二个斜杠是转义的。在第二次打印中,在for循环中,我们看到只有一个斜杠,因为我们单独打印每个项目,并应用转义字符串,只产生一个斜杠。你知道吗

相关问题 更多 >