
Python
Tomonkey
Java Coder, Python Coder...
展开
-
Python简单的多线程例子
示例代码import threadingimport timefrom datetime import datetimefrom concurrent.futures.thread import ThreadPoolExecutordef tell(i): a = "end " + str(i) print(a) print(datetime.now()) print(threading.currentThread()) time.sleep(10)原创 2022-03-01 21:47:09 · 511 阅读 · 0 评论 -
PyMySQL与MySQL连接池相关的知识点
1. 常规用法如果使用PyMySQL,常见的方法如下connection = pymysql.connect( host="localhost", port=3306, database="forest", user="root", password="123456")with connection.cursor() as cursor: print(cursor) cursor.execute("select count(*) from u原创 2022-02-18 15:22:41 · 840 阅读 · 0 评论 -
celery远程调用其他服务器上的任务
Celery可以通过send_task调用发起其他服务器上的任务,但是需要连接上同一个broker前提:服务器A已经运行了celery的worker以及beat服务,现在服务器B,需要发起A上的任务say_hello服务器B的关键代码如下:from celery import Celeryfrom ./algo_celery_config import CeleryConfigtry: data = {"a": "111", "b": "222"} app = Celery('原创 2021-12-14 13:11:07 · 2085 阅读 · 0 评论 -
Mac下一行代码解决Matplotlib中文显示乱码问题
实测发现,一行代码即可显示中文,无需安装字体如果是pip install matplotlib然后没有多余设置,一般显示中文时出现如下问题如何解决呢?首先看一下matplotlib自己支持的字体有哪些,如下代码from matplotlib.font_manager import FontManagermpl_fonts = set(f.name for f in FontManager().ttflist)print('all font list get from matplotlib.f原创 2021-11-11 23:14:00 · 1126 阅读 · 0 评论 -
Django根据model生成表,同时生成字段注释
Django的开发方式都是先写Model,然后通过makemigrations 和 migrate来生成表。但是有个麻烦的问题就是,Django默认并没有生成注释的功能。后来发现GitHub上有一个人写好了相关的组件,通过model的help_text完成即可。链接如下,记得按照教程来:https://github.com/starryrbs/django-comment-migrate...原创 2021-05-11 17:42:20 · 1970 阅读 · 0 评论 -
Django的时区问题讨论和建议设置
首先,使用的配置如下settings.pyUSE_TZ = TrueTIME_ZONE = 'Asia/Shanghai'启用 USE_TZ = True 后,处理时间方面,有两条 “黄金法则”:保证存储到数据库中的是 UTC 时间;在函数之间传递时间参数时,确保时间已经转换成 UTC 时间;附录1. 获取时间差异配置TIME_ZONE = 'Asia/Shanghai'USE_TZ = True当前北京时间2021-05-11 13:26:34from datet原创 2021-05-11 14:34:42 · 150 阅读 · 0 评论 -
pylint修改配置禁用warning的三种方法
比如,需要禁用no-member的提示第一种,具体代码处修改class Contact(models.Model): ...... if self.id in agreements_ids: # pylint: disable=no-member第二种,参数传入在执行pylint命令时pylint --disable=no-member ...第三种,修改.pylintrc文件[master]disable = no-member...原创 2021-05-07 10:57:53 · 1433 阅读 · 0 评论 -
Django使用pymysql连接MySQL数据库
按照以下两步解决即可1. 安装pymysqlpip install pymysql2. 增加设置在settings.py同目录下的__init__.py中增加代码import pymysqlpymysql.install_as_MySQLdb()原创 2021-01-25 22:59:26 · 501 阅读 · 0 评论 -
Python的logging模块删除过期旧日志没起作用
在一开始配置日志的时候,没有设置留存多久,后来设置留存多久后,过了几天之后观察,发现以前的超过天数的日志都还在。后来经过实际验证发现,设置留存多少天之后,要把所有日志清空,重新启动应用,才能起作用。否则旧日志超过天数的是不会被自动清理的。...原创 2021-01-25 16:59:46 · 395 阅读 · 0 评论 -
Python有关dict、list、tuple技巧
为列表项为dict类型的列表去重 x = [] x.append({"name": "apple", 'level': 1, "id": 1, "parent_id": 0}) x.append({"name": "apple", 'level': 1, "id": 1, "parent_id": 0}) x.append({"name": "apple", 'level': 2, "id": 2, "parent_id": 1}) x = [dict(t) for t in set([tup.原创 2020-12-16 19:29:50 · 138 阅读 · 0 评论 -
Python装饰器常用场景以及代码示例
本文会记录在开发中常遇到的Python装饰器经常用到的场景和代码示例1. 函数运行时间def get_running_time(func): """ 装饰器,计算函数的运行时间 """ def call_func(*args, **kwargs): func_name = str(func.__name__) logging.info("start " + func_name) start_time = time.time(原创 2020-11-18 14:11:47 · 162 阅读 · 0 评论 -
Django如何使用snowflake自定义生成主键而不是自动生成主键?
之前ID都是用自增实现的,那现在想用Snowflake算法生成主键,要做什么改动呢?目录背景介绍实现方案方案1 - 手动添加主键方案2 - 重写save()方法方案3 - 使用 Django Signals 中的pre_save()方案4 - 自定义django.db.backends 或 Field总结背景介绍目前工程框架如下Djangodjango.db.backends.postgresql_psycopg2目前models声明和save()方法如下# models.py# 使用的原创 2020-06-17 13:25:14 · 1991 阅读 · 3 评论 -
Ubuntu安装和使用Supervisor管理Python脚本
1. 背景有的时候,我们只是需要一直启动Python的一个脚本,而不是Django服务或者Flask等web服务。比如只是一个与定时有关的的脚本,每10s执行一次任务的脚本。那么我们可以选择Supervisor来管理脚本。这里我们用的是Ubuntu进行部署和安装,Ubuntu自带Python环境,可以用命令python3 --version看看2. 安装Supervisor命令如下$ sudo apt-get install supervisor安装完成之后在/etc/supervisor原创 2020-06-11 14:14:16 · 930 阅读 · 0 评论 -
Ubuntu上pip install psycopg2报错pg_config executable not found
参考 https://stackoverflow.com/questions/11618898/pg-config-executable-not-found在Ubuntu操作系统上直接pip install psycopg2是会报错的Error: pg_config executable not found.Please add the directory containing pg_config to the PATHor specify the full executable path .原创 2020-06-11 11:06:27 · 1964 阅读 · 0 评论 -
Django取消CSRF限制
在前后端分离的时候,前端请求时接口中请求头没有CSRF token,然后就报错了Reason given for failure: CSRF token missing or incorrect. In general, this can occur when there is a genuine Cross Site Request Forgery, or when Django's CSRF mechanism has not been used correctly. For原创 2020-06-04 17:24:45 · 2218 阅读 · 1 评论 -
Python psycopg2使用SimpleConnectionPool数据库连接池以及execute_batch批量插入数据
有关快速插入大量数据到数据库的一个比较好的博文如下:Fastest Way to Load Data Into PostgreSQL Using Python 其中文末还有提到集中不同方式的对比,十分的震撼,可以看看1. 连接池和批量插入示例代码如下import psycopg2import psycopg2.extrasfrom psycopg2.pool import SimpleConnectionPoolfrom contextlib import contextmanager# .原创 2020-06-02 17:56:00 · 3981 阅读 · 1 评论 -
Docker - 入门DockerCompose与Django
本文说明如何使用docker-compose运行一个简单的Django/PostgreSQL应用。在这之前,记得先安装好docker和docker-compose参考链接 https://docs.docker.com/compose/django/定义工程的镜像首先,先列出三个重要的会使用到的文件DockerfilePython依赖文件docker-compose.yml文件接下来,我们从工程创建一步步开始创建一个空文件夹即工程的文件夹,会包含工程的代码,以及以上三个列出的文件原创 2020-05-19 10:16:44 · 345 阅读 · 0 评论 -
Django读取项目内json文件,路径错误找不到文件
在Django工程里面写了一个通用方法,读取工程内文件里面的json内容def read_json_file(file_path): data = {} with open(file_path, 'r') as f: data = json.load(f)return data路径写的是相对路径,相对调用该方法的文件来写的,但是调用的时候找不到文件是为什么呢?因为Django是manage.py开始运行的,所以相对路径,相对manager.py来写就会读取到。试试原创 2020-05-13 16:10:17 · 2261 阅读 · 0 评论 -
Python出错pip is configured with locations that require TLS/SSL...
Mac系统下面一行命令解决brew reinstall python原创 2020-05-08 15:35:04 · 285 阅读 · 0 评论 -
pip使用其他镜像源,避免访问较慢
如果觉得pip下载包访问很慢,可以使用其他镜像源替代,比如清华大学提供的镜像源清华大学开源软件镜像站 - pypi 镜像使用帮助pypi 镜像使用帮助pypi 镜像每 5 分钟同步一次。临时使用pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package注意,simple 不能少, 是 https 而不是...原创 2020-04-22 10:32:15 · 623 阅读 · 0 评论 -
Python高级写法,通过文件名称导入模块
参考链接:https://python3-cookbook.readthedocs.io/zh_CN/latest/c10/p10_import_modules_using_name_given_in_string.html如下代码和文件夹示意图abc.pyimport osimport pkgutilimport importlibif __name__ == '__ma...原创 2020-04-10 18:32:30 · 927 阅读 · 0 评论 -
Django框架,runserver 8080之后程序做了什么 - 上篇
在初始话化一个Django工程之后,往往会在根目录的命令行,敲入python manage.py runserver 8080运行起来工程。并打印如下日志(venv) C:\Users\Administrator\PycharmProjects\webdemo>python manage.py runserver 8080Watching for file changes with St...原创 2020-04-10 17:57:10 · 899 阅读 · 0 评论 -
Django使用GraphQL入门
推荐任何在生产环境下的 GraphQL 服务都启用 GZIP,并推荐在客户端请求头中加入:Accept-Encoding: gzip原创 2020-03-29 00:25:07 · 340 阅读 · 0 评论 -
Django与MySQL数据库相关的问题记录
https://stackoverflow.com/questions/55657752/django-installing-mysqlclient-error-mysqlclient-1-3-13-or-newer-is-required在配置文件__init__.py中添加如下import pymysqlpymysql.version_info = (1, 3, 13, "fin...原创 2020-03-29 00:23:57 · 183 阅读 · 0 评论 -
RobotFramework相关资源收录
官方UserGuide英文:http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html中文:https://robotframework-userguide-cn.readthedocs.io/zh_CN/latest/原创 2020-03-26 17:44:18 · 169 阅读 · 0 评论 -
pip3 “TypeError: 'module' object is not callable” after update
Mac上今天正常升级pip3 install --upgrade pip之后,运行pip3 --version后出现问题,如下~ pip3 -versionTraceback (most recent call last): File "/Applications/Xcode.app/Contents/Developer/usr/bin/pip3", line 10, in <mod...原创 2019-11-23 15:55:00 · 1198 阅读 · 0 评论 -
Django系列:(1)PyCharm下创建并运行我们的第一个Django工程
本篇文章为翻译文章。有不对的地方和措辞还望指正 文章来源:https://www.jetbrains.com/help/pycharm/5.0/creating-and-running-your-first-django-project.html?origin=old_help准备工作: 假设读者已经安装好python 2x或3x,以及安装好Django,以及Pycharm。我的配置: –翻译 2016-03-18 12:34:39 · 17801 阅读 · 0 评论