如果您不知道文件是否存在又不清除旧文件(如果有的话),您如何编辑该文件?
How do you edit a file if you don't know if it exists yet without wiping the old one if there was one?
我正在尝试创建一个文件并向其中写入内容,但前提是该文件不存在。使用我的代码,如果文件已经存在,它会擦除它然后写入它。
我想在不清除旧信息的情况下写入它,但前提是它以前存在。
这是我尝试的代码:
def save_score():
file = open('high_scores.txt', 'w+')
file.write('name: '+name+', score: '+str(score)+'\n')
file.close()
file = open('high_scores.txt', 'r')
for line in file:
print(line)
file.close()
exit(0)
name = input('enter name ')
score = input('enter score ')
save_score()
您可以使用 "exists" 方法....请参阅 https://linuxize.com/post/python-check-if-file-exists/
open(“filename”, “mode”)
支持以下模式:
- ‘r’ – 只读文件时使用的读取模式
- ‘w’ – 写入模式,用于编辑和写入新信息
文件(任何现有的同名文件都将被删除
此模式已激活)
- ‘a’ – Appending mode,用于在末尾添加新数据
文件;即新信息自动修改到最后
- ‘r+’ – 特殊读写模式,用于同时处理
使用文件时的操作
根据需要使用它们
使用os模块的另一种方式。
import os
if os.path.isfile ('high_scores.txt'):
print('The file exists')
else:
print('The file does not exist')```
我正在尝试创建一个文件并向其中写入内容,但前提是该文件不存在。使用我的代码,如果文件已经存在,它会擦除它然后写入它。
我想在不清除旧信息的情况下写入它,但前提是它以前存在。
这是我尝试的代码:
def save_score():
file = open('high_scores.txt', 'w+')
file.write('name: '+name+', score: '+str(score)+'\n')
file.close()
file = open('high_scores.txt', 'r')
for line in file:
print(line)
file.close()
exit(0)
name = input('enter name ')
score = input('enter score ')
save_score()
您可以使用 "exists" 方法....请参阅 https://linuxize.com/post/python-check-if-file-exists/
open(“filename”, “mode”)
支持以下模式:
- ‘r’ – 只读文件时使用的读取模式
- ‘w’ – 写入模式,用于编辑和写入新信息 文件(任何现有的同名文件都将被删除 此模式已激活)
- ‘a’ – Appending mode,用于在末尾添加新数据 文件;即新信息自动修改到最后
- ‘r+’ – 特殊读写模式,用于同时处理 使用文件时的操作
根据需要使用它们
使用os模块的另一种方式。
import os
if os.path.isfile ('high_scores.txt'):
print('The file exists')
else:
print('The file does not exist')```