# 1 概述
## 1.1 安装
一个Python的常用工具类库。 本类库对python 3.10版本支持最好。因为依赖第三方库的问题,本工具下的部分函数对python 3.9之前和python
3.11版本有
一些兼容问题。
安装方法一:
pip install yangke
使用该命令为最小化yangke安装,只会安装yangke库的必要依赖。因yangke库中包含多个模块,当使用具体模块时,
可能存在依赖不全的问题,此时需要根据提示,继续安装使用的模块的必要依赖。
安装方法二:
pip install yangke[All]
使用该命令会安装yangke库中所有模块的依赖。yangke库中包含的模块可以使1.2节测试方法进行查询。
## 1.2 测试是否安装成功
import yangke
yangke.info()
如果安装成功,则提示如下图所示。
![图片无法显示](./document/figures/img_20210100.png)
# 2 小功能
## 2.1 日志输出
在test.py中输入以下代码:
from yangke.common.config import logger
logger.debug("debug from yangke logger")
logger.info("info from yangke logger")
logger.warning("warning from yangke logger")
logger.error("error from yangke logger")
logger.critical("critical from yangke logger")
运行结果如下图所示,且默认会输出日志到运行目录下的日志文件中,日志文件名为【runtime-运行时标.log】。
![图片无法显示](./document/figures/img_20210101.png)
### 高级日志配置
使用settings.yaml文件配置日志输出的格式。 在test.py同目录下创建settings.yaml文件,写入以下内容:
logger:
logFile: None # 关闭输出到日志文件,如果需要修改文件名,也可直接在此处指定文件名
dateFormat: 'YYYY/MM/DD HH:mm:ss' # 日志中的时间格式
format: '{time} - {level} - {module}:{function}:{line} - {message}' # 日志格式
level: 10 # 可取0,10,20,30,40,50,分别代表notset, debug, info, warn, error, fatal
levelColor:
DEBUG: yellow # 小写表示前景色
INFO: "GREEN" # 大写表示后景色
则运行中日志按该定义输出,如下图所示:
![图片无法显示](./document/figures/img_20210104.png)
日志的格式定义参数含义可以参见loguru的官方说明文档,本类库提供了yaml配置日志的途径,方便用户自定义。
可以自定义的内容有:
* 不同的level级别使用不同的样式;
* 不同的field(即time, level, module)使用不同的样式,loguru的默认样式就是这种形式。
* 日志文字样式
* 前景色,小写的颜色或"fg <rgb>"定义的颜色
* 背景色,大写的颜色或"bg <rgb>"定义的颜色
* 字体样式,下划线、斜体、加粗等,定义参见loguru说明。
* 日期格式,如 'YYYY/MM/DD HH:mm:ss'
* 日志格式,如 '{time} - {level} - {module}:{function}:{line} - {message}'
* field的对齐方式
## 2.2 给python方法添加日志环境提示
在程序运行进入某些关键函数或方法时,会生成进入该函数或方法的日志域。使用示例如下。
在test.py中输入以下代码:
from yangke.common.config import logger, loggingTitleCall
@loggingTitleCall(title="初始化mysql数据库连接")
def init_mysql():
logger.info("测试mysql是否可用")
logger.info("连接mysql")
logger.info("mysql连接成功")
init_mysql()
运行结果如下图所示:
![图片无法显示](./document/figures/img_20200102.png)
也可以临时更改某个方法中的logger级别,定制不同的logger输出格式,详细用法参见项目源码。
## 2.3 windows系统运行命令
运行windows系统的命令,有两个方法。
from yangke.core import *
runAsAdmin('echo "1111" > ssssss.txt', popup=True)
result = runCMD('echo "11111"', charset="GBK", wait_for_result=True, output_type="RETURN")
print(result)
运行结果如下图所示:
![图片无法显示](./document/figures/img_20210103.png)
说明:
runAsAdmin(cmd, cwd=None, charset="gbk", python=None, popup=True)
该方法以管理员方式运行命令,在windows系统上会弹出确认窗口,询问是否以管理员方式运行,如果不需要
弹出确认窗口,可以设置参数popup=False,但这实际上利用了windows的漏洞,在win10上会被defender当做病毒拦截,在 win7上能正常运行。
runCMD(command: str, charset: str = "utf8", wait_for_result: bool = True, cwd=None,
output_type: str = "RETURN", timeout=None)
该方法可以返回第三方命令的执行结果给当前python主进程,如2.3节示例的运行结果,这在很多时候是很有用的。
## 2.4 判断是否安装某python库
from yangke.core import existModule
existModule("pandas")
## 2.5 读取csv或txt至pandas.DataFrame中
from yangke.common.fileOperate import read_csv_ex
read_csv_ex(file)
该方法可以处理双引号括起来的跨行的元素,解决各类编码问题,解决各行元素数量不同导致的读取报错问题。该方法可解决以下错误:
> UnicodeDecodeError 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte
> pandas.errors.ParserError: Error tokenizing data. C error: Expected 21 fields in line 45, saw 41
该方法几乎可以读入任何形式的csv文件和txt文件内容,解决了数据读入的问题,后续的数据清洗就可以进行下去了。
该方法的其他参数有: read_csv_ex(file, sep=None, header="infer", skiprows=None, error_bad_lines=True, nrows=None,
index_col=None,
low_memory=None, na_values=" ")
## 2.6 yangke.base中的小工具
from yangke.base import *
然后可以使用以下方法
* 读取yaml文件,返回对应的字典对象或列表对象
> read_from_yaml(file: str, encoding="utf8")
* 获取当前电脑的IP地址
> get_localhost_ip()
* 获取文本文件的编码
> get_encoding_of_file(file)
* 将图片转换为base64格式
输入图片可以是 url, ndarray或本地的图片文件路径
> pic2base64(pic)
* 将图片转换为ndarray格式
输入图片可以是 url, ndarray或本地的图片文件路径
> pic2ndarray(pic)
* 将xls格式的excel文件另存为xlsx或csv
该方法利用的是本地安装的Office或WPS,因此只要本地的Office或WPS能正常打开的xls文件都可以成功另存,具有极强的适应性。其他excel类库在某些情况下无法另存或存在编码错误的问题。
> save_as_xlsx(file, engine="WPS", ext="xlsx", visible=False)
* 开启新线程运行指定的目标函数
> start_threads(targets, args_list=())
* 遍历目录下的文件
> yield_all_file(folder, filter_=None, ignore_temp_file: bool = True)
* 装饰器方法
> > @run_once 确保修饰的方法只被调用一次,运行中会忽略第一次以后的调用
> > @auto_save_para
## 2.7 Qt多版本支持
通过以下导入语句,可以兼容PySide6、PyQt6和PyQt5这三个Python库的语法,开发的图形界面软件可以很方便的同时兼容Qt5和Qt6。
> from yangke.common.QtImporter import QtGui, Qt, QMessageBox, QLabel, QColor
任何需要从Qt中导入的组件,都可以从yangke.common.QtImporter中导入,无需关心当前运行环境安装的是PyQt5还是PySide6。
QtImporter模块会自动判断已经安装的Qt库,并使用正确的导入。且用户使用PyQt5和PySide6的语法均可正常运行。
如果是同名的Qt组件,则可以导入具体组件的模块,然后以[模块.组件名]的方式使用到特定的Qt组件。
例如:
> from yangke.common.QtImporter import QAction \
> from yangke.common.QtImporter import Qt3DInput
此处,QAction和Qt3DInput.QAction都可以使用,并且是两个不同的类。默认的QAction是QtGui.QAction(PyQt6)或QtWidgets.QAction(PyQt5)
。
# 3 神经网络
## 3.1 残差神经网络(ResNet)
残差神经网络是由微软研究院的和开明、张祥雨、任少
没有合适的资源?快使用搜索试试~ 我知道了~
一个Python的常用工具类库,同时提供各类优化算法的调用工具
共565个文件
py:257个
png:64个
yaml:56个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 200 浏览量
2023-12-01
08:23:49
上传
评论
收藏 29.32MB ZIP 举报
温馨提示
功能:日志输出、高级日志配置、给python方法添加日志环境提示、windows系统运行命令、判断是否安装某python库、读取csv或txt至pandas.DataFrame中、读取csv或txt至pandas.DataFrame中、读取yaml文件,返回对应的字典对象或列表对象、获取当前电脑的IP地址、获取文本文件的编码、将图片转换为base64格式、输入图片可以是 url, ndarray或本地的图片文件路径、将图片转换为ndarray格式、将xls格式的excel文件另存为xlsx或csv、开启新线程运行指定的目标函数、遍历目录下的文件、Qt多版本支持、包含神经网络相关内容(残差网络、激活函数、分类函数、损失函数、神经网络库) 还可以快速创建桌面应用程序,包含股票软件,入口文件为yangke.stock.main 每个功能的详细使用说明见README.md文档! 非常实用的python工具类库!
资源推荐
资源详情
资源评论
收起资源包目录
一个Python的常用工具类库,同时提供各类优化算法的调用工具 (565个子文件)
chapter_3.aux 3KB
chapter_2.aux 2KB
chapter_1.aux 2KB
main.aux 2KB
run_python.bat 618B
deploy.bat 441B
start.bat 106B
temp_write_sis.bat 97B
write_sis.bat 40B
yolov3-spp.cfg 9KB
yolov3.cfg 9KB
yolov3-tiny.cfg 2KB
scrapy.cfg 265B
pip.conf 268B
demo.css 806B
index.e2206225.css 201B
style.0637ccc5.css 168B
style.css 113B
summary.csv 829KB
holiday.csv 85KB
dcs2.csv 16KB
SPPA_T3000_Siemens.csv 14KB
dcs1_type_file.csv 6KB
sis_type_file.csv 4KB
power_type_file.CSV 3KB
dcs_tpri.csv 2KB
dcs_sciyon.csv 627B
power1_func.dat 14KB
housing.data 48KB
dbpapi_x64.dll 474KB
house.egg 15.38MB
haima.egg 2.33MB
gf.egg 208KB
冷端优化服务_visible.exe 394KB
startup.exe 392KB
zr.exe 88KB
main.fdb_latexmk 23KB
2.feature 267B
main.fls 99KB
intro_ball.gif 5KB
.gitignore 3KB
.gitignore 47B
main.synctex.gz 31KB
render.html 5KB
main.html 5KB
index.html 3KB
temp_index.html 3KB
simple_globe.html 1KB
nb_jupyter_globe.html 1KB
index.html 1KB
MUC_Nonick.html 1KB
simple_page.html 896B
simple_tab.html 771B
nb_jupyter_notebook_tab.html 608B
index.html 490B
nb_jupyter_notebook.html 489B
nb_jupyter_lab_tab.html 438B
nb_jupyter_lab.html 343B
dp.html 316B
simple_chart.html 253B
nb_nteract.html 253B
index.html 236B
components.html 204B
nb_components.html 116B
favicon.ico 149KB
favicon.ico 4KB
stock10jqka.iml 494B
MANIFEST.in 297B
yk_window.ini 129B
yk_window.ini 99B
pip.ini1 316B
uv1.jpg 3.14MB
uv3.jpg 2.58MB
uv2.jpg 2.08MB
cllor1.jpg 818KB
Blueingconcrete.jpg 684KB
uv4.jpg 394KB
cllor1_bup.jpg 235KB
stoneFrame.jpg 70KB
供热系统.jpg 42KB
lakerem.jpg 34KB
murcim016.jpg 28KB
resnet_1.jpg 26KB
tpri.jpg 1KB
echarts.min.js 999KB
echarts.min.js 762KB
[email protected] 628KB
jquery.min.js 84KB
wps宏.js 60KB
index.5f4466bd.js 45KB
vendor.642d02b4.js 42KB
index.js 28KB
test.js 18KB
直接空冷系统.js 10KB
echarts_define.js 9KB
pandas.js 8KB
pandas.js 8KB
YkEchartsTools.js 4KB
main.js 4KB
iapws97.js 3KB
共 565 条
- 1
- 2
- 3
- 4
- 5
- 6
资源评论
十小大
- 粉丝: 9954
- 资源: 2555
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- tensorflow-gpu-2.5.0-cp39-cp39-manylinux2010-x86-64.whl
- tensorflow-gpu-2.5.2-cp39-cp39-manylinux2010-x86-64.whl
- 内含方正小标宋简体、仿宋-Gb2312、黑体、楷体、宋体,五个公文常用字体
- 记忆卡牌游戏源码及可运行文件
- 利用wps的js宏编写的一键格式修改辅助工具
- 基于matlab实现训练RBF网络的,但用的算法是梯度下降法,算法仍然是自己写的.rar
- 基于matlab实现小波分析改造后,可以分析脑电数据的程序,出现32个导联每个通道的功率谱.rar
- 基于matlab实现物体的应力和应变DIC-通过识别一系列图像的变形得到物体的应力和应变
- 基于matlab实现文档+程序NSGA-II多目标优化的matlab代码.rar
- 基于matlab实现文档+程序 多目标优化,NSGA2算法实现.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功