python函数处理文件 python 处理文件( 五 )


pointer+=8 #指针跳过已读取的字符
string+=str1
print('再取8个字符: ',str1)
print('所有读取的字符: ',string)
print('当前指针所处的位置: ',pointer)
str1=file.read(1)
print('当前指针所处的字符: ',str1)
运行结果如下:
取6个字符:
Python
再取8个字符:
是一种解释型语言
所有读取的字符:
Python是一种解释型语言
当前指针所处的位置:
14
当前指针所处的字符:

3、读取一行数据readline()方法
语法格式:
file.readline()
例:
with open('test.txt','r',encoding='utf-8') as f:
string=f.read(1) # 读取文件的第一个字符
if string != '': # 防止文件为空文件
lineno=0
while True:
line=f.readline()
if line != '':
lineno+=1
print('第'+str(lineno)+'行:'+line,end='')
# 因为每行都有自带的分行符,print()语句不允许换行
else:
break # 出现空行时停止读取
else:
print('要读取的文件为空文件!')
运行结果:
第1行:ython是一种解释型语言: 这意味着开发过程中没有了编译这个环节 。类似于PHP和Perl语言 。
第2行:Python是交互式语言: 这意味着,您可以在一个 Python 提示符后直接执行代码 。
第3行:Python是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术 。
第4行:Python是初学者的语言:Python 对初级程序员而言,是一种伟大的语言 , 它支持广泛的应用程序开发 。
4、读取全部行命令readlines()方法
语法格式:
File.readlines()
该方法与read()方法一样,在调用read()方法读取文件内容时,文件必须是以r(只读)或者r+(读写)方式打开 。
例:
with open('test.txt','r',encoding='utf-8') as f:
txt=f.readlines()
print(txt)
运行结果:
['Python是一种解释型语言: 这意味着开发过程中没有了编译这个环节 。类似于PHP和Perl语言 。', 'Python是交互式语言: 这意味着 , 您可以在一个 Python 提示符后直接执行代码 。', 'Python是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术 。', 'Python是初学者的语言:Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发 。']
从上面的运行结果可以看出 , readlines()方法的返回值为一个字符串列表 。所以,也可以以读取列表元素的方法输出 。如下所示:
with open('test.txt','r',encoding='utf-8') as f:
txt=f.readlines()
for line in txt:
print(line,end='')
运行结果:
Python是一种解释型语言: 这意味着开发过程中没有了编译这个环节 。类似于PHP和Perl语言 。
Python是交互式语言: 这意味着,您可以在一个 Python 提示符后直接执行代码 。
Python是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术 。
Python是初学者的语言:Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发 。
15.5 写入文件内容
语法格式如下:
file.write(string)
其中 , file为打开的文件对象,string为要写入的字符串 。
写入文件内容时,文件必须以w(可写)或a(追加)模式打开 。否则,会抛出如下异常提示:
Traceback (most recent call last):
File "C:UsersAdministratorAppDataLocalProgramsPythonPython383.py", line 2, in
f.write('人生苦短,我用Python!')
io.UnsupportedOperation: not writable

推荐阅读