2016-08-17 104 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)