企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
[TOC] # 写数据 * write(str) * writelines(Iterable[str]) 可以将容器中数据写入到文件中,注意参数必须是可迭代的,包括字符串,列表,元组,集合以及字典 使用write()可以完成向文件写入数据 ~~~ f = open('test.txt', 'w') f.write('hello world, i am here!') f.close() ~~~ 注意 如果文件不存在那么创建,如果存在那么就先清空,然后写入数据 # 读数据 ## 读取数据(read) 使用read(num)可以从文件中读取数据,num表示要从文件中读取的数据的长度(单位是字节),如果没有传入num默认为-1,那么就表示读取文件中所有的数据 ~~~ f = open('/Users/jdxia/Desktop/website/test.txt', 'r') content = f.read(5) print(content) print("-"*30) content = f.read() print(content) f.close() ~~~ 输出 ~~~ hello ------------------------------ world ~~~ 注意: * 如果open是打开一个文件,那么可以不用写打开的模式,即只写 open('test.txt') * 如果使用读了多次,那么后面读取的数据是从上次读完后的位置开始的 ## 读数据(readlines) 按行读取文件数据,返回列表 list = f.readlines(num) 参数num: 传入int类型num,指定需要读取的行数,默认为-1,全部读取 返回list: 返回列表,列表中每一个元素代表一行数据,并且数据包含换行符`\n` 就像read没有参数时一样,readlines可以按照行的方式把整个文件中的内容进行一次性读取,并且返回的是一个列表,其中每一行的数据为一个元素 ~~~ #coding=utf-8 f = open('test.txt', 'r') content = f.readlines() print(type(content)) i=1 for temp in content: print("%d:%s"%(i, temp)) i+=1 f.close() ~~~ 输出 ![](https://box.kancloud.cn/0c6bfa25eaab39e3e3900e606cb70d87_393x192.png) ## 读数据(readline) 按行读取文件数据 data = f.readline(num) 传入num表示读取这一行多少个字节数据,如果不传递,默认为-1,表示读取当前行所有数据 ~~~ #coding=utf-8 f = open('test.txt', 'r') content = f.readline() print("1:%s"%content) content = f.readline() print("2:%s"%content) f.close() ~~~ ![](https://box.kancloud.cn/bb3734b5239617c473fae939a84b2adc_395x72.png)