Python小技巧:打印出来的文本文档中间有空格

问题描述:

在file.txt中存了内容如下

AAAAAA

BBBBBB

CCCCCC

然后采用python显示,发现显示出来的是这样的

A A A A A A

B B B B B B

C C C C C C

Why?

Code如下

本意是想在文本文档中寻找某一行(CCC)的,但是一直都显示没有这一行,奇怪了

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子
'''
import io
import os

search_for_this_line = 'CCC'

inf_file = io.open("C://file.txt", mode = 'r+')
lines = inf_file.readlines()
index_temp = 0

for line in lines:
    index_temp = index_temp + 1
    print line
    if search_for_this_line in line:
        print "FOUND IT !!!"
        break

inf_file.close()

后来发现,file.txt其实是unicode的utf-16(16bit for one character)的格式,而python默认open为ANSI(single byte for one character)的格式,所以就会有上面这个问题,将开始open那一行稍微修改,将encoding的方式传进去

inf_file = io.open("C://file.txt", mode = 'r+',encoding = 'utf-16')

就可以找到CCC这一行啦

打印出来也是

AAAAAA

BBBBBB

CCCCCC

完全正确了。

猜你喜欢

转载自blog.51cto.com/14246112/2456140