1
2
3
4
5
6
7
8
9
10
11
12
13
|
陈皓:没写完~ 苗子瑾:第五个没写完 陈皓:第六个 陈皓:一遇到数学就蒙 苗子瑾:想想就头疼 苗子瑾:等我回宿舍交作业吧…… 周愉:看见那个绿色的灯了么 周愉:全灭了我就到家了 陈皓:我家网络出门题了 陈皓:刚给联通打完电话,效率问题~ 陈皓:效率问题 苗子瑾:这个图打不开 苗子瑾:这个图 |
1.有以上文件record.txt,将此文件三人对话每个人的内容单独保存一个文件,并每个文件中不包含对话人名
with open('record.txt',encoding= 'utf - 8') as ff: while True: line1 = ff.readline( ) if line1 == '': break list1 = line1.split(':') print(list1[1]) data1 = list1[1] if list1 [0] == '陈皓': with open('text4',encoding= 'utf - 8',mode= 'a+') as zz: zz.write(data1 ) elif list1 [0] =='苗子瑾': with open('text2', encoding='utf - 8', mode='a+') as hh: hh.write(data1) elif list1[0] =='周愉': with open('text3', encoding='utf - 8', mode='a+') as ii: ii.write(data1)
2.读入用户输入的文件的路径和一个字符串和行数,将文件中的第n行行首插入用户输入的字符串
import sys l = sys.argv def cr(luj , num , tex): num = int(num ) with open(luj ,mode= 'r+',encoding= 'utf - 8') as ff: for i in range(num - 1): ff.readline() aa = ff.tell() text1 =ff.readlines() text1 = ''.join(text1) print(text1) ff.seek(aa) ff.write( tex ) ff.seek(0, 1) ff.write(text1) cr(l[1],l[2],l[3])
3.下面只有一种方式不能打开文件,请尝试,并说明原因?
01. f = open('E:/test.txt', 'w')
02. f = open('E: est.txt', 'w')
03. f = open('E://test.txt', 'w')
04. f = open('E:\test.txt', 'w')
一个反斜杠对于python中有转义符的作用,比如 , ,所以报错,双反斜杠就是解决这个问题,或
者在路径前加上’r’避免这种问题
4.打开一个文件使用open()函数的时候,通过设置文件的打开方式,决定打开的文件具有哪些性质,请总结都有哪些方式,并说明区别
使用open打开时,有r,a,w三种分别为只读,只写,和在末尾写。+号为读写模式,
r+模式打开时该文件必须存在,可以指定位置,w+则是会清空原来的内容,a+默认是在最后添加
b是二进制文件,r+b就是以二进制读写模式打开。
5.如何将一个文件对象f中的数据存放到列表中
在进行读时采用readlines(),并将这个值赋给一个变量,这个变量指
向的就是对象f中数据以列表的格式
6.如果得到文件对象f的每一行数据,尝试使用多种方法
a = int(input('请输入第几行')) with open('f') as ff: aa = ff.readlines() print(aa[a-1]) a = int(input('输入第几行:')) with open ('f') as ff: for i in range(a - 1): ff.readline() print(ff.readline())