![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
易大夫
这个作者很懒,什么都没留下…
展开
-
python 装饰器
本文重点:解决了类里面定义的装饰器,在同一个类里面使用的问题,并实现了装饰器的类属性参数传递 目录: 一、基本装饰器 二、在类里定义装饰器,装饰本类内函数 三、类装饰器 正文: 一、基本装饰器 装饰不带参数的函数 def clothes(func): def wear(): &nbs...转载 2022-02-15 16:47:06 · 202 阅读 · 0 评论 -
python 第三方库
代替 print 进行打印,上面可以通过设置关闭打印功能安装 icecreampip install icecream使用打印功能from icecream import ic def test(num): return numic(test(4))输出结果为: 4第二种打印from icecream import ic def test(user): if user: ic() else: ic()test(True)原创 2021-07-16 19:26:38 · 105 阅读 · 0 评论 -
pip 源配置
源地址中国科学技术大学 : https://pypi.mirrors.ustc.edu.cn/simple豆瓣:http://pypi.douban.com/simple/清华源:https://pypi.tuna.tsinghua.edu.cn/simplewindows 下配置清华源Windows下,你需要在当前对用户目录下(C:\Users\xx\pip,xx 表示当前使用对用户,比如张三)创建一个 pip.ini在pip.ini文件中输入以下内容:[global]index-url =原创 2021-07-12 19:34:16 · 347 阅读 · 0 评论 -
python 二维数组转一维数组
from itertools import chaina = (('test'),('test1'),('test2'))b = list(chain.from_iterable(a))输出:['tets','test1','test2']原创 2021-05-18 10:59:37 · 210 阅读 · 0 评论 -
python 正则判断字符串是否为版本号
正确版本号格式为:以数字开头和结尾,数字之间可以用 . 连接,但不能连续出现两个及两个以上的点解题思路:1,首先对传入的字符串进行是否有两个及以上连续的点出现,若有则版本号不正确,若没有则进入第二步判断2,首先以1到n个数字开头,然后将一个点和1到n个数字当做一组,然后该组可以出现0-10次,若验证通过,则为正确版本号,若验证不通过,则说明版本号不正确import rerule = "\.{2,10}"rule2 = "^\d+(\.\d+){0,10}$"# 以下内容为实例str = "原创 2021-05-12 20:20:46 · 871 阅读 · 0 评论 -
Django2.2报错 AttributeError: str object has no attribute decode
Django2.2报错 AttributeError:'str' object has no attribute 'decode'准备将 Django 连接到 MySQL,在命令行输入命令 python manage.py makemigrations 后报错: AttributeError: 'str' object has no attribute 'decode'出现这个错误之后可以根据错误提示找到文件位置,打开 operations.py 文件,找到以下代码:def last_executed转载 2021-05-07 16:18:53 · 1492 阅读 · 0 评论 -
python 两个时间段过滤求交集(工时计算)
import time# 输入的开始时间和结束时间# start = "2020-01-03 10:00:00"# end = "2020-01-03 13:30:00"# start = "2020-01-03 12:00:00"# end = "2020-01-03 13:30:00"## start = "2020-01-03 12:10:00"# end = "2020-01-03 13:00:00"#start = "2020-01-03 13:00:00"end = "原创 2021-01-08 14:33:59 · 1797 阅读 · 1 评论 -
jupyter 自由切换环境
1.激活你要用的环境:conda activate 本地环境名称2.继续输入:conda install ipykernel3.conda环境注入:python -m ipykernel install --user --name 环境名称 --display-name "想要在jupyter上显示的名称"4.执行该命令大概率会出现以下问题ImportError: cannot import name 'AsyncGenerator'5.在环境中将 prompt-toolkit 依赖原创 2021-01-07 15:10:59 · 675 阅读 · 0 评论 -
python 遇到的编码问题解决
import chardetbyteString = b"hello world"byteString = '离离原上草,一岁一枯荣'.encode('gbk')# byteString = '离离原上草,一岁一枯荣'.encode('utf-8')# byteString = '最新の主要ニュース'.encode('euc-jp')encoding = chardet.detect(byteString).get("encoding")decodeString = byteString.de原创 2021-01-04 15:42:33 · 93 阅读 · 0 评论 -
Python 第三方包集合
click组建 cli 命令(command)原创 2020-12-28 10:05:20 · 131 阅读 · 0 评论 -
Django 日志切分
当使用日志切分时,往往会出现以下错误原因分析:当通过 python manager.py runserver 启动django时,启动了两个进程通过查看文档发现下面的意思是,当你禁用自动重载而且你的服务正在运行中,那么此时,你对 python 代码做的修改可能不会生效,如果这个 python 模块已经被加载进内存的话想要正常运行日至切割,执行下面命令即可python manager.py runserver --noreload 127.0.0.1:8000...原创 2020-10-30 14:01:16 · 332 阅读 · 0 评论 -
使用pymysql 获取键值对形式的数据
cursor,conn = getCursorConn() fetch_sql = "select index_length,index_width,times from xin_daba_unit_grid where uid = %s" cursor = conn.cursor(cursor=pymysql.cursors.DictCursor) cursor.execute(fetch_sql,uid) closeCurseConn(cursor,conn)着重关注cursor=pym.原创 2020-10-29 15:34:10 · 633 阅读 · 0 评论 -
Python模块之Logging(四)——常用handlers的使用
一、StreamHandler 流handler——包含在logging模块中的三个handler之一。 能够将日志信息输出到sys.stdout, sys.stderr 或者类文件对象(更确切点,就是能够支持write()和flush()方法的对象)。 只有一个参数: class logging.StreamHandler(stream=None) 日志信息会输出到指定的stream中...转载 2020-10-28 11:48:14 · 138 阅读 · 0 评论 -
python3.9滚烫出炉
Python3.9,「千呼万唤始出来」。先来速看下此次发布版本的重点。新语法特性:PEP 584,为 dict 增加合并运算符。PEP 585,标准多项集中的类型标注泛型。PEP 614,放宽对装饰器的语法限制。新内置特性:PEP 616,移除前缀和后缀的字符串方法。新标准库中的特性:PEP 593,灵活的函数和变量标注。添加了 os.pidfd_open() ,允许不带竞争和信号的进程管理。解释器方面的改进:PEP 573,从 C 扩展类型的方法快速访问模块状态。PEP 617,转载 2020-10-10 17:07:51 · 216 阅读 · 0 评论 -
selinium 使用遇坑
1,窗口最大化driver.maximize_window()2,找元素,填充数据# 找到输入用户名的搜索框 并输入账号username = driver.find_element_by_id('username').send_keys(cf.get('login', 'username'))3,找元素,点击元素login_btn = driver.find_elements_by_xpath(cf.get('login', 'button'))[0]login_btn.click()原创 2020-09-03 15:25:35 · 155 阅读 · 0 评论 -
selenium 调用 ie 浏览器以及数据数据过慢问题解决
使用 selenium 输入内容过慢问题使用 selenium 调用 ie 浏览器出现输入框输入数据过慢问题原因分析:使用 IEDriverServer.exe 版本为 64 位的原因将 IEDriverServer.exe 版本换为 32 位即可使用 selenium 调用 ie 浏览器1,下载 IEDriverServer.exeIEDriverServer.exe提取码:sx8h2,将 IEDriverServer.exe 放置到合适位置将 IEDriverServer.exe 放原创 2020-09-03 13:47:40 · 1107 阅读 · 0 评论 -
DataFrame 类型转换为 list 类型
文章目录Dataframe 数据如下第一种方案第二种方案Dataframe 数据如下第一种方案df3.values.tolist()第二种方案np.array(df3).tolist()原创 2020-08-20 09:54:37 · 1977 阅读 · 0 评论 -
super理解
super的理解Python3 之后的类都为新式类,多继承按照广度优先策略进行继承super 在多继承中获取的类为继承顺序的下一个类例子1此例子中 super继承顺序D->A->B 到此super就继承完毕class Base: def __init__(self): print('Base.__init__')class A(Base): def __init__(self): super().__init__()原创 2020-06-18 11:50:31 · 130 阅读 · 0 评论 -
python文件打包为exe文件
1,安装pywin32pip install pywin322,安装pyinstallerpip install pyinstaller3,切换到要封装的py文件目录下,执行以下命令pyinstaller -F fz.py会生成以下两个目录点击dist里面的exe文件即可原创 2020-06-12 14:35:03 · 114 阅读 · 0 评论 -
socket主动推送数据
import socketimport base64import hashlibfrom queue import Queuefrom threading import Threadimport structimport copyimport jsonimport time# from XX.redis_db import RedisDb# from utils.summary import summary# from utils.redis_util import RedisUt转载 2020-06-08 11:22:28 · 1003 阅读 · 1 评论 -
python小黄猫--将时间戳转换为 2018-10-09 16:00:00格式并返回
def stamp_to_datetime(stamp):“”"将时间戳(1539100800)转换为 datetime2018-10-09 16:00:00格式并返回:param stamp::return:“”"time_stamp_array = datetime.utcfromtimestamp(stamp)date_time = time_stamp_array.strftime("%Y-%m-%d %H:%M:%S")# 如果直接返回 date_time则为字符串格式2018-1原创 2020-05-29 10:24:31 · 236 阅读 · 0 评论 -
python小黄猫--直角坐标系转换为经纬度
def millerToLonLat(x,y):“”"将平面坐标系中的x,y转换为经纬度,利用米勒坐标系:param x: x轴:param y: y轴:return:“”"L = 6381372 * math.pi2W = LH = L/2mill = 2.3lat = ((H/2-y)2mill)/(1.25H)lat = ((math.atan(math.exp(lat))-0.25*math.pi)180)/(0.4math.pi)lon = (x-W/2)*360/W#原创 2020-05-29 10:23:43 · 1993 阅读 · 1 评论 -
python小黄猫--将字符串日期格式转换为时间戳
def datetime_to_stamp(date_time):“”"将字符串日期格式转换为时间戳 2018-10-09 16:00:00==>1539100800:param date_time::return:“”"# 字符类型的时间time_array = time.strptime(date_time, “%Y-%m-%d %H:%M:%S”)time_stamp = int(time.mktime(time_array))return time_stamp...原创 2020-05-29 10:24:56 · 192 阅读 · 0 评论 -
python小黄猫--经纬度转换为坐标系x,y
def millerToXY (lon, lat):“”"经纬度转换为平面坐标系中的x,y 利用米勒坐标系:param lon: 经度:param lat: 维度:return:“”"L = 6381372math.pi2W = LH = L/2mill = 2.3x = lonmath.pi/180y = latmath.pi/180y = 1.25math.log(math.tan(0.25math.pi+0.4y))x = (W/2)+(W/(2math.pi))xy =原创 2020-05-29 10:22:46 · 2494 阅读 · 1 评论 -
有符号位16进制到20进制
有符号位16进制数据转化为10进制数据数据格式为低位在前,高位在后width=32 # 16进制数所占位数# data = '0xFE0xFF0xFF0xFF' # 值为-2data = '0x640x000x000x00' # 值为100data = ''.join(data.split('0x')[-1:0:-1])int_data=int(data, 16)if int_data > 2 ** (width-1)- 1: int_data = 2原创 2020-05-26 14:51:37 · 712 阅读 · 0 评论 -
Djnago小黑猫--国内源配置
国内源豆瓣http://pypi.douban.com/simple/清华https://pypi.tuna.tsinghua.edu.cn/simple配置国内源临时使用可以在现在包后面加上 −i\color{#FF3030}{ -i}−i https://pypi.tuna.tsinghua.edu.cn/simple\color{#FF3030}{https://pypi.tuna.tsinghua.edu.cn/simple}https://pypi.tuna.tsinghua原创 2020-05-22 17:37:02 · 650 阅读 · 0 评论 -
Django小黑猫--打包生成依赖文件 --requirements.txt
生成requirements.txt文件pip freeze>requirements.txt下载requirements.txt文件中的依赖(不带国内源版)pip install -r requirements.txt下载requirements.txt文件中的依赖(带国内源版)pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple...原创 2020-05-20 10:57:50 · 409 阅读 · 0 评论 -
Django连接数据库出错
pymysql可能出现的版本不匹配问题第一个问题File "D:\virtualenv\wx\lib\site-packages\django\db\backends\mysql\base.py", line 36, in <module> raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)django.core.exce原创 2020-05-20 10:55:23 · 596 阅读 · 0 评论 -
Python版本 由三角形三边长求三角形面积
输入三边长,计算出面积def calc_triangle_area(a,b,c): """ 已知三角形三边求面积 :param a: :param b: :param c: :return: """ # 令p = (a + b + c) / 2 # 则S =√[p(p - a)(p - b)(p - c)] p = ...原创 2020-04-20 10:14:37 · 3568 阅读 · 0 评论 -
Python版本 根据两点经纬度求距离
传入两点经纬度,求出距离def calcDistance(Lng_A, Lat_A, Lng_B, Lat_B): """ 根据两个点的经纬度求两点之间的距离,注意需要乘以1000,因为返回的单位为千米 :param Lng_A: :param Lat_A: :param Lng_B: :param Lat_B: :return: ...原创 2020-04-20 09:59:03 · 274 阅读 · 0 评论 -
同步异步有什么区别?
文章目录同步异步同步同步就相当于是一个队列,第二个人必须等第一个人结束他的事务,第二个人才能去开始他的业务。总之,同步就是在相当于串行电路,必须按照步骤一步一步进行,后面的开始及其依赖于前面的结果,一句话来说就是前无结果,后不开始。异步异步就相当于大城市的银行窗口,可以有多个用户同时进行各自的业务,相当于并行,后面的开始不依赖前面的结果,也就是说前面的结果对后面的开始没有任何影响。通俗...原创 2019-08-19 19:29:45 · 168 阅读 · 0 评论 -
根据字典值的大小找出键
max(dict,key=dict.get)方法获得字典dict中value的最大值所对应的键的方法。max(dict, key)方法首先遍历迭代器,并将返回值作为参数传递给key对应的函数,然后将函数的执行结果传给key,并以此时key值为标准进行大小判断,返回最大值。min(dict,key=dict.get)方法获得字典dict中value的最小值所对应的键的方法。min(dict, ...原创 2020-04-17 16:57:22 · 1079 阅读 · 0 评论 -
Pycharm2020.1发布
来源:开源中国PyCharm 2020.1 稳定版已发布,这也是 PyCharm 今年发布的首个主要版本。新版的亮点包括更方便地 rebase 分支、更智能地 debug,以及使用专为编码设计的字体 Mono。下载地址:https://jetbrains.com/pycharm/download可交互的 rebase 操作历史提交记录会逐渐变得混乱,这就是为什么需要 rebase 分支的原因。新版...转载 2020-04-13 16:42:48 · 2245 阅读 · 0 评论 -
为当前python项目生成依赖的第三方包
第一种方案该方案是导出该项目下的依赖包,但有可能会存在某一部分依赖包未被列入,只能说是大部分包被列入1.安装pipreqs包pip install pipreqs 或python -m pip install pipreps #python为python的版本2.切换到项目的根目录下, 默认生成的文件名是requirements .txtpipreqs ....原创 2019-12-26 10:04:07 · 510 阅读 · 0 评论