# ./ 表示的是当前路径
# f = open("./data/test.txt", "w") # w是写入,当发现不存在就新建一个
# 打开文件,w模式(写模式),文件不存在就新建
# f.write("文件操作") # 将字符串写入文件中
print('------------------------')
f = open("./data/test.txt", "r")
# content = f.readlines() # 结果: [文件操作]
# print(type(content)) # 结果:列表类型
# readlines():一次性读取全部文件为列表,每行一个字符串元素
print('------------------------')
# content = f.read() # 结果:文件操作
content = f.readlines()
print(content) # ['wenjiancaozuon', 'hellon', 'python']
# n:是换行符
for line in content:
print(line)
print('------------------------')
# w操作会把原来的模式覆盖掉,是一个覆盖的操作。每执行w操作,会把原来的操作都给抹去了。新写的东西会留下来,原来写的东西不会留下来
content = open('./data/test.txt', 'w') # 写完之后,一定要记得关
content.write('jintian tian qi bu cuo')
content.write('n') # 需要自己指定换行符
content.write('tang yudi')
print('------------------------')
# 最好要提前备份文件,再执行操作
content = open('./data/test.txt', 'a') # w模式会覆盖(原来写的东西不会存在),a相当于追加的模式
content.write('n')
content.write('123 456 789')
content.write('n') # 需要自己指定换行符
content.write('tang yudi')
content.close() # 关闭文件
print('------------------------')
txt = open('./data/test.txt', 'w')
for i in range(5):
txt.write(str(i) + 'n')
txt.close() # 写完之后一定要记得关,否则会写不上或者读不全
txt2 = open('./data/test.txt', 'r')
print(txt2.read())
print('------------------------')
txt = open('./data/test.txt', 'w')
try:
for i in range(100):
a = 10 / (i - 50)
txt.write(str(i)+'n')
print(a)
except Exception:
print('error:', i)
finally:
txt.close() # 最后一定要确保文件关闭,否则可能会导致文件丢失
# 简单并且常用的写法:with能确保关闭文件了
with open('./data/test.txt', 'w') as f:
f.write('jin tian tian qi bu cuo')
# with写法是包含了try--except--finally模块,它最后会自动的关闭文件