Chinaunix首页 | 论坛 | 博客
  • 博客访问: 28925
  • 博文数量: 10
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 120
  • 用 户 组: 普通用户
  • 注册时间: 2013-06-14 11:23
文章分类

全部博文(10)

文章存档

2015年(2)

2014年(8)

我的朋友

分类: Python/Ruby

2014-11-26 20:26:33

>>> import os
>>> os.chdir("F:\\python_test")
>>> import xlrd
>>> book1 = xlrd.open_workbook("a5gta1.xls")
>>> sheet1 = book1.sheet_by_name(u"Sheet1")
>>> print sheet1.col_values(0)
[u'P1', u'A-gta133(5)', u'A-gta2(1)', u'A-gta103(3)', u'A-gta5(1)', u'A-gta7(2)', u'A-gta8(1)', u'A-gta197(5)', u'A-gta148(2)', u'A-gta122(3)', u'A-gta15(1)', u'A-gta19(2)', u'A-gta18(1)', u'A-gta20(1)', u'A-gta21(1)', u'A-gta23(1)', u'A-gta174(6)', u'A-gta189(2)', u'A-gta27(1)', u'A-gta175(2)', u'A-gta131(3)', u'A-gta163(3)', u'A-gta37(1)', u'A-gta38(2)', u'A-gta40(3)', u'A-gta41(1)', u'A-gta97(2)', u'A-gta238(3)', u'A-gta46(2)', u'A-gta48(1)', u'A-gta49(1)', u'A-gta53(3)', u'A-gta166(2)', u'A-gta55(3)', u'A-gta145(2)', u'A-gta194(2)', u'A-gta61(1)', u'A-gta62(1)', u'A-gta66(1)', u'A-gta69(3)', u'A-gta72(1)', u'A-gta75(2)', u'A-gta139(2)', u'A-gta81(1)', u'A-gta153(5)', u'A-gta234(2)', u'A-gta192(4)', u'A-gta92(1)', u'A-gta231(4)', u'A-gta96(1)', u'A-gta100(1)', u'A-gta101(1)', u'A-gta102(1)', u'A-gta105(1)', u'A-gta240(2)', u'A-gta243(2)', u'A-gta124(1)', u'A-gta125(1)', u'A-gta126(1)', u'A-gta127(1)', u'A-gta132(1)', u'A-gta222(2)', u'A-gta171(2)', u'A-gta149(1)', u'A-gta155(1)', u'A-gta156(1)', u'A-gta161(1)', u'A-gta162(1)', u'A-gta220(2)', u'A-gta168(1)', u'A-gta169(1)', u'A-gta170(1)', u'A-gta178(2)', u'A-gta181(1)', u'A-gta229(2)', u'A-gta183(1)', u'A-gta184(1)', u'A-gta190(2)', u'A-gta191(1)', u'A-gta225(2)', u'A-gta211(1)', u'A-gta212(1)', u'A-gta233(2)', u'A-gta217(1)', u'A-gta221(3)', u'A-gta226(1)', u'A-gta227(1)', u'A-gta236(1)', u'A-gta242(1)', u'A-gta244(1)', u'A-gta248(1)']
>>> a = sheet1.col_values(0)
>>> for i in a:
              print i.encode("utf-8")

python读取xls或csv文件 - 盛意兄弟 - 再见,旧时光


>>> for i in a:
           x = i.find("(")
           print i[x+1].encode("utf-8")

这样就能把括号中的数字全部打印出来了,可以用于进一步的分析。
 
如果数字是两位或三位数,用正则表达式匹配括号中内容
>>> import re
>>> for x in a:
            m = re.findall(r'(?<=\().+?(?=\))',x)
            for i in m:
                  print i.encode("utf-8")
 
求总数
>>> t = 0
>>> for x in a:
            m = re.findall(r'(?<=\().+?(?=\))',x)
            for i in m:
                  t += int(i.encode('utf-8'))
  
>>> print t

参考:http://www.cnblogs.com/lhj588/archive/2012/01/06/2314181.html

打开CSV文件
import StringIO,csv
data = StringIO.StringIO(file_obj.read())
try:
    reader = csv.reader(data)
except Exception,e:
    print str(e)           #使用return还是print ,都可以自定义。e是自定义的“提示信息”

最后再for循环reader这个列表,读出每个数据即可

转载自:
http://w432111.cool.blog.163.com/blog/static/328831842013517101826816/
阅读(1735) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~