自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ImportError: cannot import name ‘PyQuery‘ from partially initialized module ‘pyquery‘

在运行from pyquery import PyQuery as pq时报错,找了一下原因:我是因为文件名命错了,试试改下文件名,不要和pyquery重复

2020-11-24 17:16:38 1656 1

原创 启动数据库MySQL

1.可以在cmd 敲 mysql -u root -p 如果报错说连接不上,我们手动先启动数据库之后再去cmd内操作:在Windows服务管理器启动,在开始菜单搜索services.msc点击右键启动即可:启动成功:

2020-11-17 10:14:01 1441

原创 python操作pymysql

**python操作mysql的基本步骤:**1. 链接mysql数据库2. 创建游标对象3. 准备sql4. 用游标对象执行sql5. 用游标对象提取结果6. 关闭数据库连接连接mysql数据库时的 cursorclass=pymysql.cursors.DictCursor 可以把结果转为 字典类型,默认为元组import pymysql# 1. 链接mysql数据库 用户名、密码、选择的库、字符集、 cursorclass: 。DictCursor:以字典的形式返回操.

2020-11-15 20:30:36 253

原创 安装pip install pymysql所出现的一堆问题(‘pip‘ 不是内部或外部命令)(File “<stdin>“, line 1 pip install pymysql)

直接输入pip install pymysql时候出现下面的问题:‘pip’ 不是内部或外部命令,也不是可运行的程序或批处理文件。然后进入python环境中去输入还是报错:File “”, line 1pip install pymysql^SyntaxError: invalid syntax这个是不需要进入python环境中去下载的,所以要用exit()退出python环境,然后去将pip路径加到环境变量里面去,pip 的路径就是 C:\Python38\Scripts

2020-11-15 19:59:20 3367

原创 MySQL安装详细步骤 / 图形化管理工具Navicat12

==Windows安装MySQL5.7.17 ==在MySQL官网 http://dev.mysql.com/downloads/mysql/ 上面下载ZIP安装包(第二个:Windows (x86, 64- bit), ZIP Archive)。下载后(暂时存放),将mysql-5.7.28-winx64解压至当前文件夹,我将这个解压后的文件夹放至E盘,因为我习惯将软件都放置在此盘,并在次文件夹里创建一个my.ini文件(先创建一个文本文档重命名为my.ini)和一个data文件夹(以后我们所创建的

2020-11-14 16:59:51 704

原创 面向对象--装饰器(定义、应用场景、语法:装饰器的嵌套、装饰带有参数(多参数)的函数、类装饰器装饰函数等)

一、装饰器定义装饰器 decorator**在不改变原有函数代码,且保持原函数调用方法不变的情况下,给原函数增加新的功能(或者给类增加属性和方法)****核心思想**:用一个函数(或者类)去装饰一个旧函数(或者类),造出一个新函数(或者新类)**应用场景**:引入日志,函数执行时间的统计,执行函数前的准备工作,执行函数后的处理工作,权限校验,缓存等**语法规则**:在原有的函数上加上 @符,装饰器会把下面的函数当作参数传递到装饰器中,@符又被成为 语法糖# 1。 装饰器的原型### 利用

2020-11-14 13:55:46 423

原创 文件的操作(写入、读取、关闭)

# Python中的File(文件)操作> 针对磁盘中的文件的读写。文件I/O I 输入(input) O输出(Output)>> 文件操作步骤:1.打开文件 2.读写文件 3.关闭文件#### 写入文件的操作:(把大象装进冰箱)1. 打开文件 open() ==> 打开冰箱2. 写入内容 write() ==> 把大象装进冰箱3. 关闭文件 close() ==> 关闭冰箱门#### 读取文件的操作:(把大象从冰箱中取出)

2020-11-12 19:23:10 1307

原创 面向对象描述符(__get__,__set__,__delete__)及其定义方式和应用案例\单例(单态)设计\Mixin 混合设计\抽象类

'''__get__(self, instance, owner) 触发机制:在访问对象成员属性时自动触发(当该成员已经交给描述符管理时) 作用:设置当前属性获取的值 参数:1. self 描述符对象 2.被管理成员的类的对象。3.被管理成员的类 返回值:返回值作为成员属性获取的值 注意事项:无__set__(self, instance, value) 触发机制:在设置对象成员属性时自动触发(当该成员已经交给描述符管理时) 作用:对成员的赋值进行管理 参数:1. self 描述符对象

2020-11-12 19:21:22 440

原创 str、repr 和对应魔术方法的区别

认识 str 和 repr 的区别num = 521r1 = str(num)r2 = repr(num)# str和repr函数都可以把其它类型的值转为字符串# print(r1,type(r1)) # 输出: 521 <class 'str'># print(r2,type(r2)) # 输出:521 <class 'str'>s = '521'r1 = str(s)r2 = repr(s)print(r1,type(r1)) # 输出结果: 521

2020-11-11 16:56:39 232 1

原创 面向对象高阶成员、方法的分类、常用函数

面向对象高阶成员# 获取类/对象的所属成员 类/对象.__dict__res = Demo.__dict__ # 获取当前类的所属成员res = obj.__dict__ # 获取当前对象的所属成员# 获取类的文档信息 类/对象.__doc__res = Demo.__doc__res = obj.__doc__# 获取类名称组成的字符串res = Demo.__name__# 获取类所在的文件名称,如果是当前文件,显示为__main__res = Demo.__module

2020-11-11 16:48:45 201

原创 面向对象三大特性之一--多态

# 多态 普通版本# 对于同一个方法,由于调用的对象不同(或者传入的对象不同),最终实现了不同的结果# 定义电脑类class Computer(): # 在电脑类中定义一个 sub 的规范的接口 方法 def usb(self,obj): obj.start()# 定义鼠标类class Mouse(): def start(self): print('鼠标启动成功。')# 定义键盘类class KeyBord(): def

2020-11-10 17:24:09 216

原创 面向对象的三大特性之一--继承(单、多继承,菱形继承、类关系检测 issubclass())

''当子类继承父类后,就可以去使用父类中的成员属性和方法 (除了私有成员)子类可以有自己独立的成员,也可以没有子类继承父类后,重新定义了父类中的方法,这种情况称为对父类方法的重写在子类中可以去直接调用父类中定义的方法 super().父类方法名()子类继承父类后,定义类父类中没有的方法,这种情况称为 对父类的 扩展一个父类可以被多个子类继承子类调用父类的方法时,如果该方法有参数要求,也需要传递参数'''# 猫科动物class maoke(): # 属性 maose =

2020-11-10 14:50:18 755 1

原创 面向对象的三大特性之一--封装

封装就是使用特殊的语法,对成员属性和成员方法进行包装,达到保护和隐藏的目的但是一定注意,不能把成员全部封装死,就失去意义了被封装的成员主要是供类的内部使用被特殊语法封装的成员,会有不同的访问的权限封装的级别 成员 ==> 公有的 _成员 ==> 受保护的 (约定俗成,而python没有具体实现) __成员 ==> 私有的 公有的 public 受保护的 protected 私有的 private在类的内部

2020-11-10 13:52:34 210

原创 魔术方法(初始化方法、析构方法、__call__、__ bool__、__ repr__、__ str__、__ len__、日志封装)

> 魔术方法也和普通方法一样都是类中定义的成员方法> 魔术方法不需要去手动调用的,魔术方法会在某种情况下,自动触发(自动执行)> 魔术方法还有一个比较特殊的地方:就是多数的魔术方法 前后都有两个连续的下划线> 魔术方法不是我们自己定义的,而是系统定义好的,我们来使用__init__初始化方法__init__ 初始化方法 触发机制:在通过类实例化对象后,自动触发的一个方法 作用: 可以在对象实例化后完成对象的初始化(属性的赋值,方法的调用。。)

2020-11-10 09:30:29 306

原创 成员方法中的self

+ self在方法中只是一个形参,并不是关键字+ self 单词本身的意思 自己+ self 在类的方法中 代表 当前这个对象+ self 代表调用这个方法的对象,谁调用了这个方法,self就代表谁+ self 就可以在类的内部代替对象进行各种操作+ 含有self或者可以接受对象作为参数的方法: 非绑定类方法+ 不含self或者不能接受对象作为参数的方法:绑定类方法非绑定类方法,可以使用对象去访问绑定类方法,只能通过类去访问'''self 单词本身的意思 自己self 在类的方

2020-11-09 20:04:04 402

原创 面向对象(类和对象操作)

'''类名的书写规范,建议使用驼峰命名法 大驼峰:MyCar XiaoMi 小驼峰:myCar xiaoMi一个类有特征和功能两个内容组成: 特征就是一个描述:颜色:白色,品牌:奥迪,排量:2.4 。。。 功能就是一个能力:拉货,带美女兜风。。。。 特征在编程中就是一个变量,在类中称为 属性 功能在编程中就是一个函数,在类中称为 方法类中属性一般定义在前面,方法定义在后面'''# 定义一个汽车的类class Cart(): # .

2020-11-09 16:47:14 375

原创 异常/怎么去解决异常

'''什么是异常?异常简单理解,就是非正常,没有达到预期目标。异常是一个事件,并且这个异常事件在我们程序员的运行过程中出现,会影响我们程序正常执行。异常分两种: 1. 语法错误导致的异常 2. 逻辑错误导致的异常在程序无法正常运行处理时,就会出现一个异常,在python中异常是一个对象,表示一个错误。例如:获取一个不存在的索引Traceback (most recent call last): File "/Users/yc/Desktop/code/1.异常处理-

2020-11-09 15:06:50 849

原创 模块与包(导入模块、单入口程序)

模块## 模块> 定义的一个python的文件,后缀名为.py。这个文件被称为模块。>> 模块中通常会定义一些相似的 类,函数等代码内容,提供给别的程序引入后使用。#### 系统模块> 系统模块就是一个python的程序脚本,专门提供给我们自己的程序使用。它们是在安装好python环境时,就已经存在的,需要的时候可以使用 import 导入到程序中使用。>> import logging,json,time。。。。#### 自定义模块>

2020-11-09 11:26:12 271

原创 Re正则表达式/re正则模块的相关函数/正则规则/案例实战

正则表达式'''正则表达式就是使用字符、转义字符、和特殊字符等组成的一个规则使用这个规则去对文本内容进行搜索、匹配和替换等功能正则表达式的组成 普通字符: 大小写字符、数字、符合等 转义字符: \w \W \d \D \s \S 特殊字符: . * ? + {} [] () 匹配模式: I U ...'''# 使用正则表达式进行匹配的基本语法import re# 定义要匹配的字符串varstr = 'iloveyou521to123si4567mid

2020-11-08 21:22:46 449

原创 内置模块--时间/日历模块--time

时间模块'''概念: 1。 时间戳: 1604808886.9142222 表示从1970年1月1日0时0分0秒到现在的一个秒数,目前可以计算到2038年 2。 时间字符串: Sun Nov 8 12:16:30 2020 3。 时间元组: time.struct_time(tm_year=2020, tm_mon=11, tm_mday=8, tm_hour=12, tm_min=18, tm_sec=7, tm_wday=6, tm_yday=313, tm_isdst=

2020-11-08 15:47:11 439

原创 内置模块--压缩模块--zipfile

import zipfile,os# 压缩文件 操作 其中spam1是我压缩包的名字,# 将data.json,data.txt,data2.txt压缩进去,并命名为spam1# with zipfile.ZipFile('spam1.zip', 'w') as myzip:# myzip.write('data.json')# myzip.write('data.txt')# myzip.write('data2.txt')# 解压缩文件# with zip

2020-11-07 21:37:12 417 2

原创 内置模块--高级文件操作模块--shutil

import shutil# shutil == shell util# copy 复制文件 把一个文件拷贝到指定的目录中# shutil.copy('./data.json','./a/da.json')# copy2 和copy方法一样,可以把拷贝文件到指定目录,保留了原文件的信息(操作时间和权限等)# copyfile 拷贝文件的内容(打开文件,读取内容,写入到新的文件中)# copytree 可以把整个目录结构和文件全部拷贝到指定目录中,但是要求指定的目标目录必须不存在#

2020-11-07 21:04:50 208

原创 内置模块--系统接口模块--os

import os# os.getcwd() 获取当前的工作目录,注意获取的不是当前脚本的目录,res = os.getcwd()# 如果在当前目录执行这个脚本文件,那么getcwd获取的就是当前的文件目录# 如果把执行的目录切换到其它位置,在执行当前脚本,那么获取的就是你执行这个脚本时的目录# os.chdir() # 修改当前的工作目录# os.chdir('C:/Users/Liu/')# 修改工作目录后,再去获取工作目录# res = os.getcwd()# os.l

2020-11-07 18:47:57 245

原创 内置模块--随机模块--random

import random# random.random() 返回 0 - 1 之间的随机小数 (左闭右开),即可能取到0,但是取不到1 res = random.random()# random.randrange([开始值],结束值,[步进值]) 随机获取指定范围内的整数res = random.randrange(5) # 一个参数,从0到整数之间的值,左闭右开res = random.randrange(5,10) # 两个参数,从第一个值到第二个值之间的随机数,左闭右开# res

2020-11-07 16:44:29 318 1

原创 内置模块--数学模块--Math

import math# math的相关函数。一部分# math.ceil() 向上取整,区别于内置函数 round() 四舍五入res = math.ceil(2.15) #输出3# math.floor() 向下取整,res = math.floor(2.95) # 输出2# math.pow() 计算数值的n次方,结果是浮点res = math.pow(2,3) # 输出8.0# math.sqrt() 开平方运算,结果是浮点res = math.sqrt(12) # 输出

2020-11-07 16:31:17 389 1

原创 内置模块--序列化--json

// A code blockvar foo = 'bar';// A code blockvar foo = 'bar';// A code blockvar foo = 'bar';// A code blockvar foo = 'bar';// A code blockvar foo = 'bar';// A code blockvar foo = 'bar';// A code blockvar foo = 'bar';

2020-11-07 16:01:55 296 1

原创 内置模块--序列化--pickle

'''什么是序列化?为什么需要序列化?1。序列化是指可以把python中的数据,以文本或二进制的方式进行转换,并且还能反序列化为原来的数据2。一般来说数据在程序与网络中进行传输和存储时,需要以更加方便的形式进行操作,因此需要对数据进行序列化pickle模块提供的函数 dumps() 序列化,返回一个序列化后的二进制数据 可以把一个python的任意对象序列化成为一个二进制 pickle.dumps(var) loads() 反序列化,返回一个反序列化后的python

2020-11-07 15:42:08 304 1

原创 集合的基本操作和常规函数(冰冻集合)

# 定义集合vars = {123,'abc',False,'love',True,(1,2,3),0,3.1415,'123'}# 1、无序。# 2、布尔类型 True 表示为 1,False 表示为 0,布尔和数字只存在一个# 3、元素的值不能重复# 4、集合中不可有列表,若有则会被报错# 检测集合中的值res = '123' in varsres = '123' not in vars# 获取集合中元素的个数 len()# res = len(vars)# 集合的遍历#

2020-11-06 16:19:59 272

原创 字典的基本操作、相关函数、字典推导式

字典的基本操作一、字典定义# 1。 使用{}定义vardict = {'a':1,'b':2,'c':2}# 2。 使用 dict(key=value,key=value) 函数进行定义vardict = dict(name='zhangsan',sex='男',age=22)# 3。 数据类型的转换 dict(二级容器类型) 列表或元组,并且是二级容易才可以转换vardict = dict([['a',1],['b',2],['c',3]]) # {'a': 1, 'b': 2, '

2020-11-06 10:45:57 382

原创 python字符串查找及操作

字符串查找vars = 'iloveyoutosimidaandilikeyou'# 检测一个字符串是否存在与一个字符串中res = 'loves' in vars# 获取字符串的长度 len()res = len(vars)# (1) 字符串查找相关函数# 从左向右 获取指定字符在字符串中第一次出现的索引位置,未找到则返回 -1# str.find(sub[, start[, end]])# res = vars.find('you')# res = vars.find('yo

2020-11-04 21:26:15 578

原创 python中英文字符大小写转换与字符检测相关函数

可以自己跑一下代码,有的受中文的影响,有的自动忽略中文的影响varstr = 'iloveyou' # 一 大小写转换函数# str.capitalize() 返回原字符串的副本,其首个字符大写,其余为小写。res = varstr.capitalize()# str.title() 返回原字符的副本,把字符串中的每个单词首字母大写res = varstr.title()# str.upper() # 把字符串中的英文字符全部转为 大写res = varstr.upper()#

2020-11-04 20:45:33 934

原创 python中filter() 函数(过滤器)

filter(func,iterable)功能: 过滤数据,把 iterable 中的每个元素拿到 func 函数中进行处理, 如果函数返回True则保留这个数据,返回False则丢弃这个数据参数: func 自定义函数 itereble: 可迭代的数据返回值:保留下来的数据组成的 迭代器# 定义一个函数,判断当前这个函数是否为偶数,偶数返回True,奇数返回Falsedef myfunc(n): if n % 2 == 0: retur

2020-11-04 18:24:39 1172

原创 python中的reduce()函数

reduce(func,iterable)功能: 每一次从 iterable 拿出两个元素,放入到func函数中进行处理,得出一个计算结果, 然后把这个计算结果和iterable中的第三个元素,放入到func函数中继续运算, 得出的结果和之后的第四个元素,加入到func函数中进行处理,以此类推,直到最后的元素都参与了运算参数: func: 内置函数或自定义函数 iterable: 可迭代的数据返回值:最终的运算处理结果注意: 使用 reduce函数时,需要导入

2020-11-04 17:57:16 339 1

原创 python中map()函数的用法和使用说明

map()函数:map(): 对传入的可迭代数据中的每个元素进行处理,返回一个新的迭代器map(func, *iterables)功能: 对传入的可迭代数据中的每个元素放入到函数中进行处理,返回一个新的迭代器参数: func 函数 自定义函数|内置函数 iterables:可迭代的数据返回值:迭代器想要将 [‘a’,‘b’,‘c’,‘d’] 转换成 [65,66,67,68]swapcase():对字符串的大小写字母进行转换。# 可以发现这是进行ASCII码的转

2020-11-04 16:16:18 1583

原创 python中sorted()函数的用法及介绍

'''sorted()运行原理: 把可迭代数据里面的元素,一个一个的取出来,放到key这个函数中进行处理, 并按照函数中return的结果进行排序,返回一个新的列表功能: 排序参数: iterable 可迭代的数据 (容器类型数据,range数据序列,迭代器) reverse 可选,是否反转,默认为False,不反转, True反转 key 可选, 函数,可以是自定义函数,也可以是内置函数返回值: 排序后的结果'''arr = [3,7,1

2020-11-04 14:58:22 5989

原创 各种进制相关函数互相转换

# bin() 将数值类型转为二进制 print(bin(123)) # 0b1111011# int() 将二进制转为整型(同样适用于八进制和十六进制) print(int(0b1111011)) #1 23# oct() 转为八进制数 01234567 print(oct(123)) # 0o173# hex() 转为十六进制数 0123456789abcdef print(hex(123)) # 0x7b# 将字符转为 asciir = ord('a')print(r)

2020-11-04 12:44:22 492

原创 python中的round()函数

四舍五入r1 = round(3.1415926)r2 = round(3.1415926,2) # 小数点保留几位#出现0.5的情况的时候总是偏向偶数的一方r3 = round(4.5) # 奇进偶退 1.5 = 2,2.5=2,3.5=4,4.5=4print(r1,r2,r3)输出结果:3 3.14 4

2020-11-04 12:03:40 1053

原创 python中zip()函数的用法和介绍

zip(*iterables)--------------压缩函数功能:zip 函数是可以接受多个可迭代的对象,然后把每个可迭代对象中的第i个元素组合在一起,形成一个新的迭代器参数:*iterables,任意个的 可迭代对象返回值: 返回一个元组的迭代器var1 = '1234'var2 = ['a','b','c']var3 = ('A','B','C','D')# 调用zip函数,组成新的元组迭代器res = zip(var1,var2,var3)print(res,type(res

2020-11-04 11:05:25 1359

原创 python中isinstance()的用法

isinstance():检测一个数据是不是一个指定的类型也可以用于检测迭代器和可迭代对象from collections import Iterable,Iteratorvars = '123456'res = iter(vars)r1 = isinstance(vars,str) #检测vars是不是字符串形式r2 = isinstance(vars,Iterable) #检测vars是不是可迭代对象r3 = isinstance(vars,Iterator) # 检测vars是不

2020-11-04 10:19:51 1447

原创 Python中 range() 函数用法-----正序倒序怎么使用

range(start, stop, step)start: 计数从 start 开始。默认是从 0 开始。stop: 计数到 stop 结束,但不包括 stop。可以描述为左闭右开step:步长,默认为1。#左闭右开,包括左边,但不包括右边,此例中包含0,但不包含6for i in range(0,6): print(i) print('----------')#步长为2for i in range(0,6,2): print(i)输出结果:012

2020-11-02 20:15:36 1169

空空如也

空空如也

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

TA关注的人

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