自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 收藏
  • 关注

原创 自动化办公-os模块

os模块负责程序与操作系统的交互,提供了访问操作系统底层的接口,即此模块提供了丰富的方法来处理文件和目录。导入import os常用方法方法名作用os.remove(“path/flename”)删除文件os.rename(oldname, newname)重命名文件os.walk()生成目录树下的所有文件名os.chdir(“dirname”)改变目录os.mkdir/makedirs(“dirname”)创建目录/多层目录os.rmd

2022-05-23 21:14:43 171

原创 gevent模块-多协程异步

定义可以进行多个爬虫任务,当一个任务在执行中遇到等待,就先执行另一个任务,提高效率,节省时间。安装Pip install gevent使用from gevent import monkey#从gevent库里导入monkey模块monkey.patch_all()#monkey.patch_all()能把程序变成协作式运行,就是可以帮助程序实现异步import geventimport timeimport requests#导入gevent、time、requestsst

2022-02-17 17:03:11 239

原创 定时模块schedule

安装第三方库,安装方式pip install schedule用法import scheduleimport time#引入schedule和timedef job(): print("Working in progress...")#定义一个叫job的函数,函数的功能是打印'I'm working...'#部署情况schedule.every(10).minutes.do(job) #部署每10分钟执行一次job()函数的任务schedule.every()

2022-02-17 16:04:45 138

原创 selenium-程序指挥浏览器

简介一个强大的python库,可以用它控制浏览器,做出打开、输入、点击等动作。优点:1、遇到复杂验证码,如12306网站时,selenium可以让人工介入2、爬取加密复杂的动态网页时,可以等所有动态网页加载完毕,将其当作一个静态网页进行爬取缺点:需要时间和资源安装方法pip install selenium # Windows电脑安装seleniumpip3 install selenium # Mac电脑安装seleniumselenium的脚本可以控制所有常见浏览器的操作,在使

2022-02-15 14:21:33 242

原创 时间序列

日期和时间数据类型datetime是一个关于时间的库,常用的类有1、date类型,存储公历日期:年、月、日2、time类型,存储时间:时、分、秒3、datetime类型:存储日期时间日期类型的使用# 导入datetime模块import datetime# 创建日期date = datetime.date(2021, 4, 15)print(date)# 获取年print(date.year)# 获取月print(date.month)# 获取日print(date.day)

2021-04-15 21:36:31 209

原创 多层索引

目录多层索引的创建多层索引的取值多层索引的排序多层索引的创建# 多层索引series的创建import pandas as pds = pd.Series([1,2,3,4,5,6],index=[['张三','张三','李四','李四','王五','王五'], ['期中','期末','期中','期末','期中','期末']])# 张三一列是数据的第一层索引,期中一列是数据的第二层索引,而第二层索引值是和数据一一对应的。pri

2021-04-14 21:16:11 322

原创 数据的分组

目录数据的分组遍历分组按多列进行分组统计分组后的数据数据的分组Pandas提供了一个灵活高效的groupby功能,它能对数据集进行切片、切块、摘要等操作。DataFrame.groupby('列索引'), 分组后的结果为DataFrameGroupBy object,是一个分组后的对象。用groupby的size()方法可以查看分组后每组的数量,并返回一个含有各分组所包含数值数量的Series:print(groups.size())import pandas as pdimport random

2021-04-13 20:55:50 416

原创 数据的合并、筛选、排序

目录数据的合并concat()函数merge()函数数据的筛选根据某列的值进行筛选多条件的联合筛选数据的排序数据的合并数据合并主要包括下面两种操作:轴向连接(concatenation):pd.concat()可以沿一个轴将多个DataFrame对象连接在一起,形成一个新的DataFrame对象。融合(merging):pd.merge()方法可以根据一个或多个键将不同DataFrame中的行连接起来。concat()函数concat()函数可以将数据根据不同的轴作进行合并。我们先看一下conc

2021-04-09 21:35:52 417

原创 pandas数据的处理

目录删除数据删除空值删除数据空值的处理重复数据的处理删除数据删除空值如果文件的单元格中没有值时,在使用pandas读取后就会用NaN表示,也就是我们常说的空值。# 在NumPy模块中提供了nan的值,如果你想要创建一个空值,可以使用下方代码:from numpy import nan as NaN需要注意的是,NaN比较特殊点就是其本身是一种float类型数据。当NaN参与到数据计算中,最终的结果永远都是NaN。对于大批量的Series数据,使用肉眼很难判断空值的存在,这时我们可以先对空值进

2021-04-07 20:10:24 187 1

原创 pandas写入和读取数据

目录数据的写入写入csv写入excel数据的读取csv的读取excel的读取数据的写入写入csvcsv是最为常见的以纯文本文件存储数据文件的格式,它的优点是通用性很强,不受操作系统以及具体的软件的限制。import pandas as pddf_dict = { 'name':['ZhangSan','LiSi','WangWu','ZhaoLiu'], 'age':['18','20','19','22'], 'weight':['50','55','60','80']}df = pd

2021-04-06 20:40:30 240

原创 Series和DataFrame的属性和方法

目录Series常用属性和方法DataFrame数据的选择、遍历、修改常用属性与方法获取行列数据遍历Series常用属性和方法表格数据中的每一列或者每一行的数据结构都是Series,它可以看成是一维的表格数据。它可以属于DataFrame的一部分也可以作为一个独立的数据结构存在。其具有以下属性和方法:series.values —> 数据的值series.index —> 数据的索引series.items() —> 每对索引和值values、index、items返回的对象

2021-04-05 17:08:35 1075

原创 pandas简介

pandas模块简介数据结构Series的创建DataFrame的创建数据分析的流程:设定问题—》获取数据—》整理及清洗数据—》数据分析及可视化—》建立模型(预测性的分析)—》撰写报告简介Pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。Pandas提供了大量能使我们快速便捷地处理数据的函数和方法。作用:数据读写;数据整理;数据分析。利用Pandas进行数据操作、预处理、清洗是Py

2021-04-05 11:20:22 134

原创 邮件发送--smtplib模块

邮件发送原理发送纯文本文件发送HTML格式邮件原理SMTP (Simple Mail Transfer Protocol) 即简单邮件传输协议,是一组用于由源地址到目的地址传送邮件的规则,由它来控制新建的中转方式。发件箱–SMTP-》 你的服务器–SMTP-》 对方服务器 --IMAP-》 收件箱登陆邮件服务器 —》 构造符合邮件协议规则要求的邮件内容 —》 发送python有smtplib模块和email模块支持SMTP,email负责构造邮件,smtplib负责发送邮件,它对SMTP协议进行了

2021-04-04 20:34:30 482 1

原创 Excel处理-openpyxl模块

打开excel创建文件from openpyxl import Workbookwb = Workbook() # 实例化,在内存中中创建一个excel文件ws = wb.active # 获取当前活跃工作表print(ws.title) # 打印sheet表名ws.title = 'test' # 更改工作表名字wb.save('test.xlsx') # 保存文件Sheet打开已有文件from openpyxl import load_workbookwb2 = load_wo

2021-04-01 20:57:14 101

原创 random模块

random模块import randomrandom.randrange(1,10) # 返回1-10之间的一个随机数,不包括108random.randint(1,10) # 返回1-10之间的一个随机数,包括1010random.randrange(0,100,2) # 随机选取0-100之间的一个偶数70random.choice('dherher!!#@%') # 返回一个给定数据集合中的随机字符'h'random.random() # 返回一个随机浮点数0

2021-04-01 19:33:11 71

原创 sys与datetime模块

sys模块import sysprint(sys.path) # 获取系统环境变量['D:\\01Study\\02 Skills\\Working Skills\\python\\AUTO WORK', 'D:\\ANACONDA\\python37.zip', 'D:\\ANACONDA\\DLLs', 'D:\\ANACONDA\\lib', 'D:\\ANACONDA', '', 'D:\\ANACONDA\\lib\\site-packages', 'D:\\ANACONDA\\lib\\

2021-03-30 21:31:51 191

原创 os模块

目录标题目录操作os模块操作目录相关函数os.path模块操作目录相关函数案例目录操作os模块是python内置的与操作系统功能和文件系统相关的模块,该模块中的语句的执行结果通常与操作系统有关,在不同的操作系统上运行,得到的结果可能不太一样。os模块与os.path模块用于对目录或文件进行操作import osos.system('notepad.exe') # 调用记事本os.system('calc.exe') # 调用计算器# 直接调用可执行文件os.startfile('文件路径'

2021-03-25 20:21:44 182

原创 文件操作及csv模块

编码格式python的解释器使用的是Unicode(内存).py文件在磁盘上使用UTF-8存储(外存)编码encode就是把人类语言转成计算机语言。解码decode就是把计算机语言转成人类语言。计算机语言有一个相同之处,就是最前面都有一个字母‘b’,这是代表它是bytes(字节)类型的数据。计算机的编码,就是把字符串类型的数据,转换成bytes类型的数据。计算机的解码,就是把bytes类型的数据,转换成字符串类型的数据。编码时用什么样的编码表,解码的时候就用什么样的编码表。文件读写的原理文件

2021-03-24 21:03:28 210

原创 模块

模块一个.py文件就是一个模块,包含函数、类、语句。好处:1、方便其他程序和脚本的导入并使用;2、避免函数名和变量名冲突;3、提高代码的可维护性和可重用性。创建模块新建一个.py文件,名称尽量不要与python自带的标准模块名称相同;导入模块import 模块名称 as [别名]from 模块名称 import 函数/变量/类import mathprint(id(math))print(type(math))print(math)2137883863544<class

2021-03-23 20:37:07 78

原创 面向对象的三大特征

目录封装继承方法重写object类多态特殊属性和特殊方法![在这里插入图片描述](https://img-blog.csdnimg.cn/20210322210725763.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1hpX1lvdV9aaQ==,size_16,color_FFFFFF,t_70)类的赋值与拷贝赋值封装:提高程序的安全性

2021-03-22 21:08:50 197 2

原创 类和对象

类与对象类是多个类似事物组成的群体的统称,能够帮助我们快速理解和判断事物的性质。不同的数据类型属于不同的类。python中一切皆对象。类就是统称,一类物品的统称。实例就是一个具体存在特指的一个事物。相似的实例就可以归到同一类中。类的创建类中所有实例都存在使其区别于其他类的共同点,共同点可以细分为属性(what),描述事物性质和方法(how),描述事物能做什么。Python中,每个类都有自己的独特的属性attribute和方法method,是这个类的所有实例都共享的。换言之,每个实例都可以调用类

2021-03-16 17:13:07 126 1

原创 Bugs

Bug的由来与分类1、粗心导致的语法错误:漏写冒号;缩进错误;中文符号;==与=的混用;字符串与数字混用2、知识不熟练导致的错误3、思路不清导致的错误:使用print()打印输出;注释部分代码4、被动掉坑:程序逻辑没有错,因为用户错误操作导致问题。解决方案:python提供了异常处理机制,可以在异常出现时捕获,然后内部消化,让程序继续运行。try: 可能出现异常的代码 except 异常类型1: 异常处理代码 except 异常类型2: 异

2021-03-15 21:55:08 109

原创 函数

目录函数的创建和调用什么是函数为什么需要函数函数的创建函数的参数传递函数的返回值函数的参数定义默认值参数个数可变的参数变量的作用域局部变量全局变量递归函数什么是递归函数组成部分调用过程优缺点函数的创建和调用什么是函数函数就是执行特定任务和完成特定功能的一段代码为什么需要函数复用代码隐藏实现细节提高可维护度提高可读性便于调试函数的创建def 函数名(参数): 函数体 return xxx函数的参数传递# 函数调用的参数传递# 位置实参:根据形参对应的位置进

2021-03-13 16:29:49 98

原创 字符串

驻留机制字符串是基本数据类型,是一个不可变的字符序列。仅保存一个相同且不可变字符串的方法。不同的值被存放在字符串的驻留池中,python的驻留机制对相同的字符串只保留一份拷贝,后续创建相同字符串时,不会开辟新空间,而是把该字符串的地址赋给新创建的变量。a='python'b="python"c='''python'''print(a,id(a))print(b,id(b))print(c,id(c))python 2741793463352python 2741793463352py

2021-03-13 10:29:39 128

原创 元组和集合

目录元组创建方式原理元组的遍历集合创建方式相关操作集合间的关系集合的数学操作集合生成式元组pyhton内置的数据结构之一,是一个不可变序列,没有增删改操作。包括字符串和元组。可变序列具有增删改操作,且经过该操作后,内存地址不发生更改。创建方式# 直接小括号,元素与元素之间用逗号分隔t = ('hello','good','morning')t2 = 'hello','good',10 # 小括号可以省略print(t)print(t2,type(t2))# 使用内置函数tuple()

2021-03-09 19:38:42 292

原创 字典

目录字典创建与删除使用花括号创建使用内置函数dict()查询操作key的判断元素的增、删、改修改 /新增删除字典生成式字典内置数据结构之一,与列表一样是可变序列;以键值对的方式存储数据,是一个无序的序列。字典中的键是唯一的,值是可以重复的。键必须是不可变对象。a = {'年龄':23,'身高':160,'体重':100}print(a['年龄']) # 通过键取值23创建与删除使用花括号创建a = {'年龄':23,'身高':160,'体重':100} # 使用{}创建字典时,键要加

2021-03-06 16:58:59 1092

原创 循环结构

目录内置range函数while循环for-in循环流程控制语句 - break语句流程控制语句 - continueelse语句嵌套循环二重循环中的break和continue内置range函数用于生成一个整数序列range(start,stop,step):在start值到stop值(不包括)范围内,按照step步长生成一个迭代对象r = range(1,9,2)print(r) # 迭代对象print(list(r)) # 将其列表化,查看range对象的整数序列range(1, 9

2021-03-06 14:59:24 547

原创 程序的组织结构

目录顺序结构选择结构对象的布尔值if语句双支语法结构多分支结构嵌套if条件表达式循环结构pass语句任何简单或复杂的算法都可以由顺序结构,选择结构和循环结构这三种基本结构组合而成。顺序结构程序从上到下顺序执行代码,中间没有任何判断和跳转,直至程序结束选择结构程序根据判断条件的布尔值选择性地执行部分代码。if语句对象的布尔值python中一切皆对象。所有对象都会有布尔值。print(bool(tuple())) # 空元组print(bool(dict())) # 空字典print(b

2021-02-25 21:14:01 484

原创 input函数与运算符

目录input函数运算符标准算术运算符赋值运算符比较运算符布尔运算符位运算符运算符的优先级input函数用来接收客户的输入,返回值为str类型,将输入结果赋值给变量name = input('你的名字是:')你的名字是:落落print(name,type(name))落落 <class 'str'>如果想要将输入的返回值转化为整数类型,使用int()函数a = input('请输入一个整数')b = input('请输入一个整数')print(a+b)请输入一个整

2021-02-21 20:13:43 509

原创 数据类型

目录数据类型运算数据类型的转换数据类型1、string–字符串,加上引号(单双三)的内容就是字符串,无论引号里面内容是中文、英文、法文、数字、符号、甚至是火星文。由一个个字符连接起来的组合, 平时所见的字母、数字、汉字、符号都是字符。 字符串可以用来表示词、语句、甚至是数学公式。字符串类型必须有引号。2、int–integer,整数,整数是正整数、零和负整数的统称,且无引号(若有引号就是字符串),十六进制/二进制/八进制/十进制(默认)3、float–浮点数,带有小数点的纯数字定义为浮点数,Pyth

2021-02-06 10:57:28 217

原创 二进制与字符编码+标识符与保留字

目录二进制与字符编码标识符与保留字保留字标识符二进制与字符编码计算机只认识0和1.用来存放一个0或者1的位置,就是计算机中最小的储存单位,叫做【位】,外国名字叫【bit】,也叫做【比特】。我们规定8个比特构成一个【字节】(byte),字节是计算机里最常用的单位。8bit = 1byte1024byte = 1kB1024kB = 1MB1024MB = 1GB1024GB = 1TB标识符与保留字保留字# 有一些单词被赋予了特定的,在起名时不能使用import keywordpr

2021-02-03 21:22:06 260

原创 代理

目录代理概念在爬虫中的应用代理破解封IP这种反爬机制。访问次数太多,访问过密过快,IP会被封。概念什么是代理?- 代理服务器。代理的作用?- 突破自身IP访问的限制。- 隐藏自身真实的IP代理相干网站:- 快代理- 西祠代理- www.goubanjia.com代理ip的类型:- https:应用到https对应的url中- http:应用到http对应的url中代理ip的匿名度:- 透明:服务器知道该次请求使用了代理,也知道请求对应的真实IP- 匿名:

2021-02-02 14:59:57 132

原创 转义字符与原字符

目录转义字符原字符转义字符形式:反斜杠\ + 想要实现功能的首字母常见转义字符:\t表示制表符\n表示换行\\表示\'表示’\''表示’’\a响铃\b退格\f换页\r回车\v垂直列表\?问好\0空字符\ddd八进制ddd所代表的任意字符\xhh十六进制hh所代表的任意字符print('hello\nworld')# n-->newline首字母,表示换行helloworldprint('hello\tworld') # t--> tab首字母,表示制

2021-01-31 21:33:53 658

原创 python中切片

切片切片(slice)是取部分元素的操作。列表list,字典dic,字符串,元组均可进行切片操作。提取单个元素时,返回结果的类型为该元素的类型;切片返回值类型为列表。索引方式索引具有方向性,包括正索引和负索引,以list对象a=[0,1,2,3,4,5,6,7,8,9]为例:从左向右索引为0,1,2,3,4,5,6,7,8,9从右向左索引为-1,-2,-3,-4,-5,-6,-7,-8,-9,-10操作方式切⽚操作基本表达式:object[start_index:end_index:ste

2021-01-31 21:33:44 186

原创 Python占位符

python中的格式化格式化将字符串中部分内容用占位符表示,再传入内容。%占位符%运算符用来格式化字符串,用作占位符。常用占位符:%s是字符串的占位符,%d是整数的占位符,%f是浮点数的占位符,%x是十六进制整数。字符串中有几个占位符,后面就要跟几个变量或者值,顺序要对应好。格式如下。print("Hello, %s. I'm %s, I'm %d years old"%('world', 'Vicky',25))>> Hello, world. I'm Vicky, I'm 2

2021-01-31 21:33:33 842

原创 列表

列表列表是一种有序的数据集合,用[ ]将所有数据框起来,里面的每一个数据叫元素,元素与元素之间用逗号,隔开。a = [1,2,3,4,5]a>> [0, 1, 2, 3, 4, 5]列表中的元素可以包含不同的数据类型。b = ['A',1,2,'数学']b>> ['A', 1, 2, '数学']c=[0,1,2,3,[4,5,6],'python']c>> [0, 1, 2, 3, [4, 5, 6], 'python']访问单个元素与切片可

2021-01-31 21:33:25 109

原创 print函数

print函数将内容输出至解释器,显示出来;或输出到文件进行保存输出内容# 输出整数与浮点数,不用加引号,计算机可读懂括号内内容,打印最终结果print(5)print(3.4)53.4# 打印字符串,加英文状态下引号,单引号或双引号print('hello')print("world")helloworld# 打印内容需要换行,加英文状态下三引号print('''今天,是2021年1月20日周三天气晴''')今天,是2021年1月20日周三天气晴# 输

2021-01-31 21:33:14 287

原创 爬虫之request模块

目录request模块理论实战练习1、需求:爬取搜狗首页的页面数据2、需求:爬取搜狗指定词条对应的搜索结果页面(简易网页采集器)3、需求:破解百度翻译4、爬取肯德基地点5、爬取国家药品监督管理总局中基于中华人民共和国化妆品生产许可证相关数据request模块理论爬虫中用于请求的模块有两种:1、urllib模块,较为古老,不再使用2、request模块,python中原生的一款基于网络请求的模块,比较简单高效request模块特点:1、功能强大2、简单便捷3、效率极高作用:模拟浏览器发起请求

2021-01-31 21:33:03 476

原创 数据解析之正则表达式

目录数据解析数据解析分类数据解析原理正则解析实战练习数据解析数据解析分类正则表达式bs4xpath数据解析原理想要获取的局部的内容存储在标签之间或这标签对应的属性中:1、进行标签定位;2、对标签之间或标签属性中存储的数据值进行提取正则解析正则表达式概念在线测试工具:regex101.com / regexr-cn.com正则练习:codejiaomang.com1、限定符? 前面的字符出现0次或1次* ≥0次+ ≥1次{m} 出现m次{m,} ≥m次{m,n} 出现

2021-01-31 21:32:54 490

原创 数据解析之bs4

目录bs4数据解析的原理实战练习bs4只可以应用在python中bs4数据解析的原理1、实例化一个BeautifulSoup对象,并且将页面源码数据加载到该对象中2、通过调用BeautifulSoup对象相关的属性和方法进行标签定位和数据提取环境安装:pip install bs4pip install lxml如何实例化BeautifulSoup对象?导包 from bs4 import BeautifulSoup对象的实例化1、本地html文档中数据加载到该对象中:打开文件

2021-01-31 21:32:46 643

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除