![](https://img-blog.csdnimg.cn/20190918140145169.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
python学习笔记
python相关知识点
花开花落与云卷云舒
这个作者很懒,什么都没留下…
展开
-
简单的注册、登录、购物车功能
一、这是一个简单的系统,有10个功能模块:注册、登录、查看余额、提现功能、还款、转账、查看流水、购物车、查看购物车、管理员功能github地址:https://github.com/zhongxiaoting/login_shopCartlogin_shopCart这是一个简单的系统,有10个功能模块:注册、登录、查看余额、提现功能、还款、转账、查看流水、购物车、查看购物车、管理员功能,主要用到了面向对象的思想,装饰器等功能。部署1、git clone git@github.co原创 2021-07-07 10:05:55 · 862 阅读 · 0 评论 -
python plot绘制折线图,自定义横坐标间距、竖向显示大小
plot是matplotlib的一个绘制各类可视化图的子库,他的用法十分的广阔和好用,对于绘图来说更是一个神器。如何处理横坐标数据过多重叠,模糊不清呢?设置横坐标字体大小等问题呢?原创 2022-07-06 11:47:49 · 19939 阅读 · 0 评论 -
Thread中wait、sleep、run、start的区别
wait、sleep、run、start都是Thread中的方法,但是他们之间又有什么区别呢?下面就让我们来讲讲吧!一、wait、sleep区别1.1 相同点wait()、sleep()方法都可以让线程进入阻塞状态; wait()、sleep()方法均是可中断方法,被中断后都会收到中断异常;1.2 不同点所属的类不同:wait()属于Object类固有,而sleep()属于Thread类特有; 锁的释放不同:wait()会释放锁,并加入等待队列中;sleep()不会释放锁; slee原创 2022-03-14 09:45:00 · 763 阅读 · 0 评论 -
python 工厂方法模式原理与实现
一、简介工厂模式是属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象的过程中不会向客户端暴露实现逻辑,而是通过一个共同的接口类来指向新创建的对象。二、工厂方法模式的主要角色抽象工厂(Abstract Factory):提供了创建产品的接口,调用者通过它访问具体工厂的工厂方法newProduct()来创建产品。 具体工厂(ConcreteFactory):主要实现抽象工厂中的抽象方法,完成具体产品的创建。 抽象产品(Product):定义了产品的规范,描述了产品的原创 2022-02-16 10:09:43 · 949 阅读 · 0 评论 -
python 多线程中方法带括号和不带括号的区别
一、方法中带括号和不带括号的区别python中多线程的应用,只要懂方法中带括号和不带括号的区别,你就懂了多线程的80%了这个看我上一篇文章:python 方法中带括号和不带括号的区别二、多线程调用方法带括号和不带括号的区别先看例子一:不带括号的多线程调用,这个才是正确的多线程调用方法import threadingimport timedef run1(): for _ in range(5): print("你们好!") tim原创 2021-12-27 10:33:07 · 828 阅读 · 0 评论 -
python 方法中带括号和不带括号的区别
一、先看看例子输出例一:def run(b): print("你好") return bif __name__ == '__main__': a1 = run('nihao') a2 = run print(a1) # 带括号 print(a2) # 不带括号结果:例二:def run(b): print("你好")if __name__ == '__main__': a1 = run('nihao原创 2021-12-27 09:53:52 · 2610 阅读 · 0 评论 -
python中dumps与loads、dump与load的区别
我在写到dumps和loads的时候常常会混淆这两者的作用,所以就做一下记录。1、json.dumps()json.dumps() 就是将dict(字典)数据转换为str(字符串),这可以应用于写入数据库中保存起来。import jsonname_json = {'a': 'liming', 'b': 'xiaohong', 'c': 'lisi'}dumps_json = json.dumps(name_json)print(dumps_json)print("原先的类型:", en原创 2021-11-23 20:17:00 · 781 阅读 · 0 评论 -
python中IO密集型为什么用多线程?
python多线程,可以粗浅理解只用了cpu的一个核心。为什么IO密集型用多线程?假设我们有多个线程都在发网络请求(request, 等response),一个请求的从发出到接收的过程中cpu大多时间都是在等。所以,当前线程发出请求后,由于不占用cpu资源,可以阻塞等待,然后cpu执行权可以被另外一个线程所享有去发网络请求。IO密集型,单个CPU利用率很低,可能只有10%,所以多线程可以提升cpu利用率,可能10个线程才能打满一个核心, 从而多线程也有并行的效果。...原创 2021-10-12 23:08:40 · 1004 阅读 · 0 评论 -
python中match()和search()的区别?
match()和search()都只匹配一个结果,但是match()是从字符串的开头开始匹配的,如果匹配的字符不是在开头处,那么它将会报错,匹配成功返回结果,没有返回None。而search()是从头开始匹配,匹配整一个字符串得出结果。代码:import reresult1 = re.match('li', 'liadadafbba').group()result2 = re.match('li', 'addadlidadaf')print(result1, result2)输出结.原创 2021-10-11 10:24:57 · 3509 阅读 · 0 评论 -
python中copy和deepcopy(浅拷贝与深拷贝)的区别
一、copy(浅拷贝)1、复制不可变数据类型(int、string、tuple)的时候,无论是copy(浅拷贝)、deepcopy(深拷贝)或者“=” 的地址都与原对象id地址一样代码:import copy# 不可变类型(int、string、tuple)a = "你好"b = ac = copy.copy(a) # 浅拷贝d = copy.deepcopy(a) # 深拷贝print("a的原地址", id(a))print("a的赋值地址b", id(b))pr.原创 2021-10-10 10:46:05 · 3741 阅读 · 1 评论 -
python中super的原理与作用
一、原理官方定义:那我回到super的问题上来,让我们先看看super的官方定义。super([type[,object-or-type]])返回一个代理对象,该对象将方法调用委托给类的父类或兄弟类。这对于访问类中已重写的继承方法非常有用。搜索顺序与getattr()使用的搜索顺序相同,只是类型本身被跳过。类的__mro__属性列出了getattr()和super()使用的方法解析搜索顺序。属性是动态的,可以在继承层次结构更新时进行更改。看到官方的解释就可以很清楚的明白,sup...原创 2021-10-09 21:23:32 · 1902 阅读 · 0 评论 -
字典和Json的区别
1.字典字典是一种数据结构,是python中的一种数据类型;它是一种可变类型,可以存储任意类型的数值,以 key:value 的形式存储数据,但是 key 可以是任意可hash的对象,在一个字典中不允许出现两个相同的key值,如果出现,后面一个key值会覆盖前面的key值。2. JsonJson是一种打包的数据格式,本质上是字符串,也是按照key:value 来存储数据,key 只能时字符串,且可以有序、重复;必须使用双引号作为key或者值的边界符,不能使用单引号,使用单引号或者不使用引号...原创 2021-09-29 16:24:33 · 10618 阅读 · 1 评论 -
Jupyter使用指定的conda环境
一般安装了anaconda会自带jupyter notebook,但是这样启动的notebook运行的是base环境,当我们创建其他虚拟环境时启动notebook是还是运行base环境。当我们想要在jupyter中运行自己创建的环境时,需要先安装nb_condaconda install nb_conda之后重启jupyter notebook之后,就可以在kernel中选择自己需要的虚拟环境这样就可以选择自己创建的环境了。...原创 2021-07-08 10:12:39 · 2218 阅读 · 0 评论 -
字符串内置函数操作总结
l = [‘egon’, ‘18’, ‘male’]res = l[0] + ‘:’ + l[1] + ‘:’ + l[2] # egon:18:maleres1 = “:”.join(l) # 按照某个分隔符号,把元素全为字符串的列表拼接成一个大字符串结果:egon:18:malel = [1, ‘18’, ‘male’]“”.join(l) # 报错,不能拼接6.8 replace # 把前面的you替换成后面的YOUmsg = “you can you up no can no bb原创 2021-06-03 20:16:47 · 244 阅读 · 0 评论 -
AttributeError: type object ‘BookAPIView‘ has no attribute ‘get_extra_actions‘
django-rest-framework开发时报错 如下:AttributeError: type object ‘BookAPIView‘ has no attribute ‘get_extra_actions‘File "/Users/user/Desktop/PythonProject/django_restful_drf/venv/lib/python3.9/site-packages/rest_framework/routers.py", line 236, in get_urls原创 2021-05-19 11:23:49 · 2141 阅读 · 0 评论 -
创建postgres容器并连接
一、拉取postgres镜像sudo docker pull postgres二、创建容器原创 2021-04-26 15:56:06 · 501 阅读 · 0 评论 -
pip清华源换源,解决各种库包下载慢问题
Ubuntu 换源 (16.04 LTS)Ubuntu 的软件源配置文件是 /etc/apt/sources.list。将系统自带的该文件做个备份,将该文件替换为下面内容,即可使用 TUNA 的软件源镜像。# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释deb https://mirrors.bfsu.edu.cn/ubuntu/ xenial main restricted universe multiverse# deb-src https://mirr原创 2021-04-14 13:02:05 · 4992 阅读 · 0 评论 -
ERROR: Could not find a version that satisfies the requirement XXX解决方法
出现问题:ERROR: Could not find a version that satisfies the requirement XXX解决方法找了很久终于找到能解决这种报错的方法了。直接选用pip源并且信任它的来源就可以解决这种问题。pip install 库包名 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com这里将pip源换成清华源、阿里源等都适用。...原创 2021-04-10 16:11:38 · 76349 阅读 · 39 评论