2016-08-17 105 views
-5

所以我剛剛得到一個簡短的問題。我需要在Python中替換('),但顯然它不起作用。如何在python中替換「'」?

這是我使用的python保換的東西代碼:與代碼

with open('ID.txt','r') as f: 
    newlines = [] 
    for line in f.readlines(): 
     newlines.append(line.replace('Machine',)) 
with open('ID.txt', 'w') as f: 
    for line in newlines: 
     f.write(line) 

更換機工作正常,但嘗試(')......這是行不通的。你能告訴我爲什麼嗎?我該如何解決這個小問題? ^^

注意!:我想替換的撇號不包含括號。我只想替換撇號:)

+0

我很確定答案在這個問題:'line.replace(「'」,)' –

+3

請編輯您的問題,包括給你一個錯誤的代碼,還包括你看到的錯誤。 – SingleNegationElimination

+2

請定義「明顯」。我沒有看到你的代碼部分試圖替換該字符 –

回答

0

使用replace(''','')會遇到錯誤。試試這個:

line.replace("'","")

0
for a in '', "'", '"': print(''' 1'2'3"4"5 '''.replace(a, '*')) 
0

這是非常簡單,因爲它可以處理與替換。沒有「明顯」的原因,這是行不通的。有一個「顯而易見」的原因,你就會有一個錯誤,並且試圖調用出單QUOT額外的單引號

text = "dog's toy" 
text.replace("'","-") 
==>"dog-s toy" 

如果您嘗試使用單引號是這樣的:

replace(''') 

你會失敗的原因有很多,最「明顯」是,你已經註釋掉使用下一次「」」

0

這裏是一個可能的解決方案以下所有代碼,直到:

with open('ID.txt', 'r') as f: 
    contents = f.read().replace("'", "") 

with open('ID.txt', 'w') as f2: 
    f2.write(contents)