1. 读取TXT文件

CODE                                  CUR      PRV.   CLOSING RATE   HIGH    LOW  CLOSING   SHARES TRADED      TURNOVER ($)
代號 NAME OF STOCK 股票名稱 貨幣 前收市 BID 買 ASK 賣 最高 最低 收市 成交股數 成交金額 1 CKH HOLDINGS 長和       HKD 97.75 97.65 97.70 98.20 96.80 97.70 4,897,314 477,590,424
2 CLP HOLDINGS 中電控股     HKD 81.75 81.75 81.80 81.95 81.40 81.80 1,879,859 153,694,750
3 HK & CHINA GAS 香港中華煤氣   HKD 15.50 15.54 15.56 15.56 15.46 15.56 6,453,513 100,156,136
4 WHARF HOLDINGS 九龍倉集團    HKD 66.75 66.20 66.25 67.40 65.75 66.20 3,570,649 236,841,815
* 5 HSBC HOLDINGS 匯豐控股     HKD 64.45 66.35 66.40 66.85 64.45 66.35 63,135,377 4,157,578,926
6 POWER ASSETS 電能實業     HKD 70.05 70.60 70.65 70.75 69.90 70.65 4,798,590 337,927,261
7 HOIFU ENERGY 凱富能源     HKD 0.99 0.91 0.93 0.99 0.92 0.93 11,472,000 10,929,920
8 PCCW 電訊盈科     HKD 4.36 4.37 4.38 4.39 4.36 4.38 3,286,937 14,387,633
9 NINE EXPRESS 九號運通     HKD 0.33 0.32 0.33 0.33 0.32 0.33 3,186,000 1,035,420

今天的目标的读取内容像上面一样格式的TXT文件。有以下几种方式:

1)按行读取

f = open('/home/luowang/python_script/data/0.txt', 'rU')
lines = f.readlines()#读取全部内容
print type(lines)
print lines[1].decode('gbk')

运行结果如下:

<type 'list'>
代號 NAME OF STOCK 股票名稱 貨幣 前收市 BID 買 ASK 賣 最高 最低 收市 成交股數 成交金額

注意:a. 按行读取返回的是list,而不是str。

b. 因为编码的不同,直接读取会乱码,这里将list中的元素按照它的编码格式进行了解码,然后打印输出就不会出错了。

c. 以‘rU’只读模式打开,其中的'U'表示忽略不同的换行符公约,因为这个公约因操作系统的不同而不同。

2)整体读取

f = open('/home/luowang/python_script/data/0.txt', 'r')
lines = f.read()#读取全部内容
print type(lines)
u=lines.decode('gbk')
print u

运行结果如下:

<type 'str'>
CODE CUR PRV. CLOSING RATE HIGH LOW CLOSING SHARES TRADED TURNOVER ($)
代號 NAME OF STOCK 股票名稱 貨幣 前收市 BID 買 ASK 賣 最高 最低 收市 成交股數 成交金額 1 CKH HOLDINGS 長和       HKD 97.75 97.65 97.70 98.20 96.80 97.70 4,897,314 477,590,424
2 CLP HOLDINGS 中電控股     HKD 81.75 81.75 81.80 81.95 81.40 81.80 1,879,859 153,694,750
3 HK & CHINA GAS 香港中華煤氣   HKD 15.50 15.54 15.56 15.56 15.46 15.56 6,453,513 100,156,136
4 WHARF HOLDINGS 九龍倉集團    HKD 66.75 66.20 66.25 67.40 65.75 66.20 3,570,649 236,841,815
* 5 HSBC HOLDINGS 匯豐控股     HKD 64.45 66.35 66.40 66.85 64.45 66.35 63,135,377 4,157,578,926
6 POWER ASSETS 電能實業     HKD 70.05 70.60 70.65 70.75 69.90 70.65 4,798,590 337,927,261
。。。。。。

显然,直接读取,得到的是一个很长的字符串。

未完待续。。。

用Python读取文件的更多相关文章

  1. python 读取文件时报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illegal multibyte sequence

    python读取文件时提示"UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illegal m ...

  2. 解决 python 读取文件乱码问题(UnicodeDecodeError)

    解决 python 读取文件乱码问题(UnicodeDecodeError) 确定你的文件的编码,下面的代码将以'utf-8'为例,否则会忽略编码错误导致输出乱码 解决方案一 with open(r' ...

  3. python 读取文件read.csv报错 OSError: Initializing from file failed

    小编在用python 读取文件read.csv的时候 报了一个错误 OSError: Initializing from file failed 初始化 文件失败 检查了文件路径,没问题 那应该是我文 ...

  4. python 读取文件时报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illegal multib

    python 读取文件时报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illegal multib ...

  5. Python 读取文件中unicode编码转成中文显示问题

    Python读取文件中的字符串已经是unicode编码,如:\u53eb\u6211,需要转换成中文时有两种方式 1.使用eval: eval("u"+"\'" ...

  6. python读取文件首行和最后一行

    python读取文件最后一行两种方式 1)常规方法:从前往后依次读取 步骤:open打开文件. 读取文件,把文件所有行读入内存. 遍历所有行,提取指定行的数据. 优点:简单,方便 缺点:当文件大了以后 ...

  7. python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件

    python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 python操作txt文件中 ...

  8. 【python】python读取文件报错UnicodeDecodeError: 'gbk' codec can't decode byte 0xac in position 2: illegal multibyte sequence

    python读取文件报错UnicodeDecodeError: 'gbk' codec can't decode byte 0xac in position 2: illegal multibyte ...

  9. python 读取文件时报错: UnicodeDecodeError: 'gbk' codec can't decode byte 0xa4 in position 127: illegal multibyte sequence

    UnicodeDecodeError: 'gbk' codec can't decode byte 0xa4 in position 127: illegal multibyte sequence p ...

  10. Python读取文件编码及内容

    Python读取文件编码及内容 最近做一个项目,需要读取文件内容,但是文件的编码方式有可能都不一样.有的使用GBK,有的使用UTF8.所以在不正确读取的时候会出现如下错误: UnicodeDecode ...

随机推荐

  1. Django与缓存

    我们都知道Django建立的是动态网站,正常情况下,每次请求过来都经历了这样一个过程: 接收请求 -> url路由 -> 视图处理 -> 数据库读写 -> 视图处理 -> ...

  2. SpringBoot整合Graylog3.0

    Graylog简介 Graylog是一个开源的完整的日志管理工具,功能和ELK类似,安装部署更方便. 官方网站 https://www.graylog.org 搭建 使用docker快速搭建 参考 h ...

  3. es6 export 和export default的区别

    区别 export 每个文件中可使用多次export命令 import时需要知道所加载的变量名或函数名 import时需要使用{},或者整体加载方法 export export default 每个文 ...

  4. easyUI tree 自定义图标

    文章转载自: https://blog.csdn.net/zhlantian/article/details/52913115 近期由于项目中需要使用easyui tree树形列表,并在系统中动态配置 ...

  5. eclipse 配置打开工作空间

    转载自: https://www.cnblogs.com/qq1871707128/p/6093860.html 首先得有eclipse 一.在eclipse的菜单栏中点击 Run -->Ext ...

  6. mac软件

    1. http://www.ifunmac.com/ 2.Mac安装软件时提示已损坏的解决方法 http://www.jianshu.com/p/3d04a2292fcd 3.mac以后有时间在装的软 ...

  7. 自定义广播(BroadcastReceiver)事件 --Android开发

    本例演示自定义广播事件.我们需要做的是,在主活动中写发送广播的代码,然后在接收广播的类中写接收广播的代码. 1.主活动中点击按钮后发送广播 MainActivity.java: public clas ...

  8. Entity Framework 学习

    Entity Framework 学习初级篇1--EF基本概况 Entity Framework 学习初级篇2--ObjectContext.ObjectQuery.ObjectStateEntry. ...

  9. hihocoder-1419 后缀数组四·重复旋律4 求连续重复次数最多的子串

    对于重复次数,如果确定了重复子串的长度len,那重复次数k=lcp(start,start+len)/len+1.而暴力枚举start和len的复杂度是O(n^2),不能接受.而有一个规律,若我们只枚 ...

  10. vux 给元素动态添加css

    <template> <div class="jdtI" :style="{styleObj}"></div> </t ...