python
文章平均质量分 51
bugsayend
海纳百川
展开
-
Python正则分组,后向引用,断言用法总结
一.python正则分组1.1 无命名分组在正则分组中,隐藏的全局分组的索引号为0,即整个正则表达式的匹配结果,然后从左到右,第一个括号表示第一组,第二个表示第二组,依此类推1.2 有命名分组命名分组就是给需要用正则匹配的内容组重新取一个名字,语法格式为:(?P<name>regex),其中那么表示匹配到的分组别名import rethe_str = "the target ip='192.168.0.1',version='1.0.0' "group_res = re.sear原创 2021-04-14 16:59:42 · 615 阅读 · 1 评论 -
经典算法问题Python实现
一. 约瑟夫环问题约瑟夫环问题描述:已知n个人(以编号1,2,3…n分别表示)围坐在一张圆桌周围。从编号为1的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列,求最后一个出圈人得编号。一般我们把编号从0~n-1,最后结果+1即为原问题的解。通常,我们会要求输出最后一位出列的人的序号。首先我们对n个人进行编号0, 1, 2,…, n-1然后第一次报数后出圈得人为x,那么此人的序列编号为(x+m) % n,推理依据如下:例如原创 2021-04-12 16:31:46 · 484 阅读 · 0 评论 -
Python中json自定义jsonschema进行json数据格式校验
一.python中jsonschma库python中有时候我们想对json数据进行键值对(key,value)数据的数据格式进行校验,因为数据类型不符合业务逻辑会导致业务逻辑代码执行报错,这时候我们可以对传入的json数据格式定义一个schema,定义数据模式,然后通过schema对data进行校验,python中我们进行进行如下校验:# _*_ coding: utf-8 _*_# !/usr/bin/pythonimport jsonschemaschema = { "type":原创 2021-04-08 00:16:53 · 1296 阅读 · 0 评论 -
Python异步编程之美
一. Python中线程thread实现以及调度高级语言通常都内置多线程的支持,Python也不例外,并且,Python的线程是真正的Posix Thread,而不是模拟出来的线程,一般线程是由操作系统进行直接调度的,例如当出现IO时,操作系统会自行实现实现线程切换,直接上代码:# _*_ coding: utf-8 _*_# !/usr/bin/python"""Author:mymCreate Date: -15:05User: EDZdescription:"""import ti原创 2021-03-16 20:23:54 · 95 阅读 · 0 评论 -
浅谈Python作为后台开发语言的可行性问题
一.Python语言简介背景 python语言是由荷兰数学和计算机科学研究学会的Guido van Rossum 于1990 年代初设计,至今为止已有30多年的历史,版本迭代也从python2到python3,如今python语言在机器学习,大数据等领域有着非常广泛的使用,至于有人质疑 Python 的性能,但是例如国外比较有名的社交网站 Instagram 的后台就是全套 Django 开发的,而且具有亿级用户吞吐量,所以了解一门技术之后好好深入学习提高,原创 2021-03-16 15:03:17 · 1567 阅读 · 0 评论 -
Pyecharts绘制地图(世界地图,城市地图,热力图)
一. pyechart绘制世界地图(城市地图,热力图)1.1 pyechart绘制世界地图from pyecharts import options as optsfrom pyecharts.charts import Mapfrom pyecharts.faker import Fakerimport os# 基础数据value = [95.1, 23.2, 43.3, 66.4, 88.5]attr = ["China", "Canada", "Brazil", "Russia",原创 2021-02-03 13:46:03 · 6115 阅读 · 1 评论 -
Python之自定义异常并抛出该异常
一. python中异常捕捉python中捕捉异常模块try/except,其中python中有一些自定义的异常,具体如下AttributeError 调用不存在的方法引发的异常EOFError 遇到文件末尾引发的异常ImportError 导入模块出错引发的异常IndexError 列表月越界引发的异常IOError I/O操作引发的异常,如打开文件出错等KeyError 使用字典中不存在的关键字引发的异常NameError 使用不存在的变量名引发的异常TabError 语句块缩进不正确原创 2021-01-04 14:42:53 · 1621 阅读 · 0 评论 -
Supervisor管理服务,实现异常死亡进程自动重启
一.Supervisor基础介绍1.supervisor是什么supervisor是用python语言开发的一个进程管理工具,官方介绍说: Supervisor: A Process Control System,Supervisor是一个客户端/服务器系统,允许其用户监视和控制类UNIX操作系统上的许多进程1.supervisord服务器主进程名为supervisord。它负责在自己的调用中启动子程序,响应来自客户端的命令,重新启动崩溃或退出的子进程,记录其子进程stdout和stderr 输出,原创 2020-12-30 09:58:12 · 1492 阅读 · 0 评论 -
sqlalchemy连接池机制
一.sqlalchemy连接池我写了一个简单的内网dns管理系统,用到flask和sqlalchemy。主要就是通过web页面和api对dns记录进行增删改查,所有这些操作都写入数据库,每次更改后产生一个celery任务来异步的重新生成dns的配置文件。看起来一个简单的问题,但是在celery中读取数据库的时候出现了问题,每天早上都会报错Mysql has gone away,我重启服务恢复正常,第二天早上又会出现同样的问题,但是在flask的路由下调用的所有数据库操作从未出现任何问题。咨询DBA,DB原创 2020-12-25 16:29:05 · 2716 阅读 · 0 评论 -
pandas数据分析之常用方法
前言:pandas是python中进行数据处理的一个非常有用的库,利用好pandas,可以十分方便的对数据进行处理以及统计分析直接上代码一. Pandas数据处理1.1 pandas中删除dataFrame中行/列dataFrame中删除满足条件的行df = df.drop(df[df.col_name >= 5].index)print(df)dataFrame中删除列df = df.drop('col_name', axis=1)dataFrame中使用apply方法df[原创 2020-12-10 12:42:33 · 208 阅读 · 0 评论 -
Python正则使用总结
一.正则基础 正则表达式在所有语言中都是一个比较常见的文本匹配规则用法,而且正则的写法大同小异,python中re模块是Regular Expression的缩写 ,又称正规表达式,用好正则,在文本检索匹配方面会有很大帮助,会达到事半功倍的效果,下面介绍一下python中正则基础语法:^ 匹配字符串的开头$ 匹配字符串的末尾。. 匹配任意字符,除了换行符,当re.DOTALL标记被指定时,则可以匹配包括换行符的任意字符。[…] 用来表示一组字符,单独原创 2020-11-30 11:42:52 · 90 阅读 · 0 评论 -
linux下python,Virtualenv, Mysql虚拟环境等源码安装部署
一.linux-centos中python3.6.8安装linux中安装python可以通过源码下载tar包进行安装提供一个python源码包地址:https://www.python.org/ftp/python,其中包含python各种不同发行版本的安装包,下面以安装python3.6.8版本为例下载python3.6.8源码包:wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tar.xz下载完后解压tar xvf pyth原创 2020-11-26 13:51:23 · 294 阅读 · 0 评论 -
Python中try except else finally中执行原理
在python中,异常捕捉常用的方法是try…except…方法,其中如果在try…except方法中使用了else以及finally后,异常捕捉的执行逻辑会存在差异1.try/except使用,执行顺序def func(): i = 0 try: i += 1 print('执行try中逻辑') j = i / 0 except Exception as e: print('执行异常中的代码逻辑', e)fun原创 2020-11-06 16:54:02 · 1022 阅读 · 1 评论 -
python中实现Mysql数据回滚rollback()以及原理分析
python中实现Mysql数据回滚rollback()以及原理分析1.python中游标多次execute提交数据代码import pymysqlclass MysqlDBUtils(object): def __init__(self, host, port, username, password, db): self.host = host self.port = port self.username = username原创 2020-08-26 12:52:52 · 10897 阅读 · 0 评论