返回顶部
首页 > 资讯 > 后端开发 > Python >50. Python 数据处理(1)
  • 506
分享到

50. Python 数据处理(1)

数据处理Python 2023-01-31 05:01:00 506人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

今天开始往后都,用python3来写脚本1.csv数据处理csv文件格式:逗号分隔符(csv),有时也称为字符分隔值,因为分隔字符也可以不是逗号,其文件以纯文本的形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须像二

今天开始往后都,用python3来写脚本

1.csv数据处理

csv文件格式:

逗号分隔符(csv),有时也称为字符分隔值,因为分隔字符也可以不是逗号,其文件以纯文本的形式存储表格数据(数字和文本)。

纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。

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或者类似软件打开,样子都是我们常见的表格形式。


平常我们取文件内的数据存入列表一般用以下方法:

import codecs
lineText = list()
with codecs.open("sl_original_live.csv",encoding="utf-8") as f:
    for line in f.readlines():
        print (line.split(","))			#以列表形式,打印每一行的数据。
        lineText.append(line.split(","))
    print (lineText)				#把上面所有行作为元素数据,存入一个列表中。



csv模块用法,使用模块来处理数据:

import codecs
import csv
fileName = "sl_original_live.csv"
with codecs.open(fileName) as fcsv:
    linecsv = csv.reader(fcsv)
    rows = [row for row in linecsv]
    print (rows)

以上了解即可。



2.excel数据处理

python 提供有第三方库来支持excel的操作,Python处理excel文件用的第三方模块库,有xlrd、xlwt、xluntils和pyExcelerator,

除此之外,python处理excel还可以用win32com和openpyxl模块.

我们主要用xlrd、xlwt、xluntils这三个模块,pyExcelerator模块偶尔也会用:

pip install xlrd
pip install xlwt
pip install xlutils
pip install pyExcelerator

xlrd 只能进行读取excel文件,没法进行写入文件;

xlwt 可以写入文件,但是不能在已有的excel的文件上进行修改;

xluntils 可以在已有的excel文件上进行修改;

pyExcelerator 与xlwt类似,也可以用来生成excel文件


读取表单数据:

举例:按行取数据

import xlrd
def readExcel():
    data = xlrd.open_workbook('test.xlsx')
    table = data.sheets()[0] 		# 打开第一张表
    nrows = table.nrows 			# 获取表的行数
    for i in range(nrows): 			# 循环逐行打印
        print(table.row_values(i))		#通过row_values来获取每行的值
        
if __name__ == '__main__':
    readExcel()


举例:按竖列取数据

import xlrd
data = xlrd.open_workbook("whsc.xlsx")
table2 = data.sheet_by_name("域名")  		#sheet标签页的名称
for col in range(table2.ncols):
    print (table2.col_values(col))


举例:创建新的并写入excel文件(xlwt无法修改原有文件)

import xlwt
excel = xlwt.Workbook()
#创建3个表
sheet1 = excel.add_sheet("sheet1")
sheet2 = excel.add_sheet("sheet2")
sheet3 = excel.add_sheet("sheet3")
#只在第一个表sheet1里写数据,如下:
sheet1.write(0,0,"hello world1", cell_overwrite_ok=True)
sheet1.write(1,0,"hello world2", cell_overwrite_ok=True)
sheet1.write(2,0,"hello world3", cell_overwrite_ok=True)
#第一个是行,第二个是列,第三个是内容,第二个参数用来确认同一个cell单元是否可以重设值。
excel.save("hello.xlsx")
print("创建hello.xlsx完成")

效果如下:

image.png


举例:字体效果

使用样式,字体类型、加粗等效果:

import xlwt
excel = xlwt.Workbook()
#创建3个表
sheet1 = excel.add_sheet("sheet1")
sheet2 = excel.add_sheet("sheet2")
sheet3 = excel.add_sheet("sheet3")
#初始化样式
style = xlwt.XFStyle()
#为样式创建字体
font = xlwt.Font()
font.name = 'Times New Roman'	#指定字体名称
font.bold = True				#是否加粗
#设置样式的字体
style.font = font
#使用样式
sheet3.write(0,1,'some bold Times text',style)
#保存该excel文件,有同名文件时直接覆盖
excel.save('hello.xlsx')
print('创建hello.xlsx文件完成!')

效果如下:

image.png



举例:处理超链接

import codecs
import xlwt
book = xlwt.Workbook()
sheet_index = book.add_sheet('index')
line=0
for i in range(9):
    link = 'HYPERLINK("{0}.txt", "{1}_11111")'.fORMat(i, i)
    #{0}.txt是要链接的文件,{1}_11111是链接文件的内容
    sheet_index.write(i, 0, xlwt.Formula(link))
    #第一个行号,第二个列号,第三个是写入内容link,内容里面超链接
book.save('simple2.xlsx')
for i in range(0, 9):
    file = str(i) + ".txt"
    with codecs.open(file, 'w') as f:
        f.write(str(i)*10)

效果如下:

image.png


3.html文件转化成pdf文件

转换成pdf的三种方法:

在工作中,会遇到把html文件转换成pdf文件

python给我们提供了pdfkit这个模块,直接安装使用就可以了

下面就下来介绍一个pdfkit模块的几种用法

首先,我们安装该模块:

pip install pdfkit


1.网页转换成pdf(直接把url转换成pdf文件)

import pdfkit
pdfkit.from_url('Http://Google.com', 'out1.pdf')

2. Html转换成pdf

import pdfkit
pdfkit.from_file('test.html', 'out2.pdf')

3. 字符串转换成pdf

import pdfkit
pdfkit.from_string('Hello lingxiangxiang!', 'out3.pdf')

三种方法简单例子:

import pdfkit
pdfkit.from_file("hello.html", 1.pdf)
pdfkit.from_url("www.baidu.com", 2.pdf)
pdfkit.from_string("hello world", 3.pdf)

即可生成pdf文件~


举例:

抓取aming的linux教程,然后制作成pdf文件

先抓取每个的网页,然后生成pdf文件

(1)查看网页源代码

image.png


(2)查看源代码内容

image.png

和url对应规律

http://www.apelearn.com/study_v2/chapter2.html

http://www.apelearn.com/study_v2/chapter5.html

http://www.apelearn.com/study_v2/chapter7.html

... ...


通过 https://regex101.com/ 正则网站,把需要的字段给过滤出来

image.png


代码如下(未封装,回头有空封装一下):

import os
import re
import pdfkit
import requests

if not os.path.exists("aminglinux"):
    os.mkdir("aminglinux")

os.chdir("aminglinux")

url = "http://www.apelearn.com/study_v2/"
s = requests.session()
text = s.get(url).text
reg = re.compile(r'<li class=\"toctree-l1\"><a class=\"reference internal\" href=\"(.*)\">.*<\/a><\/li>')
result = reg.findall(text)
res = list(set(result))

for i in res:
    purl = "{0}{1}".format(url, i)
    print (purl)
    pdfFileName = i.replace("html", "pdf")
    print (pdfFileName)
    config = pdfkit.configuration(wkhtmltopdf=r"C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe")
    try:
        pdfkit.from_url(purl, pdfFileName, configuration=config)
    except:
        continue


执行结果:

image.png

--结束END--

本文标题: 50. Python 数据处理(1)

本文链接: https://lsjlt.com/news/189088.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 50. Python 数据处理(1)
    今天开始往后都,用python3来写脚本1.csv数据处理csv文件格式:逗号分隔符(csv),有时也称为字符分隔值,因为分隔字符也可以不是逗号,其文件以纯文本的形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须像二...
    99+
    2023-01-31
    数据处理 Python
  • 1.sql数据处理问题
    1.查询出每门课都大于 80 分的学生姓名create table test2( id int not null auto_increment, ...
    99+
    2024-04-02
  • Python小屋笔记——编程自测1-50
    1. 计算并返回任意正整数n的阶乘,也就是从1到n所有正整数的乘积。 (或参考10.) def main(n): s = 1 for i in range(2,n+1): s = s*i return s ...
    99+
    2023-10-28
    python 学习
  • python 数据库处理
    # -*- coding:utf-8 -*- #!/bin/env python ''' #Auth:karl #Function: ...
    99+
    2024-04-02
  • python数据预处理
    Ⅰ.数据源 Ⅱ.导入库 import pandas as pdimport numpy as npfrom scipy import statsimport matplotlib.pyplot a...
    99+
    2023-09-21
    python 数据分析
  • python处理svg数据
    我感觉python不能直接处理svg格式,所以想把它转化为png数据。 昨天搞了一天,把svg转化为png格式,网上有专门的python插件,百度搜...
    99+
    2023-01-31
    数据 python svg
  • 50 行 Python 代码制作一个数据大屏!
    PywebIO介绍Python当中的PywebIO模块可以帮助开发者在不具备HTML和JavaScript的情况下也能够迅速构建Web应用或者是基于浏览器的GUI应用,PywebIO还可以和一些常用的可视化模块联用,制作成一个可视化大屏。我...
    99+
    2023-05-14
    代码 工具 Python
  • python数据处理详情
    目录一,前言二,python模块2.1,增加停用词表2.2,顺序读取2.3,lambda函数三,运行3.1,存入文件一,前言 我们现在拿到了一个十分庞大的数据集。是json文件,里面...
    99+
    2024-04-02
  • 51. Python 数据处理(2)
    1.Python 修改excel文件import xlrd import xlutils.copy excelr = xlrd.open_workbook("hello.xlsx") excelw = xlutils.copy.copy(e...
    99+
    2023-01-31
    数据处理 Python
  • python数据分析系列(1)
    目录 python基础 python语言基础 Ipython的一些特性 Python语法基础 Python控制流 ...
    99+
    2023-01-31
    系列 数据 python
  • Python如何处理大数据?
    Python如何处理大数据? 在现代数据处理技术中,大数据处理是一个非常重要的领域。Python作为一种高效、易学、易用的编程语言,也在大数据处理领域中占据着重要的地位。Python可以通过多种方式处理大数据,包括使用Python内置库、第...
    99+
    2023-10-21
    http 大数据 对象
  • python怎么处理json数据
    在Python中,可以使用json模块来处理JSON数据。以下是处理JSON数据的一些常见操作:1. 解析JSON数据:  ...
    99+
    2023-10-18
    python json
  • python处理二进制数据
    处理二进制数据离不开python的struct模块,struct理解上你可以把它理解为c语言的结构体,使用该模块的pack和unpack方法,可以很容易的把二进制数据转换为常用的类型数据,如整型、字符型等 结构体如下: str...
    99+
    2023-01-31
    二进制数 python
  • Python能否处理大数据?
    Python是一门广泛使用的编程语言,其简洁、易学、跨平台等特性,使其成为了数据科学家和工程师的首选语言之一。然而,面对大数据处理,Python能否胜任呢?本文将探讨Python在处理大数据方面的优势和局限性。 Python处理大数据的优势...
    99+
    2023-10-28
    http 大数据 自然语言处理
  • Python数据处理-导入导出excel数据
    目录一.xlwt库将数据导入Excel1.将数据写入一个Excel文件2.定制Excel表格样式3.元格对齐4.单元格的背景色5.单元格边框二、xlrd库读取Excel中的数据1.读...
    99+
    2024-04-02
  • 数据库知识点整理1
    一、基础概念   关系型数据库:利用二维表来保存数据。   关系模型由关系数据结构、关系操作集合、关系完整性约束三部分组成。实体:现实世界中客观存在并可以被区别的事物...
    99+
    2024-04-02
  • Python中怎么处理大数据
    本篇文章为大家展示了Python中怎么处理大数据,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。import pandas as pd import ...
    99+
    2023-06-16
  • python怎么处理表格数据
    Python 可以使用多种库来处理表格数据,其中最流行的是 pandas 库。使用 pandas 可以读取、处理和分析表格数据。下面...
    99+
    2023-09-15
    python
  • python数据处理实例分析
    今天小编给大家分享一下python数据处理实例分析的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一,前言我们现在拿到了一个十...
    99+
    2023-06-30
  • python如何处理SQLite数据库
    本篇内容主要讲解“python如何处理SQLite数据库”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python如何处理SQLite数据库”吧!一、安装pip3 install&nb...
    99+
    2023-06-29
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作