Python瞎折腾[1]-读取txt文件

声明

测试环境:Python2.7
硬件环境:树莓派3B

最简单的读取

f = open('test.txt', 'r')  
    print f.read()

其中r表示读取模式,此外还有w,写入模式。a,追加模式。r+,读写模式。

实现逐行读取并输出

有三种方法

f = open("text.txt")
line = f.readline()
while line:  
    print line,  
    line = f.readline() 

f.close() 

调用了readline方法,逐行读取,逐行输出。

f = open("text.txt")
for line in f:  
    print line, 

将前面的循环语句改为for循环,更加简单。
第三种方法则调用readlines函数,从理论上说一次性把所有文本都读取出来了,会更节约能耗(不过也仅仅理论上,实际微乎其微)

实现中文的输出

如果仅仅读取英文,那以上方法足够。但应用在中文是就显得不太实用了。要么出现以下情况:

¾£½æ 30¿Ë^M
·À·ç 30¿Ë^M
Ǽ»î 30¿Ë^M
¶À»î 30¿Ë^M
´¨Üº 30¿Ë^M
²ñºú 30¿Ë^M
Ç°ºú 30¿Ë^M
½Û¹£è×¿Ç 30¿Ë^M
ÜòÜß 30¿Ë^M
¸Ê²Ý 15¿Ë

要么就直接输出ascii码。要实现中文的输出,一是Python编译环境要支持中文,二是输出格式要声明中文。
首先在最开头声明utf-8解释:

# -*- coding: utf-8 -*-

其次再输出时声明中文解码:

print line.decode("gb2312")

这样就基本实现了读取txt的功能

猜你喜欢

转载自blog.csdn.net/wangchangishere/article/details/72991081