读取txt的数据和把数据保存到txt中是经常要用到的,下面我就总结一下。

读txt文件

python常用的读取文件函数有三种read()、readline()、readlines()
这里写图片描述
以读取上述txt为例,我们一起来看一下三者的区别

read() 一次性读全部内容

read() #一次性读取文本中全部的内容,以字符串的形式返回结果

with open("test.txt", "r") as f:    #打开文件
    data = f.read()   #读取文件
    print(data)

readline() 读取第一行内容

readline() #只读取文本第一行的内容,以字符串的形式返回结果

with open("test.txt", "r") as f:
    data = f.readline()
    print(data)

readlines() 列表

readlines() #读取文本所有内容,并且以数列的格式返回结果,一般配合for in使用

with open("test.txt", "r") as f:
    data = f.readlines()
    print(data)

可见readlines会读到换行符,我们可以用如下方法去除:

with open("test.txt", "r") as f:
    for line in f.readlines():
        line = line.strip('\n')  #去掉列表中每一个元素的换行符
        print(line)

写txt文件

write

with open("test.txt","w") as f:
        f.write("这是个测试!")  #这句话自带文件关闭功能,不需要再写f.close()

print到文件中

  data=open("D:\data.txt",'w+') 
  print('这是个测试',file=data)
  data.close()

读写的模式

读写文件的时候有不同的模式,下面来总结一下:
这里写图片描述

list = ["苹果", "橘子", "香蕉", "西瓜"] # 将要 输出 保存的文件地址,若文件不存在,则会自动创建 fw = open("E:\\234. txt ", "w") for index in range(len(list)): fruitName = list[index] fw.write(fruitName) fw.write("\n") fw.clo. def __init__(self, filename=Default.log): self.terminal = sys.stdout self.log = open(filename, a) def write(self, message): self.terminal.write(message) self.log.write(message) def flush(self): path = os.path.ab
python 相关学习资料:https://edu.51cto.com/video/4102.htmlhttps://edu.51cto.com/video/4645.htmlhttps://edu.51cto.com/video/1158.html Python 结果 输出 txt 作为一名刚入行的开发者,你可能会遇到需...
import sys newfile = 'C:\VisualSTUDIO\climbdouban\soup. txt ' data = open(newfile,'w',encoding="utf-8") sys.stdout = data data.close() python 将print 输出 txt 碰到问题的时候 碰到报错UnicodeEncodeError: ‘gbk’ codec ...
python 输出 数据到 txt 文件(改进漏写的情况) python 输出 数据到. txt 的时候,有时候要运行两次才能 输出 ,怎么解决这个问题呢? 因为在前面写了一个f.open() 只有后面加一个f.close()或者f.flush()就可以了。 f = open('文件名' , 'w', encoding='gbk') f.write('something') f.flush() f.close() 来源:https://www.codeleading.com/article/830352
with open('file. txt ', 'r') as f: contents = f.read() return render_template('index.html', contents=contents) if __name__ == '__main__': app.run() 在这个例子 ,我们使用了Flask框架创建了一个名为`app`的应用。`@app.route('/')`装饰器定义了应用的根路由,即网站的首页。当用户访问该页面时,程序会 读取 名为`file. txt `的文件并将其 内容 传递给模板文件`index.html`,然后返回模板渲染后的HTML代码。 在`index.html` ,我们可以使用模板引擎将 Python 变量`contents`的值 输出 到网页 ,例如: ```html <!DOCTYPE html> <title>File Contents</title> </head> <pre>{{ contents }}</pre> </body> </html> 这个模板会将`contents`的值以文本形式 输出 到网页,用户就可以在浏览器 看到文件的 内容 了。