簡體   English   中英

盡管使用了轉義字符,但無法使用反斜杠分割字符串

[英]Unable to split a string with a back slash despite using escape character

當我嘗試分割這樣的字符串時出現錯誤:

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

我不確定您要實現的目標,但是可以嘗試使用如下所示的原始字符串:

string = r"asdasd\asdasd"
lhs, rhs = string.split("\\")
print rhs

您的字符串的反斜杠被用來逃避以下a字符,所以Python對待\\a為一個字符。 您可以通過將字符串打印到控制台進行檢查。 它會打印asdasdsdasd而不是asdasd\\asdasd 為確保字符串中包含反斜杠文字,必須轉義轉義字符,即放置2個反斜杠。

string = "asdasd\\\\asdasd" lsh, rhs = string.split("\\\\")

你得到的特定錯誤是分裂的原因返回包含一個元素的列表,它是原始的字符串( ["asdasd\\asdasd"]所以Python分配"asdasd\\asdasd"lhs ,並沒有什么分配給rhs

lhs, rhs = string.split(r"\a")

r表示以下字符串是“ raw”,並且反斜杠不應轉義。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM