
python3
文章平均质量分 79
丁爸
这个作者很懒,什么都没留下…
展开
-
Pip换源
pip 换源是更改 pip 的默认包源或仓库地址,以便从其他位置下载和安装 Python 包。主要目的是提高下载速度、提升稳定性、访问受限内容、使用特定版本的包以及节省带宽。要实现换源,可以通过修改 pip 的配置文件来永久更改源,或者在执行 pip install 命令时,使用命令行选项 -i 或 --index-url 来临时指定一个源 URL。在选择镜像源时,应考虑地理位置、稳定性、可用性以及镜像更新频率等因素。更换源后,应当测试新源是否能够正常工作。原创 2024-08-02 21:59:09 · 764 阅读 · 0 评论 -
超详细的linux-conda环境安装教程
本文介绍在Linux系统上安装和配置Conda环境的详细步骤。通过遵循这些步骤,你可以轻松地管理Python环境和依赖包,为你的数据科学、机器学习或Python开发工作提供便利。记得根据你的具体环境和需求进行适当的调整。原创 2024-08-02 16:18:11 · 1093 阅读 · 0 评论 -
python3调用Webservice接口
前段时间用python3调用Webservice接口,本文记录一下调用方法。一、组件介绍通过安装suds库,来实现调用webservice接口官网链接,suds是一个轻量级的基于SOAP的web服务客户端。安装.\venv\Scripts\python.exe -m pip install suds-py3注意: 用pip install suds命令安装 , 安装后运行报错ImportError: No module named client二、调用代码1. 简单实例,查询电话归属地fr原创 2021-12-18 17:44:45 · 3147 阅读 · 0 评论 -
python3后台开发缓存实战
一、问题描述后台项目中,经常会遇到复杂的业务查询(关联多张数据表),或者查询大量数据的分析统计结果,这样的请求都是耗时较长的,如果大量用户频繁出现这种操作,会给服务器很大压力,甚至出现崩溃的情况。二、解决思路查询操作时,把结果缓存起来,下次调用同样参数时直接返回缓存结果,就会节省处理时间,查询时间越长,效果越明显。非查询操作时,清空缓存,重新查询数据生成新缓存数据。三、项目实战Flask+Vue搭建系统,在之前的一篇文章中,实现问题的解决思路。缓存实现python官方文档自带缓存功能lr原创 2021-05-12 17:22:08 · 610 阅读 · 2 评论 -
python3读取大文件
前段时间用python3读取大excel文件,读取过程中,内存耗尽,程序也报错了,本文记录一下python3读取大文件时内存耗尽的解决方法。一、导入代码原始代码,执行后内存耗尽from openpyxl import load_workbookdef read_excel(): # 打开excel文件 wb = load_workbook(filename='客户资料.xlsx') # 获取并打印 sheet 数量 # print("sheet 数量:", wb.sheet原创 2021-05-08 11:11:44 · 463 阅读 · 4 评论 -
python3操作USB设备
本文以读取USB无线测量设备数据举例说明。需要用到pyusb模块和libusb-1.0.dll,详细说明如下。一、配置libusb-1.0.dll下载libusb-1.0.22.7z,根据操作系统来选择对应的动态库,如下:32位操作系统:复制MS32\dll\libusb-1.0.dll到C:\Windows\SysWOW6464位操作系统:复制 MS64\dll\libusb-1.0.dll到C:\Windows\System32二、安装USB驱动打开zadig-2.5.exe原创 2020-12-31 19:22:31 · 6942 阅读 · 1 评论 -
python3 http.server跨域处理,亲测有效
在用python3创建简单http服务器时,碰到跨域问题,网上找的大多数方法都不行,下面整理出解决方法,亲测有效。一、代码import jsonfrom http.server import HTTPServerfrom http.server import SimpleHTTPRequestHandlerimport socketserverimport socketclass MyRequestHandler(SimpleHTTPRequestHandler): def _se原创 2020-12-31 16:51:17 · 5824 阅读 · 0 评论 -
python3用AES加密,VUE用AES解密
本文介绍前后端数据加密传输的一种方案,后台用Python3编写,前端用Vue编写,数据采用AES加密算法,模式用ECB,padding用pkcs7。一、后台实现后台用python编写,使用Crypto库安装AES加解密库pip install Crypto安装后如果提示:ModuleNotFoundError: No module named ‘Crypto’,把安装目录下包含crypto的改成Crypto,如图:python代码from Crypto.Cipher import原创 2020-11-28 17:32:02 · 993 阅读 · 1 评论 -
python3调用c++动态库(二)python3调用dll动态库
python3调用c++动态库(一)生成c++动态库,讲了c++生成dll动态库,本文讲python3调用dll动态库。代码如下:import ctypesdef test_dll(): # 加载动态库,需要绝对路径 lib = ctypes.cdll.LoadLibrary('{0}\CAesDll.dll'.format(os.path.join(os.getcwd()))) #测试传入int型参数,返回int型参数 a, b = 9, 3 value = li原创 2020-11-27 14:53:56 · 899 阅读 · 1 评论 -
python3操作sqite3删除数据表字段
本文介绍python3对sqite3数据库的常用操作,sqite官网。一、创建数据库操作类class CDBManage: def __init__(self, dbname: str = None): self.__dbname = 'local.db' if dbname: self.__dbname = '{0}.db'.format(dbname) self.__conn = sqlite3.connect(se原创 2020-11-14 16:21:00 · 1877 阅读 · 0 评论 -
python实现excel单元格位置转10进制坐标
最近项目中碰到excel单元格位置转10进制坐标,如下面几个例子:h5 =》(5, 8),表示第5行,第8列c3 =》(3, 3),表示第3行,第3列aDh32 =》(32, 788),表示第32行,第788列代码实现如下:def excel_item_to_rowcol(item: str): idx_num = 0 for i, v in enumerate(item): if v.isdigit(): idx_num = i原创 2020-11-14 12:13:01 · 767 阅读 · 0 评论 -
Flask框架(七)uwsgi配置websocket
本文介绍Flask里面uwsgi配置使用websocket功能1、创建websocketfrom flask_uwsgi_websocket import WebSocketapp = create_app(DevelopConfig)try: sockets = WebSocket(app)except Exception as e: logging.error("Error: flask_uwsgi_websocket, {0}".format(e))注意:uwsgi创建原创 2020-10-24 16:22:28 · 2380 阅读 · 0 评论 -
Flask框架(六)websocket应用
本文介绍Flask中websocket功能,下面用实现“服务端主动向前端推送消息”功能来详细介绍:技术栈如下:前端: Vue2.0 + element-ui后台: Flask一、后端代码实现1、创建websocket# 创建Flask Appapp = create_app(DevelopConfig)# 跨域请求CORS(app, supports_credentials=True)# 创建WebSocket,用于服务器主动向web端推送消息,避免web端轮询查询soc原创 2020-10-23 15:42:16 · 7212 阅读 · 2 评论 -
python3封装微信分账功能
之前一篇文章介绍python3封装成类调用微信JSAPI下单、支付、生成付款码,本文介绍python实现微信分账功能。微信支付里面分账接口调用时需要证书,本文介绍python使用证书。1 JSAPI文档地址JSAPI文档,普通商户微信分账是通过https请求实现的。2 代码实现封装一个类WxPay,实现微信分账,有如下接口:普通商户添加分账接收方普通商户删除分账接收方普通商户单次分账请求普通商户查询分账请求普通商户完结分账2.1 类主体框架import loggingimpor原创 2020-10-18 12:08:30 · 717 阅读 · 3 评论 -
python3封装微信退款功能
之前一篇文章介绍python3封装成类调用微信JSAPI下单、支付、生成付款码,本文介绍python实现微信退款功能。微信支付里面像退款等涉及到资金回滚接口调用时需要证书,本文介绍python使用证书。1 JSAPI文档地址JSAPI文档,微信下单和支付是通过https请求实现的。2 代码实现封装一个类WxPay,实现退款申请、退款查询2.1 类主体框架import loggingimport requestsimport timeimport hashlibheaders = {原创 2020-10-10 16:12:06 · 989 阅读 · 1 评论 -
Flask框架(五)访问资源文件
本文介绍Flask访问资源文件,下面详细介绍:1、配置资源文件目录class Config: DEBUG = False # 文件上传配置 UPLOAD_FOLDER = 'static/uploads/' # 上传目录 MAX_CONTENT_LENGTH = 100 * 1024 * 1024 # 上传大小限制}2、启动配置static_folder = 'static'app = Flask(__name__, template_folder=stat原创 2020-10-04 18:51:13 · 1232 阅读 · 1 评论 -
Flask框架(四)通过数据模型名称访问模型
本文介绍Flask中,通过数据模型名称访问数据模型,下面详细介绍:1、定义数据模型基类定义数据模型基类BaseModel,数据模型继承这个基类from flask_sqlalchemy import SQLAlchemyimport loggingimport json# 客户数据库连接,用作数据模型# 此处db是默认的数据库引擎连接SQLALCHEMY_DATABASE_URI,指向数据库根目录,运行sql语句时要指定具体数据库db = SQLAlchemy()class BaseM原创 2020-10-04 18:33:44 · 348 阅读 · 0 评论 -
Flask框架(三)多个数据库间切换
本文介绍Flask连接多个数据库,不同数据库间切换,下面详细介绍:一、数据库配置class Config: DEBUG = False SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://{0}:{1}@{2}:3306'.format(DB_USER, DB_PWD, DB_ADDR) # 默认数据库引擎,数据库根目录 # 配置多个数据库连接 SQLALCHEMY_BINDS = { 'client': 'mysql+原创 2020-10-04 17:47:12 · 1887 阅读 · 0 评论 -
python3调试企业微信(二)企业微信推送消息
上篇文章介绍了python3调试企业微信(一)创建企业应用,本文介绍企业微信推送消息。1 JSAPI文档地址JSAPI文档,企业微信推送消息是通过https请求实现的。2 代码实现封装一个类QyWeixin,实现企业微信推送消息2.1 类主体框架import loggingimport requestsimport jsonheaders = { 'Accept': 'application/json, text/javascript, */*; q=0.01', 'A原创 2020-09-30 21:43:18 · 454 阅读 · 0 评论 -
python3调试企业微信(一)创建企业应用
本文介绍python3调试企业微信相关文章,本文介绍创建企业应用。1 注册微信企业账号进入企业微信官网,注册企业微信账号,如图:2 登录进入管理后台管理员扫码进入管理员后台3 进入应用进入"应用管理"菜单,选择"自建",“创建应用”,如图:上传应用图标输入应用名称和描述添加应用成员创建好应用后,如图:4 查看应用信息点击"消息推送"应用,查看应用信息说明:AgentId:企业应用的id,整型,用于企业内部开发Secret:企业应用密码可见范围:表示企业用户里面原创 2020-09-29 16:03:29 · 817 阅读 · 0 评论 -
python3封装微信下单和微信支付功能
本文介绍python3封装成类调用微信JSAPI下单、支付、生成付款码。1 JSAPI文档地址JSAPI文档,微信下单和支付是通过https请求实现的。2 代码实现封装一个类WxPay,实现下单和支付功能、生成付款码2.1 类主体框架import loggingimport requestsimport timeimport hashlibheaders = { 'Accept': 'application/json, text/javascript, */*; q=0.01'原创 2020-09-27 22:17:42 · 835 阅读 · 0 评论 -
python3实现扫码获取微信openid功能
本文介绍python3实现获取openid功能。1 实现原理根据"微信url"和"微信网页授权域名"组成的字符串生成二维码用微信扫描二维码,查询到用户授权信息后,微信把查询的结果当作url参数传给授权的网页域名用fastapi网页框架作后台,绑定微信授权的网页域名,处理微信回调把查询的信息保存本地openid.json文件fastapi提供查询微信信息信息接口2 代码实现2.1 设置微信网页授权域名登录开通的微信公众号,操作如图:2.2 创建web服务# 1.创建app对象a原创 2020-09-25 09:12:37 · 3542 阅读 · 1 评论 -
python3用PIL+tkinter实现屏幕选取区域截图功能
本文介绍用PIL和tkinter实现屏幕选取区域截图功能。一、实现思路用tkinter创建全屏窗口,设置窗口半透明,用作截图窗口用tkinter绑定鼠标按下、释放、按下移动事件,获取截取区域的起始坐标用PIL实现通过起始坐标截图二、代码实现from time import sleepfrom PIL import Image, ImageGrabimport tkinterimport ctypesclass CTkPrScrn: def __init__(self):原创 2020-09-22 19:59:40 · 3089 阅读 · 13 评论 -
python3用自带的库获取原始分辨率和缩放后的分辨率
本文介绍不用安装第三方库,实现获取windows系统原始分辨率和缩放后的分别率,直接上代码:if __name__ == '__main__': import ctypes user32 = ctypes.windll.user32 gdi32 = ctypes.windll.gdi32 dc = user32.GetDC(None) widthScale = gdi32.GetDeviceCaps(dc, 8) # 分辨率缩放后的宽度 heightScale原创 2020-09-22 19:31:14 · 1244 阅读 · 1 评论 -
python调用微信截图功能
本文介绍python调用微信截图功能实现:监听键盘按键,触发截图功能一、技术原理通过dos方式调用PrScrn.dll来实现截图功能通过监听键盘按键触发截图二、安装库venv\Scripts\python.exe -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ keyboardvenv\Scripts\python.exe -m pip install -i https://pypi.tuna.tsinghua.edu.原创 2020-09-19 17:35:24 · 1975 阅读 · 1 评论 -
python清空windows系统剪切板数据
本文介绍python清空windows系统剪切板数据方法一、实现原理通过python ctypes模块,调用windows API实现二、实现代码from ctypes import windllif windll.user32.OpenClipboard(None): # 打开剪切板 windll.user32.EmptyClipboard() # 清空剪切板 windll.user32.CloseClipboard() # 关闭剪切板...原创 2020-09-19 16:40:37 · 2457 阅读 · 0 评论 -
python调用system执行命令时不显示dos窗口
python代码里面有时候会执行windows命令时会出现一个dos窗口,虽然不影响功能,但是看着不好看,下面介绍不显示dos窗口的方法:很简单,加一个参数:start /B xxxx,如调用windows系统计算器:os.system('start /B calc')start命令参数详细说明:...原创 2020-09-19 16:03:37 · 6135 阅读 · 2 评论 -
Flask框架(二)数据库操作
本文介绍Flask的数据库操作,是用flask_sqlalchemy进行相关操作,下面详细介绍:一、flask_sqlalchemy安装这里是安装在虚拟环境里面,采用了镜像加速,安装命令如下:venv\Scripts\python.exe -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ pymysqlvenv\Scripts\python.exe -m pip install -i https://pypi.tuna.tsing原创 2020-09-16 07:05:22 · 280 阅读 · 0 评论 -
Flask框架(一)flask配置
作者结合实际项目总结Python flask框架的一些使用经验,本文先介绍:flask配置一、官方文档链接http://docs.jinkan.org/docs/flask/config.html#id2官方文档里面有详细介绍flask的相关配置。二、Flask常用功能配置配置数据库连接# 默认数据库引擎SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://{0}:{1}@{2}:3306'.format(DB_USER, DB_PWD, DB_ADDR)原创 2020-09-15 20:13:45 · 379 阅读 · 0 评论 -
python+html开发桌面应用程序(四)pywebview+flask+vue实现系统登录
本文介绍pywebview+vue实现一个系统的登录页面,效果图如下:一、python代码创建test_pywebview_flask.py文件import webviewfrom flask import Flask, render_template, jsonify, requestimport jsonfrom functools import wrapsSTATIC_FOLDER = 'static-flask'app = Flask(__name__, template_fo原创 2020-08-31 16:13:41 · 4513 阅读 · 4 评论 -
python+html开发桌面应用程序(三)程序打包和运行遇到的问题
前面两章介绍了python+html开发桌面应用程序的实例,本文介绍程序的打包和程序运行的问题一、程序打包python是用pyinstaller来打包,写一个打包函数来实现,def CreateExe(filename: str): cmd = 'venv\Scripts\python.exe -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ -r pyinstaller' print('{0}, result={1原创 2020-08-29 18:03:51 · 8397 阅读 · 2 评论 -
python+html开发桌面应用程序(二)pywebview+vue实现系统登录
本文介绍pywebview+vue实现一个系统的登录页面,效果图如下:一、python代码创建test_pywebview.py文件import webviewdef on_closed(): print('pywebview window is closed')def on_closing(): print('pywebview window is closing')def on_shown(): print('pywebview window shown'原创 2020-08-29 17:31:55 · 7633 阅读 · 10 评论 -
python+html开发桌面应用程序(一)pywebview介绍
本文介绍用python+html开发桌面应用程序,主要是用pywebview来加载、显示html页面。一.pywebview简介pywebview是围绕webview组件的轻型跨平台包装器,它允许在其自己的本机GUI窗口中显示HTML内容。您可能会想到Python的Electron,但是pywebview打包的执行文件小很多。它为您提供了桌面应用程序中的Web技术功能,隐藏了GUI基于浏览器的事实。您可以将pywebview与轻量级的Web框架(例如Flask或Bottle)一起使用,也可以单原创 2020-08-29 15:50:57 · 15909 阅读 · 5 评论 -
Python3 PIL使用font字体错误
在项目中试用PIL生成验证码时,在win10环境下安装PIL,项目运行时能正常生成二维码,在Centos7环境下报错:File "./ClothStore/captcha/captcha.py", line 123, in <listcomp> for size in font_sizes or (65, 70, 75)]) File "/home/ClothStore/venv/lib/python3.7/site-packages/PIL/ImageFont.py", line原创 2020-07-20 15:27:42 · 3703 阅读 · 1 评论 -
Centos7安装配置Python-3.7.2
根据自己实际情况选择安装相应的版本,本文讲述通过源码安装python3.7.2版本。一、到官网下载python文件进入https://www.python.org/downloads/release/python-372/页面,下载安装文件,如图:把Python-3.7.2.tgz移动到/home目录二、编译源码1.> cd /home;tar -xvzf Python-3.7.2.tgz #解压文件2.> cd Python-3.7.2 #进入解压后目录3.> ./co原创 2020-06-26 15:52:25 · 735 阅读 · 0 评论 -
python3高效利用内存,提高访问效率
本文介绍通过使用itertools工具包高效利用内存,提高访问效率通过两个例子,直观比较内存的使用情况:通过sys.getsizeof函数查看变量占用的内存大小例子一通过普通切片方法取list里面的值def test_func1(): value_list = [i for i in range(1, 100001)] result = value_list[35:60000:3] print('用常规方法切片:', len(result), sys.getsizeof(result)原创 2020-06-17 20:27:02 · 422 阅读 · 0 评论 -
python3常用小技巧
本文介绍python3里面常用的编程小技巧,文章中介绍的例子是定义在类中实现:调用方式如下:下面详细介绍类里面的测试函数的功能字符串翻转:利用操作符[]来实现字符串[开始索引:结束索引:步长(默认为1)]切取字符串为开始索引到结束索引-1内的字符串def func_str_reversed(self): # 字符串翻转 text = 'hello' print(text[::-1])输出:olleh数组去重:利用集合去重集合(set)是一个无序的不重复元素序原创 2020-06-17 09:44:41 · 375 阅读 · 0 评论