python
zy_whynot
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
使用dateutil的parser.parse()格式化时间对象
时间串格式转时间原创 2023-10-10 10:38:07 · 2109 阅读 · 0 评论 -
pymyslq 批量导入或更新数据
【代码】pymyslq 批量导入或更新数据。原创 2023-08-10 16:37:25 · 641 阅读 · 0 评论 -
ImportError: dlopen(/Users/quzhen/.conda/envs/supply/lib/python3.6/site-packages/MySQLdb/_mysql.cpyt
问题 ImportError: dlopen(/Users/quzhen/.conda/envs/supply/lib/python3.6/site-packages/MySQLdb/_mysql.cpython-36m-darwin.so, 2): Library not loaded: @rpath/libmysqlclient.21.dylib Referenced from: /Users/quzhen/.conda/envs/supply/lib/python3.6/site-packages原创 2022-01-04 14:50:25 · 1428 阅读 · 0 评论 -
Package ‘importlib-metadata‘ requires a different Python: 3.6.10 not in ‘>=3.7‘
报错 ERROR: Package 'importlib-metadata' requires a different Python: 3.6.10 not in '>=3.7' WARNING: You are using pip version 20.0.2; however, version 21.3.1 is available. You should consider upgrading via the '/usr/local/bin/python -m pip install --u原创 2021-12-22 14:53:29 · 10128 阅读 · 0 评论 -
Python 获取上个月和下个月
import datetime from dateutil.relativedelta import relativedelta print(datetime.date.today()) print(datetime.date.today() - relativedelta(months=+1)) print(datetime.date.today() - relativedelta(months=-3)原创 2021-12-06 15:22:05 · 2928 阅读 · 0 评论 -
python数据类型之dict
dict是Python中比较高效的一种数据结构,存储和获取数据的时间复杂度都是常识级别的O(1),在编程时用好dict能大大提高程序的效率。 看到一篇关于 dict 比较好的教程,记录一下: Python中Dict类型的操作介绍关于字典(dictionary) ...原创 2021-10-22 14:00:43 · 284 阅读 · 0 评论 -
pyexcel报错xlrd.biffh.XLRDError: Excel xlsx file; not supported
现象: 代码 # content 是byte类型的表格数据 sheet = pyexcel.get_sheet(file_type='xlsx', file_content=content) 报错 xlrd.biffh.XLRDError: Excel xlsx file; not supported 原因 安装的pyexcel包版本太旧 pyexcel-xls==0.5.8 pyexcel==0.5.9.1 pyexcel-xlsx==0.5.6 解决 更新版本(最新版本) pyexcel==0.6原创 2021-09-16 17:16:58 · 227 阅读 · 0 评论 -
用dict初始化class对象,class对象转dict
dict参数初始化class对象 # 定义一个学生对象 class Student(object): def __init__(self): self.name = "" self.age = 0 ... # 成百个字段 # 初始化 @classmethod def new_obj(cls, dataDict) obj = cls() for attr, val in dataDict.items(): setattr(obj, attr, val) return原创 2021-09-13 15:25:55 · 892 阅读 · 0 评论 -
使用python smtplib封装一个上下文管理器发送邮件
好久不写博客了,发现工作中常用的功能还是还要总结记录的,不然下次遇到又要重新写一遍,重复造轮子真的很浪费时间。扯多了,上代码… 代码示例 import smtplib from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart import logging class MailConf(object): HOST = 'smtp.163.com' # 邮件服务器地址 USER =原创 2021-08-06 16:50:04 · 187 阅读 · 0 评论 -
python的JSON用法
python里面的语言对象一般只有python能读懂,为了能比较好储存,而且能够让别的编程语言也能读懂这些数据,就会用json来转换储存。或者说把json数据类型的转化成python的数据类型。 json.dumps() 将python对象编码成Json字符串 json.loads() 将Json字符串解码成python对象 json.dump() 将python中的对象转化成json储存到文件中 json.load() 将文件中的json的格式转化成python对象提取出来 更详细的参考一下资料 pyth转载 2021-04-02 16:24:34 · 158 阅读 · 0 评论 -
python中计算两个时间对象的间隔年数
python中对时间的操常用的有两个库datetime和relativedelta 我要计算当前时间距离"2015-12-21"有几年了, datetime只支持支持days和weeks参数 而relativedelta支持年、月、日、时、分、秒、微秒 实现 # 安装:pip install python-dateutil from dateutil.relativedelta import relativedelta import datetime # 公司成立时间 create_time = da原创 2021-01-18 14:53:00 · 4544 阅读 · 0 评论 -
阿里云nginx+uwsgi部署django项目
项目技术:django + mysql 部署方式:nginx + uwsgi uwsgi和gunicorn对比: uwsgi:是用C写的,性能优异,高并发稳定, gunicorn:使用python实现的,用它了部署python的项目,配置简单,运维方便。 使用uwsgi不是还有一个优点就是,现在案例多,参考资料丰富,出了问题能快速找到解决方式。 步骤: 1、现在本地创建项目,调试好之后打包传到阿里云上; 2、安装项目所需的环境(anaconda很好用,但我安装之后出现很多问题,我比较熟悉使用虚拟环境管理,所原创 2020-12-13 12:20:14 · 274 阅读 · 1 评论 -
MySql 取一天的开始时间和结束时间
网友的写法 -- 取一天的开始时间 SELECT str_to_date(DATE_FORMAT(NOW(),'%Y-%m-%d'),'%Y-%m-%d %H:%i:%s'); -- 取第二天的开始时间 select DATE_ADD(str_to_date(DATE_FORMAT(NOW(),'%Y-%m-%d'),'%Y-%m-%d %H:%i:%s'),INTERVAL 1 DAY) -- 取一天的结束时间 select DATE_ADD(DATE_ADD(str_to_date(DATE_F原创 2020-08-05 18:09:30 · 2798 阅读 · 0 评论 -
python的任务调度利器——APScheduler
发现一篇讲的很好的文章,记录一下,感谢这位老哥的总结。 APScheduler官方文档翻译 本人在使用APScheduler实现定时任务时遇到的问题及解决方式: 问题1、在APScheduler启动之后,如果我们想修改了某个任务的触发时间(比如原来是每个月1号执行该任务,现在要改成每个月5号执行),但修改之后任务仍然以原来设定的时间执行,并没有去加载我们新的配置,需要我们重启项目之后APScheduler才会重新加载新设定的执行时间。这显然不是我们想要的。 解决1: 在修改执行时间的时候先调用schedu原创 2020-07-30 17:09:06 · 616 阅读 · 0 评论 -
python操作json文件
上代码: def write_json(filename, data_dict): # 将字典数据写入到json文件中 with open(filename, 'w', encoding="utf8") as fp: json.dump(data_dict, fp, ensure_ascii=False) def read_json(filename): # 读取json文件内容, 返回字典格式 with open(filename, 'r', encod原创 2020-07-24 10:31:20 · 229 阅读 · 0 评论 -
Anaconda安装和使用
安装 参考: Anaconda 的安装教程(图文) 使用 参考:Anaconda详细安装及使用教程(带图文) 1、创建和使用虚拟环境 安装完成后在开始菜单会多出一个快捷方式,也就是Anaconda下的4个子程序: 其中Anaconda Prompt 就是我们的cmd。打开Anaconda Prompt: # 创建虚拟环境 conda create --name testenv python # 此时就会创建一个名为:testenv的虚拟环境 # 可以指定python的版本,例:conda create -转载 2020-05-14 10:07:34 · 489 阅读 · 0 评论 -
virtualenv的安装和使用
安装:Ubuntu18.04安装virtualenv 使用: # 创建virtualenv mkvirtualenv -p python3 myVenv # 进入虚拟环境 workon myVenv # 退出虚拟环境 deactivate转载 2020-05-11 18:07:41 · 196 阅读 · 0 评论 -
python使用xlsxwriter模块生成excel表格
代码: import xlsxwriter #导入模块 workbook = xlsxwriter.Workbook('new_excel.xlsx') #创建新的excel worksheet = workbook.add_worksheet('sheet1') #创建新的sheet headings = ['Number','te...转载 2020-05-07 12:07:58 · 1020 阅读 · 0 评论 -
python读取本地html文件并解析网页元素
BeautifulSoup4和 lxml 一样,Beautiful Soup 也是一个HTML/XML的解析器,主要的功能也是如何解析和提取 HTML/XML 数据。 with open('test.html', 'r', encoding='utf-8') as f: Soup = BeautifulSoup(f.read(), 'html.parser') titles = Soup....转载 2020-04-26 23:35:28 · 18204 阅读 · 2 评论 -
python中在一个程序中通过命令启动执行另一个程序(py文件)
运行python的时候,我们都是在创建并运行一个进程。像Linux进程那样,一个进程可以fork一个子进程,并让这个子进程exec另外一个程序。在Python中,我们通过标准库中的subprocess包来fork一个子进程,并运行一个外部的程序。 参考资料:python subprocess模块 ...转载 2020-04-26 23:19:38 · 7871 阅读 · 1 评论 -
python中requests库的使用方法
参考资料:python中requests库使用方法详解 1、requests.session() 大部分的方法这位兄弟已经讲的分厂详细了,我就不赘述了。 我说一下在requests中非常好用的requests.session.get()或request.session.post()。大部分的web接口都会要求登录后才能访问,我们总不能每次在访问之前都先去登录,虽然可以但太麻烦。requests.s...转载 2020-04-25 00:02:45 · 794 阅读 · 0 评论 -
python多模块文件共享变量
1、需求 有多个文件,在任意一个文件中修改,在其他文件中访问的都是修改之后的值; 2、先后尝试了三种方法 (1)用一个文件保存变量 参考资料:PYTHON多模块文件共享变量 这个思路没问题,但在一个文件中修改后,在另一个文件中访问时还是原来的内容。 # 定义文件a.py x = 0 b.py import a a.x = 10 # 运行该文件 c.py import a print(a....原创 2020-04-23 09:50:58 · 1983 阅读 · 1 评论 -
ModuleNotFoundError: No module named '__main__.param'; '__main__' is not a package
问题: 看错误信息,大概意思是说打包路径有问题。 原因: 在导包时使用了带有 . 的相对路径导包,而且还直接运行了该文件。 解决: 比如导包路径: from Test.aa import ha 1、首先要导包 参考资料 ...转载 2020-04-16 15:25:20 · 507 阅读 · 0 评论 -
python中property的用法详解
1. property 应用场景 在获取、设置和删除对象属性的时候,需要额外做一些工作。比如在游戏编程中,设置敌人死亡之后需要播放死亡动画。 需要限制对象属性的设置和获取。比如用户年龄为私有只读属性,或者在设置用户年龄的时候有范围限制。 这时就可以使用 property 工具,它把方法包装成属性,让方法可以以属性的形式被访问和调用。 2、用法 被 @property 装饰的方法是获取属性值的...转载 2020-03-28 18:34:49 · 1827 阅读 · 0 评论 -
python之time和datetime的常用方法
time和datetime的常用方法转载 2020-03-24 22:35:16 · 140 阅读 · 0 评论 -
python计算两个日期的间隔天数
python计算两个日期的间隔天数 year1, month1, day1 = 2017, 10, 17 year2, month2, day2 = 1989, 11, 23 d1 = datetime.date(year1, month1, day1) # 其中year, month, day均为int类型 d2 = datetime.date(year2, mont...转载 2020-03-24 22:33:22 · 4732 阅读 · 0 评论 -
python中复杂元素排序
列表元素是实例对象 from operator import itemgetter, attrgetter class Student(object): def __init__(self, name, age): self.name = name self.age = age def __repr__(self): return repr((self.name, self.age)) stu1 ...原创 2020-03-23 00:15:52 · 462 阅读 · 0 评论 -
Python统计水仙花数
水仙花数是指一个 n 位数(n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153) for i in range(100, 1000): ge = (i // 1) % 10 shi = (i // 10) % 10 bai = (i // 100) % 10 if ge**3 + shi**3 + bai**3 ...原创 2019-12-20 12:14:30 · 1658 阅读 · 0 评论 -
正则表达式
1、匹配单个字符 字符 功能 . 匹配任意1个字符(除了\n) [ ] 匹配[ ]中列举的一个字符 \d 匹配数字,即0-9 \D 匹配非数字,即不是数字 \s 匹配空白,即 空格,tab键 \S 匹配非空白 \w 匹配单词字符,即a-z、A-Z、0-9、_ \W 匹配非单词字符 2、匹配多个字符: 字符 功能 * 匹配前一个字符出现...原创 2019-11-24 21:51:55 · 139 阅读 · 0 评论 -
python中单下划线和双下划线
1、分类: (1)以单下划线开头,表示这是一个保护成员,只有类对象和子类对象自己能访问到这些变量。 以单下划线开头的变量和函数被默认是内部函数,使用 from module import * 时不会被获取,但是使用 from test01 import _add 可以获取。 (2)以单下划线结尾仅仅是为了区别该名称与关键词 (3)双下划线开头,表示为私有成员,只允许类本身访问,子类不能访问,更不能...原创 2019-11-13 19:13:26 · 694 阅读 · 0 评论 -
python中异常捕获及处理
try: ‘可能出现异常的代码块’ except: ‘有异常,执行异常处理逻辑’ else: ‘没有异常执行的逻辑’ finally: ‘有无异常都会执行的逻辑’原创 2019-09-07 19:10:56 · 368 阅读 · 0 评论
分享