zoukankan      html  css  js  c++  java
  • [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)的,但是一直都显示没有这一行,奇怪了

    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

    完全正确了。

    补充内容

    关于unicode ansi等概念,在谈谈Unicode编码,简要解释UCS、UTF、BMP、BOM等名词这篇博文里面作者有讲的非常详细,不再赘述。 

  • 相关阅读:
    js笔记4
    js笔记3
    js笔记2
    js笔记1
    前端笔记13
    (7)第3章的开始
    (6)第2章的尾巴~
    (5)自定义数据结构再探
    我的学习方法(6)
    (4)自定义数据结构初探
  • 原文地址:https://www.cnblogs.com/sunny-li/p/8697956.html
Copyright © 2011-2022 走看看