python之文件的读写(文本文档,log文件)
1 #文件打开方式,文件打开是有返回值的 2 #open函数 3 # file_object = open(file_name,access_mode='r') 4 #file_name 必填形参, access_mode='r' 变量 =值,缺省参数,传的话以传的为准,不传有默认值 5 6 # file_object -简写——fo,文件对象 7 # filedir = "D:/test.txt" #绝对路径 了解:相对路径就要要求路径下的文件要和py文件在同一个目录内 8 # filedir2 = "D:\\test.txt" # 或者写 \\ 两个斜杠 9 10 #打开文件,open 一般用于读取文本文档txt,和log 11 # filedir3 = r'D:\test.txt' #反斜杠的话,前面加个r 意思是取消转义 或者写 \\ 两个斜杠 12 # fo = open(filedir3) # open(file,"r") = open(file) ;fo = open(filedir3,'rb') rb模式 必须配合seek 1 模式 13 # print(fo) #打开文件 一定要文件真实存在,否则报错 14 #在文件本身一行后面默认是带有\n的 15 #文件内容读取 16 # print(fo.read(2)) #read里不填值表示读取全部,写的2是代表读取两位,读取返回值的是字符串类型 17 # print(fo.read(2)) 18 19 #文件指针位置查询——tell 20 # print("文件指针初始位置:",fo.tell()) 21 # #移动文件指针到目标处,可以指定位置进行读写 ——seek 方法 22 # fo.seek(2,0) # seek 0模式,绝对位置,从0开始 ,配套'r',处理文本文件,返回的是str类型 ;# 1模式 ,从当前位置开始,正数往右数,负数往左数 23 # #指针移动后的位置 24 # print("文件指针初始位置:",fo.tell()) 25 # #从第二位读文件,读取cde 26 # print(fo.read()) 27 28 #文件读取一行内容 29 # print(fo.readline().strip()) 30 # print(fo.readline()) 31 32 #文件读取多行内容 33 # print(fo.readlines()) 34 35 #如果是多行,要去掉里面的换行符 ,返回的是list,之前log 作业可以用 36 # print(fo.read().splitlines()) 37 38 #文件内容写入,把内容写到文件中 39 #场景,电商项目需要做性能测试,有个账号密码需要参数化,需要数据源 40 # 数据源来源:1.用SQL语句在数据库中找到导出 41 # 2、被告知账号密码有规律,可以根据规律自己造数据 账号范围:sql001-1000,固定密码:123456 42 43 fileDir = r'D:\test2.txt' 44 fo = open(fileDir,'w') 45 for one in range(0,1001): 46 #写 47 info = f'sql{one:0>},123456' 48 fo.write(info+'\n') 49 50 51 fo.close() 52 53 #写模式 w 模式 ,带有清空效果 54 # fileDir = r'D:\test2.txt' 55 # fo = open(fileDir,'w') #文件不存在的的话,会新创建,如果存在,原有文件里的内容会被清空 56 # fo.write("abcde")#写字符串进入文件, 57 # fo.flush() #如果需要存储,执行fo.flush,保存文件 58 # fo.close() #关闭--保存文件效果 59 60 #追加模式 a 模式,不会清空原有文件里的数据,会在原有数据后追加 61 # fileDir = r'D:\test3.txt' 62 # fo = open(fileDir,'a') #文件不存在的的话,会新创建,如果存在,会在原有数据后追加 63 # fo.write("CBD")#学字符串进入文件, 64 # fo.flush() #如果需要存储,执行fo.flush,保存文件 65 # fo.close() #关闭--保存文件效果 66 67 #拓展,r+ 模式,可读可写 w+ a+ 68 69 #with open() 用法 fileDir- 文件路径 'r' -读模式 70 # with open(fileDir,'r') as fo,open(fileDir2,'r') as fo2:#优势:可以自动调用close(自动保存效果),可以操作多个文件 71 # pass (上述文件的操作在缩进中进行)