[英]Python rstrip backslash
我正在嘗試從一個巨大的300萬行文件中刪除字符串“ IT \\ ICCU \\ LO1 \\ 0834426”。 但是,當我運行此腳本時,它不會刪除字符串。
當我在Pycharm中編輯腳本時,該字符串顯示為綠色,但字符“ \\ 0”除外,該字符顯示為黑色。 這是一個問題,因為反斜杠是轉義字符嗎? 任何人有任何想法如何解決這個問題?
with open(f_in, 'r') as fin:
with open(f_out, 'w') as fout:
for line in fin:
if line.rstrip("IT\ICCU\LO1\0834426"):
fout.write(line)
您正在尋找的是replace()
函數,並使用原始字符串,如下所示:
with open(f_in, 'r') as fin:
with open(f_out, 'w') as fout:
for line in fin:
line = line.replace(r"IT\ICCU\LO1\0834426", "")
fout.write(line)
string.rstrip()用於從字符串的右端去除空格字符。
請改為查看string.replace()。
我認為OP不需要使用原始字符串:
line = "JJJJJJJJJJ\IT\ICCU\LO1\0834426\ZZZZZZZZZ"
print line.replace(r"IT\ICCU\LO1\0834426",'')
JJJJJJJJJJ\IT\ICCU\LO1834426\ZZZZZZZZZ
print line.replace("IT\ICCU\LO1\0834426",'')
JJJJJJJJJJ\\ZZZZZZZZZ
將line.replace()
與字符串一起使用將獲得所需的結果。
或至少那是我的解釋。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.