python
文章平均质量分 75
梦家
博客主页:https://dreamhomes.top/
展开
-
Python 高效命令行参数解析方法总结
原文地址: https://dreamhomes.github.io/posts/202101161752.html背景命令行参数工具 Python 中常用的工具,比如做实验希望调节参数的时候,如果参数都是通过硬编码写在代码当中的话,每次修改参数都需要修改对应的代码和逻辑显然这不太方便。比较好的办法就是把必要的参数设置成通过命令行传入的形式,这样我们只需要在运行的时候修改参数就可以了。本文总结下三种好用的参数解析方法。argparseargparse 是 Python 自带的命令行解析库,比较常.原创 2021-01-16 20:08:48 · 582 阅读 · 0 评论 -
SciPy 中不同稀疏矩阵存储方式介绍
文章目录稀疏矩阵简介稀疏矩阵Scipy 矩阵存储矩阵属性通用方法稀疏矩阵分类COO - coo_matrix适用场景优缺点实例化方法特殊属性代码示例CSR - csr_matrix适用场景优缺点实例化特殊属性CSC - csc_matrix实例化特殊属性BSR - bsr_matrix实例化特殊属性代码示例优缺点DOK-dok_matrix适用场景实例化方法优缺点代码示例LIL-lil_matrix适用场景优缺点实例化方法特殊属性代码示例DIA - dia_matrix实例化方法特殊属性代码示例矩阵格式对比原创 2020-12-30 17:21:02 · 627 阅读 · 0 评论 -
python 将变量名转化为同名字符串
作用locals() 函数会以字典类型返回当前位置的全部局部变量。如果是动态命名变量,需要动态获取变量的变量名来进行操作。源码测试import inspectdef retrieve_name(var): ''' utils: get back the name of variables ''' callers_local_vars = inspect.currentframe().f_back.f_locals.items() return [var原创 2020-12-30 16:24:31 · 2555 阅读 · 0 评论 -
Python 执行报错 TabError: inconsistent use of tabs and spaces in indentation
问题VScode 中执行python脚本报错 TabError: inconsistent use of tabs and spaces in indentation,该问题是由于代码中 看似空格实则没有空格引起的,因此在可以通过编辑器渲染出空格是否存在来看出问题;解决方法例如在 VScode 中,在方settings 中搜索 Render Whitespace,选项中选择 all 即可在编辑页面以 . 渲染空格;...原创 2020-12-28 11:11:12 · 772 阅读 · 0 评论 -
Neovim Python个人配置
本文记录下Neovim安装配置过程,最终的显示效果如下:Neovim 安装MacOSbrew install neovimLinuxsudo apt install neovimPython 支持为了打造Python IDE.我们需要安装Neovim Python模块:pip3/python2 install neovim 查看是否安装成功 :Checkhealth,出现以下结果即安装成功;配置创建配置文件:mkdir ~/.config/nvimnvim ~/.co原创 2020-10-08 12:12:07 · 3543 阅读 · 0 评论 -
Numpy函数解释:numpy.linspace()、numpy.logspace()
numpy.linspace()作用: 函数用于创建一个一维数组,数组是一个等差数列构成的,格式如下:np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)参数:参数描述start序列的起始值stop序列的终止值,如果endpoint为true,该值包含于数列中num要生成的等步长的样本数量,默认为50endpoint该值为 true 时,数列中包含stop值,原创 2020-06-03 18:03:33 · 1365 阅读 · 0 评论 -
Python 代码优化技巧(二)
文章作者:梦家个人站点:dreamhomes.top原文地址:https://dreamhomes.github.io/posts/202006010941.html公众号ID:DreamHubPython 是一种脚本语言,相比 C/C++ 这样的编译语言,在效率和性能方面存在一些不足,但是可以通过代码调整来提高代码的执行效率。本文整理一些代码优化技巧。代码优化基本原则代码正常运行后优化。很多人一开始写代码就奔着性能优化的目标,“让正确的程序更快要比让快速的程序正确容易得多”,因此,优化.原创 2020-06-01 11:08:05 · 527 阅读 · 0 评论 -
Python 函数解释:locals()
语法locals() 函数语法:locals()返回字典类型的局部变量。示例In [3]: def test(args): ...: a = 1 ...: b = 1 ...: print(locals()) ...:In [4]: test('test'){'args': 'test', 'a': 1, 'b': 1}原创 2020-05-19 21:34:38 · 792 阅读 · 0 评论 -
如何优化 Python 代码的执行效率?记录一些代码加速技巧
文章作者:梦家个人站点:dreamhomes.top原文地址:https://dreamhomes.top/733.html公众号ID:DreamHub文章目录代码加速技巧NumbaPython 多线程Modin 库联系作者代码加速技巧Python相比于C++来说有着十分用户友好的编程方式与众多的机器学习和深度学习库,入门快、学习轻松,但其性能劣势一直为人诟病。因此,很多工程师致力于提高python代码性能。本文记录下目前我所知道的Python代码加速方法!NumbaNumba 是一个开.原创 2020-05-14 10:58:27 · 586 阅读 · 0 评论 -
Numpy 函数解释:numpy.random.normal()
背景最近看Github源码时发现有个生成正态分布数值的用法:np.random.normal([3, 5]),这行代码会输入一个二维的array?In [1]: import numpy as npIn [2]: np.random.normal([3,5])Out[2]: array([1.46251563, 7.74062177])这与我理解的不同,normal 函数的参数为何为一个list且未指定size时生成1*2 array 呢?查看官方教程:https://docs.scipy原创 2020-05-09 20:19:34 · 6684 阅读 · 3 评论 -
如何优雅地处理 Python 中的异常?
文章作者:梦家个人站点:dreamhomes.top原文地址:https://dreamhomes.top/711.html公众号ID:DreamHub如何优雅地处理 Python 中的异常?最近学习 Scala 的异常处理模块时 Scala 模式匹配与异常处理,发现自己对于 Python 中的异常处理地非常不好并且进行 code review 时代码体验非常差,因此本文简单介绍下 ...原创 2020-05-07 22:06:35 · 727 阅读 · 0 评论 -
Python 脚本部署到服务器端每天定时自动给女票发送暖心情话和贴心提醒
文章首发于个人站点 Python 服务器端实现定时自动给女票发送贴心消息提醒 | 梦家博客公众号:【DreamHub】上一篇博文 Python 实现给女朋友的每日微信消息提醒!做一个贴心的程序员!!! 中实现每日手动发送消息提醒,但这样太麻烦了!本文解决将脚本部署到服务器上实现每日定时自动发送微信消息提醒!功能及消息内容源码已公开至Github:dreamhomes/daily-lov...原创 2020-04-27 12:03:48 · 1179 阅读 · 0 评论 -
Python 定时执行:schedule 模块
参考文档:https://schedule.readthedocs.io/en/stable/schedule是一个第三方轻量级的任务调度模块,可以按照秒,分,小时,日期或者自定义事件执行时间,便于执行轻量级任务。安装pip install schedule模块使用import timeimport scheduleimport datetimedef job(): ...原创 2020-04-25 20:11:50 · 890 阅读 · 0 评论 -
Pycharm 2020.1 版配置优化
手残更新最新版Pycharm时将配置文件都删除了????;在此重新记录下配置!安装教程参考:IntelliJ IDEA + Pycharm 2020.1 版安装 | 隐舍编辑器字体设置路径:File | Settings | Editor | FontPython 文件模板设置路径:File | Settings | Editor | File and Code Templates# ...原创 2020-04-21 22:38:33 · 5101 阅读 · 1 评论 -
覆盖所有领域的 Python 工具库汇总!建议收藏!!!
文章首发于个人站点 覆盖所有领域的 Python 工具库汇总公众号:【DreamHub】环境管理管理 Python 版本和环境的工具p – 非常简单的交互式 python 版本管理工具。pyenv – 简单的 Python 版本管理工具。Vex – 可以在虚拟环境中执行命令。virtualenv – 创建独立 Python 环境的工具。virtualenvwrapper- v...原创 2020-04-21 17:41:08 · 2338 阅读 · 0 评论 -
Python 实现给女朋友的每日微信消息提醒!做一个贴心的程序员!!!
文章首发于个人站点 实现微信消息每日贴心提醒 | 隐舍微信公众号:【DreamHub】如何做一个贴心的程序员男朋友?从微信每日提醒开始吧!!!微信消息内容包括如下:日期(阳历+阴历);每日壹句(内容来自爱词霸);天气预报(内容来自中国天气网):天气情况;温度情况;穿衣指数;减肥指数;空气指数;紫外线指数;消息效果功能模块及其Python实现依赖包...原创 2020-04-20 17:56:35 · 5154 阅读 · 14 评论 -
python项目目录模板
文件目录project-name│ .gitignore│ README.md│ requirements.txt│├─data│ data│├─docs│ doc│├─output│ data│└─project_name │ main.py │ __init__.py │ ├─data ...原创 2020-02-29 21:25:07 · 776 阅读 · 0 评论 -
python中的简易代码片段及其常见问题
Snippets参考:https://medium.com/better-programming/20-python-snippets-you-should-learn-today-8328e26ff124序列定长分割In [16]: from six.moves import zip_longestIn [17]: for i in zip_longest(*[iter([1,2...原创 2020-02-11 13:01:14 · 311 阅读 · 0 评论 -
t-SNE 可视化
背景t-SNE(t-Distributed Stochastic Neighbor Embedding)是一种非常流行的非线性降维技术,主要用来对高维数据进行可视化,了解和验证数据或者模型。t-SNE属于流行学习(manifold learning),假设数据是均匀采样于一个高维欧氏空间中的低维流形,流形学习就是从高维采样数据中恢复低维流形结构,即找到高维空间中的低维流形,并求出相应的嵌入映射,...原创 2019-11-29 17:29:39 · 7867 阅读 · 1 评论 -
Ubuntu16.04 Python操作MySQL数据库
Ubuntu16.04 Python操作MySQL数据库第一步 安装MySQL数据库安装过程可以参考本人另一篇博客:Ubuntu16.04安装MySQL数据库和可视化工具MySQL Workbench第二步 安装MySQL-python驱动下载驱动: 驱动下载地址安装驱动: 选择MySQL-python 1.2.5压缩包下载后,进入下载目录下:解压: unzip MySQ原创 2017-10-20 21:30:10 · 1416 阅读 · 2 评论 -
Ubuntu 16.04 Python读取MySQL数据库中文乱码的问题
Contented with little, yet wishing for more. 为收获一点点感到满足,但是希望可以获得更过。Ubuntu 16.04 Python读取MySQL数据库中文乱码的问题MySQL数据库安装好之后,发现不能向数据库中插入中文,作为一个伟大的天朝人简直不能忍啊。后来网上百度看到修改配置的解决方案,发现乱七八糟一大堆,很多不能解决问题。尝试了各种方法,将最原创 2017-10-22 20:24:26 · 569 阅读 · 0 评论 -
python之set()集合操作
Python之set集合操作创建集合>>> a = set('boy')a = {'b','o','y'}集合添加add 方法把要传入的元素做为一个整个添加到集合中>>> a.add('python')a = {'b','o','y','python'}update 方法把要传入的元素拆分,做为个体传入到集合中...原创 2018-04-08 10:31:12 · 352 阅读 · 0 评论 -
数据预处理—Python常用函数归纳
join方法功能 join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。语法str.join(sequence)用法str = "-";seq = ("a", "b", "c"); # 字符串序列print str.join( seq );#输出:a-b-cpd.concat方法功能 将多个Datafram...原创 2018-05-05 20:52:46 · 907 阅读 · 0 评论 -
python函数手册(2)
logging配置方式显式创建记录器Logger、处理器Handler和格式化器Formatter,并进行相关设置;通过简单方式进行配置,使用basicConfig()函数直接进行配置;通过配置文件进行配置,使用fileConfig()函数读取配置文件;通过配置字典进行配置,使用dictConfig()函数读取配置信息;通过网络进行配置,使用listen()函数进行网络配置。ba...原创 2018-11-15 22:17:55 · 782 阅读 · 0 评论 -
python函数手册(1)
copycopy.copy(x)Return a shallow copy of x.copy.deepcopy(x)Return a deep copy of x.深复制和浅复制的区别:A shallow copy constructs a new compound object and then (to the extent possible) inserts referen...原创 2018-11-14 19:18:01 · 7102 阅读 · 0 评论 -
wordcloud + lyrics生成歌词词云
根据图像生成歌词词云class wordcloud.WordCloud(font_path=None, width=400, height=200, margin=2, ranks_only=None, prefer_horizontal=0.9,mask=None, scale=1, color_func=None, max_words=200, min_font_size=4, stopwo...原创 2018-11-16 11:40:05 · 426 阅读 · 1 评论 -
Python-CIFAR-10二进制格式数据集转为JPG格式
Python源码# -*- coding: utf-8 -*-"""@Date: 2018/12/25@Author: dreamhome@Summary:"""import cv2import numpy as npimport os# 文件夹名str_2 = './train_cifar10'str_1 = './test_cifar10'if os.pat...原创 2018-12-25 10:42:46 · 706 阅读 · 0 评论 -
PyTorch中 tensor.detach() 和 tensor.data 的区别
PyTorch0.4中,.data 仍保留,但建议使用 .detach(), 区别在于 .data 返回和 x 的相同数据 tensor, 但不会加入到x的计算历史里,且require s_grad = False, 这样有些时候是不安全的, 因为 x.data 不能被 autograd 追踪求微分 。 .detach() 返回相同数据的 tensor ,且 requires_grad=False...原创 2018-12-26 11:33:52 · 39944 阅读 · 2 评论 -
常用的工具快捷键汇总
JupyterLab快捷键命令模式 (按键 Esc 开启)Ctrl-Enter : 运行本单元Y : 单元转入代码状态M :单元转入markdown状态A : 在上方插入新单元B : 在下方插入新单元D,D : 删除选中的单元...原创 2019-03-18 17:05:53 · 745 阅读 · 0 评论 -
Python numpy.random中的shuffle和permutation函数的区别
Great things are not done by impulse, but by a series of small things brought together. 伟大的成就并非源自一时冲动,而是由一系列小事汇聚而成的。Python numpy.random中的shuffle和permutation函数的区别如果传给permutation一个矩阵,它会返回一个新排列的矩阵原创 2017-10-20 20:29:31 · 1274 阅读 · 1 评论