用Python读取文件
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读取文件的更多相关文章
- 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 ...
- 解决 python 读取文件乱码问题(UnicodeDecodeError)
解决 python 读取文件乱码问题(UnicodeDecodeError) 确定你的文件的编码,下面的代码将以'utf-8'为例,否则会忽略编码错误导致输出乱码 解决方案一 with open(r' ...
- python 读取文件read.csv报错 OSError: Initializing from file failed
小编在用python 读取文件read.csv的时候 报了一个错误 OSError: Initializing from file failed 初始化 文件失败 检查了文件路径,没问题 那应该是我文 ...
- 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 ...
- Python 读取文件中unicode编码转成中文显示问题
Python读取文件中的字符串已经是unicode编码,如:\u53eb\u6211,需要转换成中文时有两种方式 1.使用eval: eval("u"+"\'" ...
- python读取文件首行和最后一行
python读取文件最后一行两种方式 1)常规方法:从前往后依次读取 步骤:open打开文件. 读取文件,把文件所有行读入内存. 遍历所有行,提取指定行的数据. 优点:简单,方便 缺点:当文件大了以后 ...
- python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件
python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 python操作txt文件中 ...
- 【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 ...
- 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 ...
- Python读取文件编码及内容
Python读取文件编码及内容 最近做一个项目,需要读取文件内容,但是文件的编码方式有可能都不一样.有的使用GBK,有的使用UTF8.所以在不正确读取的时候会出现如下错误: UnicodeDecode ...
随机推荐
- 清华镜像方法更新python包
来自:Jinlong_Xu cmd环境下执行: conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pk ...
- ZZNUOJ 2022 摩斯密码
map打表存一下对应的密码 不会map感觉不好弄这题 #include<stdio.h> #include<string.h> #include<math.h> ...
- [osg][osgEarth][原]基于OE自定义自由飞行漫游器(第二版)
在初级版上,进行新的漫游方式调整 头文件: #pragma once //南水之源 20180101 #include <osgGA/CameraManipulator> #include ...
- fileInputStream.available()获取 文件的总大小
available():返回与之关联的文件的字节数 我们用inputStream.available()获取 文件的总大小
- Linux 各种软件的安装-tomcat8+JDK篇
其实自己没搞过php,主要还是弄java,tomcat和java是必不可少的 首先安装JDK,注意linux和winodws的jdk完全不同,别下载错了. 先 yum update 把软件更新一下 j ...
- C#读取text内容并且于testbox中展现 保留换行实现方法
直接上代码 //新建一个储存的list List<string> listLines = new List<string>(); StreamReader sr = new S ...
- 安装adt插件后工具栏不显示android相关图标
一:问题 安装好ADT后,工具栏不显示android相关的图标: 二:解决办法 这是ec设置问题,解决办法: Eclipse ->window->Perpective->custom ...
- 【转】 详解C中volatile关键字
转自: http://www.cnblogs.com/yc_sunniwell/archive/2010/06/24/1764231.html volatile提醒编译器它后面所定义的变量随时都有可能 ...
- eQTL | Expression quantitative trait loci | 数量性状位点 | 表达数量性状基因座
一篇通俗的文章:eQTL Expression quantitative trait loci (eQTLs) are genomic loci that explain all or a fract ...
- 使用validate()方法进行输入校验 --Struts2框架
服务器端的输入校验包含两种方式:硬编码方式和配置文件方式.本文演示硬编码方式中使用validate()方法进行输入校验. 1.项目目录结构: 2.项目核心代码: BookAction.java: pu ...