
python
文章平均质量分 70
I believe I can fly~
My Heart Will Go On
展开
-
conda修改虚拟环境名称
conda 不能直接更改名称,但是可以通过克隆环境解决原创 2023-11-10 15:29:20 · 1163 阅读 · 0 评论 -
sqlalchemy-orm联表查询指定字段
sqlalchemy 联表查询获取所有表的字段,获取指定字段原创 2023-11-09 15:58:25 · 1231 阅读 · 0 评论 -
MySQL LIKE BINARY 和 LIKE 模糊查询
MySQL是区分大小写的LIKE是否区分大小写,取决于表的COLLATE,如果即二进制形式就是区分大小写的, 否则是不区分的ORM写法和SQL写法和LIKE。原创 2022-11-07 16:04:59 · 1138 阅读 · 0 评论 -
python 字典获取、设置键值实现 “.“ 方法
python字典数据结构获取、设置键值实现“.”方法,类似类和类对象访问自身属性、方法。原创 2022-11-04 14:58:39 · 436 阅读 · 0 评论 -
python-DFA算法敏感词检索
在实现文字过滤的算法中,**DFA**是比较好的实现算法。**DFA**即**Deterministic Finite Automaton**,也就是确定有穷自动机。这类系统具有一系列离散的输入输出信息和有穷数目的内部状态(状态:概括了对过去输入信息处理的状况)。系统只需要根据当前所处的状态和当前面临的输入信息就可以决定系统的后继行为。每当系统处理了当前的输入后,系统的内部状态也将发生改变。算法核心是建立了以敏感词为基础的多个敏感词树,只需要扫描一次待检测文本,就能对所有敏感词进行检测。原创 2022-11-03 16:56:26 · 2545 阅读 · 0 评论 -
Python logging 模块详解
import logging # 打印日志级别 def test_logging() : logging . debug('Python debug') logging . info('Python info') logging . warning('Python warning') logging . error('Python Error') logging . critical('Python critical') test_logging()Logger是一个树形层级结构Logger。原创 2022-09-29 16:52:42 · 2599 阅读 · 1 评论 -
腾讯云短信开发
python vue django原创 2020-12-28 17:15:15 · 367 阅读 · 0 评论 -
自定义配置
自定义配置自定义常量配置文件:settings/const.py# 自定义的常量配置文件,在settings中 from 该文件 import *,将名字全部丢给settingsBANNER_COUNT = 4加载自定义配置名称空间:settings/dev.py# 加载自定义配置名称空间from .const import *在轮播图接口中应用:banner/views.pyclass BannerViewSet(ModelViewSet, mixins.ListModelMixin)原创 2020-12-23 16:15:20 · 153 阅读 · 0 评论 -
python-DRF_RBAC-基于角色的访问控制_xadmin的使用_django缓存_django信号
DRF-Django rest framework1. RBAC-基于角色的访问控制1. 什么是RBAC# 概念 RBAC 是基于角色的访问控制(Role-Based Access Control ) 在 RBAC 中,权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限。这就极大地简化了权限的管理。这样管理都是层级相互依赖的,权限赋予给角色,而把角色又赋予用户,这样的权限设计很清楚,管理起来很方便。 # 应用RBAC - Role-Based Access Cont原创 2020-11-17 21:20:49 · 941 阅读 · 0 评论 -
python-DRF_基于jwt的多方式登录_自定义user表-签发token-认证类_表关系及抽象表建立
DRF-Django rest framework1. 基于jwt的多方式登陆1. 需求分析1. 登录方式 1. 手机号+密码 2. 用户名+密码 3. 邮箱+密码 2. 流程分析(post请求) 路由: 自动生成 视图类: ViewSet(ViewSetMixin, views.APIView) 序列化类:重写validate方法,在这里面对用户名和密码进行校验 3. 代码实现 如下.....2. 代码实现1. 路由p原创 2020-11-16 19:41:06 · 476 阅读 · 0 评论 -
python-DRF_视图继承示例_base64简介及使用_jwt认证介绍-构成-工作原理_基本使用_控制登录接口返回的数据格式_自定义基于jwt的认证类
DRF-Django rest framework1. 视图继承示例1. 项目需求1. 自定义User表扩展auth的User 新增mobile唯一约束字段;新增icon图片字段2. 在自定义User表基础上 用 GenericViewSet + CreateModelMixin + serializer 完成User表新增接口(就是注册接口) (重要提示:序列化类要重写create方法,不然密码就是明文了) 3. 在自定义User表基础上 用 GenericViewSet原创 2020-11-15 00:08:43 · 307 阅读 · 0 评论 -
python-DRF_自定制过滤器_分页器Pagination_异常处理_封装Response对象_自动生成接口文档
DRF-Django rest framework1. 自定制过滤器# 自定制过滤器 (源码流程) 查询所有才会有过滤 ==> list才需要过滤 ==> queryset = self.filter_queryset(self.get_queryset()) ==> GenericAPIView ==> filter_queryset # filter_queryset方法 def filter_query原创 2020-11-12 17:27:13 · 671 阅读 · 0 评论 -
python-DRF_限流Throttling_自定义频率类_内置频率类使用_过滤排序功能
authentication原创 2020-11-10 20:25:50 · 378 阅读 · 0 评论 -
python-DRF_认证功能_源码分析_自定义认证类_认证全局局部使用_自定义权限类_权限全局局部使用_内置权限和认证类
python-Django_DRF原创 2020-11-08 16:08:19 · 258 阅读 · 0 评论 -
python-DRF_2个视图基类_5个视图扩展类_9个视图子类_视图集_action的使用_路由的使用
python-DRF_原创 2020-11-06 20:04:37 · 637 阅读 · 0 评论 -
python-DRF_修改删除接口_source用法_模型类序列化器_SerializerMethodField_drf的请求响应_many=True_局部全局钩子解析
hhhhhh原创 2020-11-03 16:06:41 · 1096 阅读 · 0 评论 -
python-DRF_restful规范_APIView源码分析_Request类分析_序列化组件的使用及字段类型和字段参数_保存功能_字典校验_read_only和write_only
r3QVY原创 2020-10-29 19:06:14 · 259 阅读 · 0 评论 -
python-django_auth组件介绍_内置属性方法_User对象的属性_扩展默认的auth_user表_自定义中间表
django auth1. auth组件介绍Auth模块是Django自带的用户认证模块: 我们在开发一个网站的时候,无可避免的需要设计实现网站的用户系统。此时我们需要实现包括用户注册、用户登录、用户认证、注销、修改密码等功能,这还真是个麻烦的事情呢。 Django作为一个完美主义者的终极框架,当然也会想到用户的这些痛点。它内置了强大的用户认证系统--auth,它默认使用 auth_user 表来存储用户数据。2. auth模块常用方法from django.contrib import原创 2020-10-26 18:43:14 · 823 阅读 · 0 评论 -
python-django_session原理流程_django_中间件_CSRF-跨站请求伪造
django1. django的session原理流程2. django 中间件1. 中间件简介"""django中间件是django的门户 1.请求来的时候需要先经过中间件才能到达真正的django后端 2.响应走的时候最后也需要经过中间件才能发送出去django自带七个中间件"""# 研究django中间件代码规律 django 中的中间件(middleware),在django中,中间件其实就是一个类,在请求到来和结束后,django会根据自己的规则在合适的时机原创 2020-10-25 13:57:20 · 329 阅读 · 0 评论 -
python-django_cookie-session-token_django中cookie的使用_cookie版登陆校验_django中session的使用及其配置_CBV加装饰器
Django1. cookie session1. 简介# 发展史 1. 网站都没有保存用户功能的需求 所有用户访问返回的结果都是一样的 eg: 新闻、博客、文章... 2. 出现了一些需要保存用户信息的网站 eg: 淘宝、支付宝、京东... # 以登陆功能为例 如果不保存用户登陆状态 也就意味着用户每次访问网站都需要重复的输入用户名和密码(你觉得这样的网站你还想用吗?) 当用户第一次登陆成功之后 将用户的用户名密码返回给用户浏览器 让用户浏览器保存在本地,之后访问网站的时候原创 2020-10-22 16:49:57 · 296 阅读 · 0 评论 -
python-django_form组件校验数据功能_渲染页码功能_渲染错误信息_组件参数配置_局部钩子和全局钩子
Django Form组件1. Form基础1. forms组件介绍1. 注册功能,登录功能,前端需要校验(字段长度,邮箱是否合法。。。)2. 前端校验可以没有,后端校验是必须的,使用传统方式 if判断写的很多3. 借助于forms组件,可以快速实现字段的校验 from django.forms import Form1. 示例"""写一个注册功能 获取用户名和密码 利用form表单提交数据 在后端判断用户名和密码是否符合一定的条件 用户名中不能含有金瓶梅 密码不能少于三位原创 2020-10-21 16:15:31 · 413 阅读 · 1 评论 -
python-django_ajax-简介_简单使用_上传文件_提交json格式_django内置序列化器
Django-Ajax1. Ajax 简介AJAX Asynchronous Javascript And XML 翻译成中文就是 “ 异步Javascript和XML ” 。 即使用Javascript语言与服务器进行异步交互,传输的数据为XML(当然,传输的数据不只是XML,现在更多使用json数据)javascript 通过javascript来操作,发送HTTP请求到服务端xml 数据交互使用xml,现在主流使用json格式xml和json对比 xml:可阅读性原创 2020-10-19 17:09:00 · 321 阅读 · 0 评论 -
python-django_多表操作_聚合查询_分组查询_F和Q查询_原生sql_defer和only_事务
django 多表操作1. 聚合查询# 聚合查询(聚合函数:最大,最小,和,平均,总个数)aggregatefrom django.db.models import Avg,Max,Min,Count,Sum1. 计算所有图书的平均价格 # aggregate结束,已经不是queryset对象了 book=models.Book.objects.all().aggregate(Avg('price')) # 起别名 book=models.Book.objects.原创 2020-10-15 20:37:36 · 713 阅读 · 1 评论 -
python-django_多表操作_模型创建_一对多-多对多增删改查_多对多API_对象&双下划线的跨表查询_连续跨表查询
django 多表操作1. 创建模型1. 实例分析# 示例作者模型 一个作者有姓名和年龄作者详细模型 把作者的详情放到详情表,包含生日,手机号,家庭住址等信息 作者详情模型和作者模型之间是一对一的关系(one-to-one)出版商模型 出版商有名称,所在城市以及email书籍模型 书籍有书名和出版日期,一本书可能会有多个作者,一个作者也可以写多本书,所以作者和书籍的关系就是多对多的关联关系(many-to-many) 一本书只应该由一个出版商出版,所以出版商和书籍原创 2020-10-15 00:57:37 · 318 阅读 · 0 评论 -
python-django模型层_单表操作_常用字段和参数概览_打印原生sql_查询表记录API_模糊查询_python脚本调用django
django 模型层单表操作1. 字段和字段参数介绍1. 示例# 示例class Book(models.Model): # 如果不写id,会默认生成一个id,并且自增 # primary_key=True 表示该字段是主键,一个表中只能有一个主键 # id = models.AutoField(primary_key=True) # varchar类型,长度: max_length # 字段是否可以为空: null=True,可以为空 # 默认值:原创 2020-10-13 17:04:31 · 236 阅读 · 0 评论 -
python-django_自定义标签和过滤器_模板的导入与继承_静态文件使用方式_inclusion_tag的用法
django1. 自定义标签和过滤器1. 自定义过滤器-第一步: 在settings中的INSTALLED_APPS配置当前app,不然django无法找到自定义的simple_tag -第二步: 在app中创建templatetags包(包名只能是templatetags,不能改) -第三步: 在包内,新建py文件(如:my_tags.py) -第四步: # 写代码(过滤器) from django import template registe原创 2020-10-12 16:11:56 · 277 阅读 · 0 评论 -
python-django前端传递数据的三种格式_CBV源码分析_django模板语法
django1. CBV 源码剖析# 注意: 轻易不要修改源码 出了bug很难找到# urls.pyurl(r'^login/',views.MyLogin.as_view())'''CBV和FBV在路由匹配上的本质是一样的 都是路由对应函数内存地址ps: 函数名/方法名 加上括号执行优先级最高as_view() 是被@classmethod修饰的类方法 @classonlymethod def as_view(cls, **initkwargs): ...原创 2020-10-11 15:43:37 · 514 阅读 · 1 评论 -
python-django2.x版本的path基本用法_django视图层介绍
django 路由层1. django2.x 版本的path1. 基本用法 django2.0的re_path和1.0的url一样urlpatterns = [ re_path('articles/(?P<year>[0-9]{4})/', year_archive), re_path('article/(?P<article_id>[a-zA-Z0-9]+)/detail/', detail_view), re_path('articl原创 2020-10-09 19:33:57 · 719 阅读 · 0 评论 -
python-django_pycharm连接mysql数据库_路由层简介
django1. django 连接 mysql# sqlite 如果项目使用sqlite,不需要额外配置,直接操作即可# mysql 1. django默认情况链接mysql 用的驱动是mysqldb模块,python 3.x以后,这个模块用不了了,用的全都是pymysql,需要做个替换2 showmigrations:查看哪些记录更改了,但是没有同步到数据库中3 如果使用mysql,需要配置如下 1. 配置文件中配置:settings.py DATABASES =原创 2020-09-29 20:15:25 · 331 阅读 · 0 评论 -
python-django_简介与用法_注册登录展示案例
django 简介与用法1. 登录功能案例 连接到mysql1. urls.py 路由 url(r'^login', views2.login), url(r'^index', views2.index),2. views.py 视图函数def index(request): return render(request,'index.html')def login(request): if request.method == 'GET': r原创 2020-09-28 20:14:49 · 315 阅读 · 0 评论 -
python-django_安装及功能目录简介
django 安装与简介1. 安装方法django的版本:1.x 2.x 3.x 版本之间是有差距的1. 安装方式 在cmd中敲:pip3 install django==1.11.9 # 默认装最新版本(3.x) pycharm中--》setting--》解释器--》点+号,选择版本,安装 pycharm的Terminal中敲 pip3 install django==1.11.9 2. 装完以后,会多个一个django-admin的命令,在D:\pytho原创 2020-09-28 16:59:29 · 565 阅读 · 0 评论 -
python-验证GIL锁_io密集型_计算密集型_死锁_递归锁_线程池
MySQL基础操作1. 使用方法: **一: 通过图型界面工具 , 如 Navicat ** 二: 通过命令行敲命令来操作2. SQL ( Structure query language ) 结构化查询语言 SQL语言分为4个部分: DDL (定义) DML (操作) DQL (查询) DCL (控制) 1、DDL语句 数据库定义语言: 数据库、表、视图、索引、存储过程,例如CREATE DROP ALTER 2、DCL语句 数据库控制语言: 例如控制用户的原创 2020-09-19 20:27:06 · 352 阅读 · 0 评论 -
python-pymsql_sql注入攻击_增删改查_导入导出数据库
1. python 操作 mysql安装 pymysql 模块pycharm -> file -> settings -> pymysql1. 基本语法import pymysql# 1. 创建连接 host user password database (必写参数)conn = pymysql.connect(host='127.0.0.1',user='root',password='123456',database='db0824',charset='utf8',po原创 2020-09-19 19:52:38 · 433 阅读 · 0 评论 -
python-定时器_协程_greenlet模块_gevent模块_单线程的套接字并发_io模型
线程协程1. 线程池和进程池的shutdown# 主线程等待所有任务执行完成import timefrom concurrent.futures import ThreadPoolExecutorpool = ThreadPoolExecutor(3)def task(name): print('%s 开始'%name) time.sleep(1) print('%s 结束'%name) if __name__ == '__main__': for原创 2020-09-19 19:21:26 · 616 阅读 · 0 评论 -
python-生产者消费者模型_线程_线程互斥锁_GIL全局解释器锁
进程1. 开启进程的两种方式2. 进程对象其他属性和方法 -pid: 进程id号 os.getpid() -ppid: 父进程id号 os.getppid() -is_alive(): 当前进程是否存活 -terminate(): 关闭当前进程3. 守护进程 -父进程结束 子进程也跟着结束 -t.daemon=True4. 进程间数据隔离 -进程之间的数据是独有的,不同进程间不能相互作用5. 队列 -Queue: 实现进程间通信,同一台机器上的不同进程 -q原创 2020-09-19 18:11:44 · 276 阅读 · 0 评论 -
python-进程调度_进程对象及方法_互斥锁_队列_IPC
进程1. 进程调度 1. 先来先服务 2. 短作业优先 3. 时间片轮转 4. 多级反馈队列2. 僵尸进程 孤儿进程 1. 僵尸进程: 进程结束了,资源还没来得及回收 2. 孤儿进程: 主进程退出,子进程还没有结束,他就会被专门的进程接管3. 进程对象及其他方法# 1. windows : tasklist | findstr PID# 2. mac linux : ps aux | grep PID# 3. 进程对象: t = Process(target=task)原创 2020-09-19 18:08:59 · 443 阅读 · 0 评论 -
python-异常处理_异常类型_处理的异常的方法
异常处理1. 异常的定义 异常是程序运行时发生错误的信号 , 一旦程序出错就会产生一个异常 如果该异常没有被处理 , 该异常就会被抛出来 , 程序的运行随之终止2. 异常的组成 1. 具体哪一行代码抛出的异常 2. 异常的种类 : NameError IndexError KeyError AttributeError ValueError etc… 3. 异常的内容信息3. 处理异常的目的 为了增强程序的健壮性 , 即在遇到错误时程序不会崩溃 , 我们需要对异常进行处理原创 2020-09-19 18:01:38 · 564 阅读 · 0 评论 -
python-魔术方法_del_str_repr_call_类相关的魔术属性
魔术方法1. _del_ 析构方法''' 触发时机:当对象被内存回收的时候自动触发 [1.页面执行完毕回收所有变量 2.所有对象被del的时候] 功能:对象使用完毕后资源回收 参数:一个self接受对象 返回值:无'''class LangDog(): food = "改吃蔬菜" def __init__(self,name): self.name = name def __del__(self): print("析构方法被触发") obj = LangD原创 2020-09-19 17:58:03 · 303 阅读 · 0 评论 -
python-猴子补丁_垃圾回收机制_进程_守护进程
1. 猴子补丁功能: 拥有在模块运行时替换的功能例如: 将一个函数对象赋值给另外一个函数对象 , 把函数原本执行的功能给替换了# 案例import jsonimport ujson # pip3 install ujsondef monkey_patch(): json.__name__ = ujson.__name__ json.dumps = ujson.dumps json.loads = ujson.loads2. 垃圾回收机制 python 程序在运行原创 2020-08-20 20:06:27 · 246 阅读 · 0 评论 -
python-元类_class底层原理_自定义元类_单例模式_属性查找
元类 python中一切皆为对象1. 元类介绍 元类type ==实例化==> 类OldboyTeacher ==实例化==> 对象obj 基于python中一切皆为对象的概念分析出: 我们用class关键字定义的类本身也是一个对象 , 负责产生该对象的类称之为元类 (元类就是类的类) , 内置的元类为 type 一个类没有声明自己的元类 , 默认它的元类就是 type , 除了使用内置元类 type , 可以通过继承 type 来自定义元类 , 然后使用 metacl原创 2020-08-18 15:44:58 · 270 阅读 · 0 评论