当我尝试拆分这样的字符串时,我收到错误:
string = "asdasd\asdasd"
lhs, rhs = string.split("\\")
print(rhs)
当我尝试打印右侧字符串时,我收到以下错误。
Traceback (most recent call last):
File "C:/Users/Michael/PycharmProjects/untitled/expiriment2.py", line 2, in <module>
lhs, rhs = string.split("\\")
ValueError: need more than 1 value to unpack
答案 0 :(得分:3)
我不确定您要尝试实现的目标,但您可以尝试使用以下原始字符串:
string = r"asdasd\asdasd"
lhs, rhs = string.split("\\")
print rhs
答案 1 :(得分:2)
你的字符串的反斜杠用于转义以下a
字符,因此python将\a
视为一个字符。您可以通过将字符串打印到控制台来进行检查。它会打印asdasdsdasd
而不是asdasd\asdasd
。要确保字符串中有反斜杠文字,必须转义转义字符,即放入2个反斜杠。
string = "asdasd\\asdasd"
lsh, rhs = string.split("\\")
您获得该特定错误的原因是split返回包含一个元素的列表,该元素是原始字符串(["asdasd\asdasd"]
),因此python正在将"asdasd\asdasd"
分配给lhs
},并且没有任何内容可以分配给rhs
。
答案 2 :(得分:1)
lhs, rhs = string.split(r"\a")
r
表示以下字符串为“raw”,并且不应转义反斜杠。