我正在使用json对象读取数据集,在数据集中,一些值具有abcd \ nabdc格式。我使用了以下代码:
for line in open("c:\\dataset","r+").readlines():
d= json.loads(line)
str1 = d['strkey1']
str1.replace('\n' , '')
但无法取代。
答案 0 :(得分:4)
d['strkey1'] = d['strkey1'].replace('\n', '')
字符串是不可变的,因此字符串方法返回新字符串,不修改原始字符串。
此外:
for line in open("c:\\dataset","r+"):
在完成每一行之前,您不需要将.readlines()
整个文件放入内存中。但这还不够,您需要记住关闭文件,with
语句将为您处理:
with open("c:\\dataset","r+") as f:
for line in f:
# do stuff
答案 1 :(得分:1)
只需将您的代码更改为:
for line in open("c:\\dataset","r+").readlines():
dict = json.loads(line)
dict['strkey1'] = dict['strkey1'].replace('\n','')
这是有效的,因为字符串是不可变的(它们不能被更改),所以字符串方法返回一个新的字符串,(这里你需要存储)