Python学习_29 数据处理


Python学习_29  数据处理
1、csv数据处理
Csv文件格式:
逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。通常,所有记录都有完全相同的字段序列。
如下格式:
27,20,14,15,14,12,94,64,37,1015,1013,1009,7,5,2,21,8,35,0.00,,,152
.csv文件可以直接用excel或者类似软件打开
创建一个test_cxv.cxv文件,注意默认用excel创建的格式是不是utf-8,所以用记事本创建,用“,”分割,然后保存格式是csv格式,操作代码如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2018\6\9 0009 0:05
# @Author  : xiexiaolong
# @File    : demon_cvs.py
import csv
filename = "test_csv.csv"
with open(filename, "r", encoding="utf-8") as f:
    text = csv.reader(f)
    for line in text:
        print(line)
        for i in line:
            print(i)
分析: print(line) 打印每一行,输出格式是list,如果要打印每个单元格,需要再循环一次
以上也可以用直接打开文件的方式,用“,”分割打印
with open(filename, "r", encoding="utf-8") as f:
    for line in f:
        for i in line.split(","):
            print(i.split())
2、excel数据处理
pytho提供有第三方库支持的对excel的操作,有xlrd,xlwt,xluntils和pyExcelerator
首先也是要安装模块
pip install xlrd
pip install xlwt
pip install xluntils
pip install pyExcelerator
4个模块的区别:
xlrd            只能读取文件
xlwt            只能写入,不能修改
xluntils        可以修改
pyExcelerator    和xluntils类似,可以用来生成excel文件
代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2018\6\9 0009 0:41
# @Author  : xiexiaolong
# @File    : test_excel.py
import xlrd
data = xlrd.open_workbook("1036_tomcat.xls")
table = data.sheets()[0]
rows = table.nrows  # 行
cols = table.ncols  # 列
print("行数:{0}".format(rows))  # 打印出多少行
print("列数:{0}".format(cols))  # 打印出多少列
print("按行打印:")
for i in range(rows):
    print(table.row_values(i))  # 按行打印,输出格式是list
print("按列打印:")
for j in range(cols):
    print(table.col_values(j))  # 按列打印,输出格式是list
print("按单元格打印:")
for row in range(rows):
    for col in range(cols):
        cell = table.cell_value(row, col)
        print(cell)  # 按照单元格输出,先行后列
结果:
D:\python\venv\Scripts\python.exe D:/python/0607/test_excel.py
行数:46
列数:6
按行打印:
['名称[(唯一 必填)]', 'IP', '主机[(必填)]', '端口', '描述', '应用系统']
['tomcat_bs_syf-fund-plat-oms_01', '10.10.3.154', ' OS-SYPAY-SYSFUND01-APP-10.10.2.154 ', 8001.0, ' 货币基金管理oms', '货币基金']
['tomcat_bs_syf-fund-plat-oms_02', '10.10.3.155', 'OS-SYPAY-SYSFUND02-APP-10.10.2.155', 8001.0, ' 货币基金管理oms', '货币基金']
['tomcat_bs_syf-fund-plat-oms_03', '10.10.3.156', 'OS-SYPAY-SYSFUND03-APP-10.10.2.156', 8001.0, ' 货币基金管理oms', '货币基金']
.
.
['  tomcat_bs_debit-front-ph_03', ' 10.120.103.59', 'OS-DBT-FRONT03-10.120.103.59', 8005.0, '货币基金鹏华大额通道', '货币基金']
按列打印:
['名称[(唯一 必填)]',......'货币基金', '货币基金', '货币基金']
按单元格打印:
名称[(唯一 必填)]
IP
主机[(必填)]
端口
描述
应用系统
tomcat_bs_syf-fund-plat-oms_01
10.120.23.154
.
.
.
货币基金
Process finished with exit code 0
创建excel并写入内容
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2018\6\9 0009 1:16
# @Author : xiexiaolong
# @File : test_excel2.py
import xlwt
workbook = xlwt.Workbook()
sheet1 = workbook.add_sheet( "test1" , cell_overwrite_ok = True )
sheet1.write( 0 , 0 , "hello1" )
sheet1.write( 0 , 1 , "hello2" )
sheet1.write( 1 , 2 , "hello3" )
sheet1.write( 1 , 3 , "hello4" )
sheet1.write( 1 , 4 , "hello5" )
workbook.save( "testwrite.xls" )
print ( "creat ok" )
3、pdf文件处理
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2018\6\9 0009 1:23
# @Author : xiexiaolong
# @File : pdf.py
import pdfkit
pdfkit.from_url( "https://www.jd.com" , 'jdindex.pdf' )
生成pdf文件,需要提前安装一个驱动文件wkhtmltopdf
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值