Python 3 如何在文件中追加列表?
Python 3 How do I append a list in a file?
这是我的文件的数据:
- 约翰·史密斯,5 岁
- 卢克·史密斯,7 岁
- 玛丽·史密斯,8 岁
- 鲍比·史密斯,2 岁
我希望能够为文件中的特定用户添加另一个号码。见下文(玛丽)。
- 约翰·史密斯,5 岁
- 卢克·史密斯,7 岁
- 玛丽·史密斯,8 岁,6 岁
- 鲍比·史密斯,2 岁
我的代码:
with open('filename.txt','a') as file:
file.write("\n{}, {}".format(name,number))
此代码将 append/write 写入文件就好了,但它每次都会写入新用户,我不希望它这样做。我希望它检查用户是否已经在文件中,并在该行后附加新号码。如果用户不存在,请将其添加到文件中。
试试这个
value = 5
user = input('Please enter a username: ')
with open('myfile.txt', 'r+') as f:
var = f.readlines()
if user in ''.join(var):
for count, line in enumerate(var):
if user in line:
found = line.strip() + ', ' + str(value) + '\n'
var[count] = found
else:
'{} not in the file but has been added'
var.append(user + ' ' + str(value) + '\n')
with open('myfile.txt', 'w') as f:
f.writelines(var)
应该有比打开文件两次更好的方法,但它有效
这会起作用:
file = open('filename.txt','r')
file.read()
data = file.replace('Mary Smith, 8', 'Mary Smith, 8, 6')
file.close()
file = open('filename.txt', 'w')
file.write(data)
file.close()
这是我的文件的数据:
- 约翰·史密斯,5 岁
- 卢克·史密斯,7 岁
- 玛丽·史密斯,8 岁
- 鲍比·史密斯,2 岁
我希望能够为文件中的特定用户添加另一个号码。见下文(玛丽)。
- 约翰·史密斯,5 岁
- 卢克·史密斯,7 岁
- 玛丽·史密斯,8 岁,6 岁
- 鲍比·史密斯,2 岁
我的代码:
with open('filename.txt','a') as file:
file.write("\n{}, {}".format(name,number))
此代码将 append/write 写入文件就好了,但它每次都会写入新用户,我不希望它这样做。我希望它检查用户是否已经在文件中,并在该行后附加新号码。如果用户不存在,请将其添加到文件中。
试试这个
value = 5
user = input('Please enter a username: ')
with open('myfile.txt', 'r+') as f:
var = f.readlines()
if user in ''.join(var):
for count, line in enumerate(var):
if user in line:
found = line.strip() + ', ' + str(value) + '\n'
var[count] = found
else:
'{} not in the file but has been added'
var.append(user + ' ' + str(value) + '\n')
with open('myfile.txt', 'w') as f:
f.writelines(var)
应该有比打开文件两次更好的方法,但它有效
这会起作用:
file = open('filename.txt','r')
file.read()
data = file.replace('Mary Smith, 8', 'Mary Smith, 8, 6')
file.close()
file = open('filename.txt', 'w')
file.write(data)
file.close()