![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
S1ls
python 工程师
展开
-
记一次 FLask + docker +Gunicorn + gevent 部署服务遇见的问题
在使用FLask + docker +Gunicorn + gevent部署服务的时候, 在请求服务的时候, 发现子 worker 一直子重启, 解决后在此记录一下.报错信息如下[2021-04-16 10:24:51 +0000] [1] [WARNING] Worker with pid 10 was terminated due to signal 11[2021-04-16 10:24:51 +0000] [19] [INFO] Worker exiting (pid: 19)/usr/li原创 2021-04-17 09:20:03 · 5141 阅读 · 3 评论 -
Python __missing__ 魔法方法
首先从使用一个字典开始, 当以d[key] 方式取出一个不存在的值的时候, 会抛出 KeyError 的异常d = {'a': 1, 'b': 2, 'c': 3}print(d['a'])print(d['f'])# >>>>>>>>>>1Traceback (most recent call last): File "D:/workspace/example-code/03-dict-set/test.py", line .原创 2020-10-05 16:12:15 · 1820 阅读 · 0 评论 -
python日志系统
先贴上代码import logging# 获取 logging 对象logger = logging.getLogger(__name__)# 增加一个headerheader = logging.FileHandler('./demo.log')# 格式化方式logger_format = logging.Formatter('%(asctime)s %(created)f %(filename)s %(funcName)s %(levelname)s %(levelno)s %(li.原创 2020-06-28 18:04:43 · 221 阅读 · 0 评论 -
python 部分魔法方法整理
Python 魔法方法__doc__函数的文档字符串, 没有为 None; 不会被子类继承__name__函数的名称__qualname__该函数的 qualified name__module__该函数所属模块的名称,没有则为 None__defaults__由具有默认值的参数的默认参数值组成的元组,如无任何参数具有默认值则为 None...原创 2020-04-28 14:54:05 · 161 阅读 · 0 评论 -
Flask 1.0x 方法, 变量汇总(包括蓝图)。 持续更新~~~~~~~~~
Flask 类初始化参数import_name: 应用程序包的名称static_url_path: 可用于为Web上的静态文件指定其他路径。默认为static_folder文件夹的名称。static_folder: 访问static_url_path提供的静态文件的文件夹的路由。默认为'static' 应用程序根路径中的文件夹static_host: 添加静态路由时要使用的主机。...原创 2020-04-24 14:38:42 · 346 阅读 · 0 评论 -
flask-sqlalchemy使用上下文管理器更优雅的commit
在我们使用 flask-sqlalchemy 的时候, 在提交事务的时候, 都需要 commit:try: user = User() .... db.session.commit()except: db.session.rollback()现在可以使用更优雅的方式去做这件事:from flask_sqlalchemy import SQLAlchemy as _SQLAlche...原创 2020-03-29 13:34:52 · 1144 阅读 · 0 评论 -
python使用@contextmanager来定义上下文管理器
python 上下文管理器上下文管理器是在Python2.5之后加入的功能,可以在方便的需要的时候比较精确地分配和释放资源, with便是上下文管理器的最广泛的应用; 比使用try:…finally:f.close方便的多.with open("test/test.txt","w") as f: f.write("hello")上下文管理协议:实现了__enter__和__ex...原创 2020-03-29 13:26:16 · 232 阅读 · 0 评论 -
flask_sqlachemy封装增删改方法
import enumfrom flask import Flaskfrom flask_sqlalchemy import SQLAlchemyapp = Flask(__name__)app.config["SQLALCHEMY_DATABASE_URI"] = "mysql+pymysql://root:199628@127.0.0.1:3306/tests"app.confi...原创 2019-11-11 18:28:25 · 371 阅读 · 0 评论 -
ubuntu python3.5 升级python3.7后终端打不开的问题(已解决)
今天因为和公司其他大佬环境冲突的问题, 将ubuntu自带的python3.5 升级为3.7,并且换了软连接。python 连接为python3.7,发生了终端打不开的问题。解决方法如下:1.Ctrl + Alt + f12.打开/usr/bin/gnome-terminal 将首行的 #!/usr/bin/python3 修改为 #!/usr/bin/python3.53.cd /us...原创 2019-11-09 15:06:06 · 2738 阅读 · 3 评论 -
python json.loads() json转字典 保持顺序不变
今天在开发中, 需要读取本地的 Json 数据, 转化成字典,然后进行数据的处理。必须保证字典中的顺序 和 Json 的顺序一样, 不能改变import jsonfrom collections import OrderedDict # 将json格式字符串输出原有顺序json.loads(str,object_pairs_hook=OrderedDict)...原创 2019-11-08 15:07:16 · 4607 阅读 · 0 评论 -
Flask数据库多对多演练
需求:学生表和课程表一个学生可以选择多门课程一门课程可以被多个学生选择所以是多对多的关系学生表:id (主键)name课程表:id(主键)name关联表:学生表.id (主键)课程表.id(主键)定义表模型tb_student_course = db.Table('tb_student_course', ...原创 2019-11-05 22:29:54 · 101 阅读 · 0 评论 -
ubuntu 安装 pip3 报错 python3-pip : 依赖: python-pip-whl (= 8.1.1-2ubuntu0.4) 但是 9.0.1-2.3~ubuntu1.(已解决)
当我在ubuntu 16.04 安装pip3的时候发生以下错误:Reading package lists... DoneBuilding dependency tree Reading state information... DoneSome packages could not be installed. This may mean that you havereque...原创 2019-10-06 10:43:39 · 10471 阅读 · 4 评论 -
Django DRF 自定义捕获数据库和Redis错误
在 DRF 框架中, 给我们自动捕获了视图异常,但是一些数据库异常却没有处理,我们需要自己处理:from rest_framework.views import exception_handler as drf_exception_handlerimport loggingfrom django.db import DatabaseErrorfrom redis.exceptions im...原创 2019-09-02 16:24:58 · 357 阅读 · 0 评论 -
matplotlib中文显示乱码问题解决
在使用 matplotlib 画图的时候可能会有中文显示乱码的问题,提供两种解决方式:第一种:# 在代码中加入以下两行plt.rcParams['font.sans-serif']=['SimHei']plt.rcParams['axes.unicode_minus']=False第二种下载中文字体(黑体,看准系统版本)下载 arial unicode ms 字体到 /h...原创 2019-08-17 16:41:21 · 1080 阅读 · 0 评论 -
python 安装虚拟环境出现错误 Error while finding module specification for 'virtualenvwrapper.hook_loader'
错误如下:/usr/local/bin/python3: Error while finding module specification for 'virtualenvwrapper.hook_loader' (ModuleNotFoundError: No module named 'virtualenvwrapper')virtualenvwrapper.sh: There was ...原创 2019-07-28 16:27:55 · 12415 阅读 · 12 评论 -
flask 实用 nginx 反向代理 得到ip全部为127.0.0.1获取真实ip
在我们实用 NGINX 反向代理的时候, 再有需求获取用户 ip 的时候,会发现获取的ip都是127.0.0.1.这是因为,我们在实用 nginx 反向代理的时候,传过来的ip都为本地ip.解决办法如下在 nginx 中添加如下配置:server { listen 9628; server_name localhost; ...原创 2019-08-02 15:32:47 · 3060 阅读 · 0 评论 -
mac使用sz和rz 远程上传下载lrzsz
传送门转载 2019-07-19 17:59:44 · 934 阅读 · 0 评论 -
python中多进程子进程使用input()为什么运行会报EOFError
关于python3多进程中,子进程中从键盘录入值,运行报错问题。 在python中,主进程允许从键盘录入值。而子进程是不允许的。原创 2018-09-12 21:28:29 · 4699 阅读 · 1 评论 -
python中一些简单的vim编译器命令
i 在光标当前字符前插入内容I 在光标所在行首插入内容a 在光标字符后插入内容A 在光标所在行尾插入内容o 在光标处向下新开一行并在行首插入内容O 在光标处向上新开一行并在行首插入内容h 左移一个字符j 下移一行k 上移一行l 右移一个字符M 把光标定位在当前屏幕中间行第一字符处L 把光标定位在当前屏幕最后行第一字符处[行号] +G 不加行号移动到文件最后一行;加行号移动到...原创 2018-09-19 08:55:43 · 205 阅读 · 0 评论 -
在python3中,列表,数组,字典与字符串的强转
在python3中,将存储类型转化为字符串。只需要用str()函数: 例如:a=[1,2,3] —–> str(a) ——>”[1,2,3]” 元组和字典也同上 但是在字符串转化为元组,列表,字典时,确实花我一番时间。经过找资料,询问他人,找到一个很好解决此类问题的函数:eval, 下边将附图展示这一效果: 注意...原创 2018-09-15 08:01:24 · 2373 阅读 · 0 评论 -
python爬虫中带上Cookie,Referer,User-Agent的作用
Cookie:在我们每次访问对方服务器的时候,服务器都会为在我们本地设置cookie,为什么要设置cookie呢?因为对方的服务器要了解我们的身份。在我们下一次访问该服务器的时候,都会带上这个cookie,表明我们的身份。(例如我们在登陆某个网站的时候,在一段时候内在次进行访问,不需要再次登录)Referer:这个请求参数的作用主要是标识着请求是从哪个页面过来的。例如:在登陆某个网站的时候,登陆...原创 2019-01-12 13:16:25 · 5408 阅读 · 0 评论 -
Python匿名函数
Python 匿名函数⽤lambda关键词能创建⼩型匿名函数。这种函数得名于数的标准步骤。lambda函数的语法只包含⼀个语句,如下:lambda [arg1 [,arg2argn]]:expressi如下实例:sum = lambda arg1, arg2: arg1 + arg2#调⽤sum函数print "Value of total : ", sum( 10, 20 )pr...原创 2019-01-19 18:24:45 · 109 阅读 · 0 评论 -
Python单例模式
Python单例模式Python单例模式,和字面上的意思是差不多,只能创建一个实例化对象。当我们在资源共享的时候,避免由于资源操作的时候导致性能或者损耗的时候,或者是方便资源之间的通信的时候,我们就会用上单例模式。class A: __instance = None # 定义一个类变量 def __new__(cls, *args, **kwargs): i...原创 2019-01-19 18:39:24 · 211 阅读 · 0 评论 -
Python3中__new__方法和__init__方法的区别
我们使用面向对象编程,接触最多的魔法方法就是__init__方法。我们都知道init方法是初始化对象的,但是对象从哪儿来的呢?其实,在我们创建一个实例对象的时候,另外一个魔术方法__new__就为我们创建了对象,并且将对象返回给__init__,让__init__为我们初始化。但是我们为什么没有写__new__方法呢?因为我们继承的父类中有这个方法,自动帮我们做好了。总结来说:new方法帮我们...原创 2019-01-22 18:45:59 · 863 阅读 · 0 评论 -
关于WSGI,uwsgi,uWSGI的作用和区别
WSGI,uwsgi,uWSGIWSGI:是一种通信协议:Python应用程序或框架和Web服务器之间的一种接口uwsgi:线路协议,在uWSGI服务器上与其他网络服务器进行数据的通讯uWSGI:服务器,实现WSGI和uwsgi协议...原创 2019-03-05 10:09:18 · 621 阅读 · 0 评论 -
解决python2虚拟环境中MySQL-Python安装失败问题
本人在python2.7环境中安装MySQL-Python得时候报了以下错误:_mysql.c:44:10: fatal error: 'my_config.h' file not found #include "my_config.h" ^~~~~~~~~~~~~ 1 error generated. error: command 'cc' f...原创 2019-04-09 10:42:28 · 772 阅读 · 0 评论 -
mysql 连接出现 ’cryptography is required for sha256_password or caching_sha2_password‘ (已解决)
在使用Python和mysql进行交互的时候,出现以下错误,而终端连接数据正常:cryptography is required for sha256_password or caching_sha2_password经过大佬博客的讲解终于解决问题。解决方法请点击...转载 2019-04-17 09:51:11 · 11107 阅读 · 0 评论 -
生产者消费者模式
生产者消费者模式的说明为什么要使用生产者和消费者模式 在线程世界里,生产者就是生产数据的线程,消费者就是消费数据的线程。在多线程开发当中,如果生产者处理速度很快,而消费者处理速度很慢,那么生产者就必须等待消费者处理完,才能继续生产数据。同样的道理,如果消费者的处理能力大于生产者,那么消费者就必须等待生产者。为了解...原创 2019-05-09 15:42:33 · 131 阅读 · 0 评论 -
python flask框架搭建和基本配置
Flask框架基本配置配置文件:import loggingfrom redis import StrictRedisclass Config(object): """项目的配置""" SECRET_KEY = "iECgbYWReMNxkRprrzMo5KAQYnb2UeZ3bwvReTSt+VSESW0OB8zbglT+6rEcDW9X" # 为数据库添...翻译 2019-07-16 13:57:42 · 448 阅读 · 0 评论 -
python requests模块使用 进行重试(retrying模块)
requests 重试话不多说,贴代码import requestsfrom retrying import retryheaders = {}@retry(stop_max_attempt_number=3) # 最大重试3次,3次全部报错,才会报错def _parse_url(url): print(url) response = requests.get(...转载 2019-07-12 15:23:45 · 2089 阅读 · 0 评论 -
Python3 sqlacodegen 根据已有数据库生成 ORM 使用的 model.py
2019独角兽企业重金招聘Python工程师标准>>> ...转载 2019-07-29 14:39:50 · 863 阅读 · 0 评论 -
tcp 三次握手四次挥手
详情参考以下网址 https://blog.csdn.net/qzcsu/article/details/72861891转载 2018-09-16 17:41:06 · 84 阅读 · 0 评论