![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python
文章平均质量分 55
Python
长行
这个作者很懒,什么都没留下…
展开
-
Python|csv 模块报错 line contains NUL 的处理办法
替换为空回再生成出去。这样,我们仍然不需要将整个文件存储在内存中,在使用上与直接遍历。这是因为在文件中存在特殊符号 nul,即 ASCII 值为 0 的字符,可以表示为。为打开的文件对象,每次遍历会迭代中其中的一行,将这一行中的。(Unicode 码值为 0 的字符)。(ASCII 值为 0 的字符)或。|新增过滤旧行迭代器中包含的。原创 2024-08-08 18:57:10 · 241 阅读 · 0 评论 -
Python|精准每秒运行一次的定时器
不妨令run()中为主逻辑,在main()中循环调用run()函数。并通过在main()中增加延迟实现定时调用的效果。原创 2024-08-03 11:31:15 · 368 阅读 · 0 评论 -
Python|将模块上传到 pypi 的方法
上传到 pypi。执行以下命令后,会提示输入 pypi 的 token。脚本中的版本已更新。原创 2024-07-28 21:48:16 · 235 阅读 · 0 评论 -
Python|python-kafka 的 KafkaConsumer 类的自动提交设置
用于控制周期性提交偏移量的时间间隔,默认是 5000 毫秒。用于控制消费者组是否周期性地后台提交偏移量,默认是打开的;这两个非私有方法中被调用。自动提交的时机,只需要查看。原创 2024-07-19 19:05:04 · 648 阅读 · 0 评论 -
Python|pip 报错 use_2to3 is invalid 问题处理
参考链接:https://blog.csdn.net/u013938578/article/details/128753043。原创 2024-07-15 10:52:23 · 269 阅读 · 0 评论 -
Python|ImportError DLL load failed while importing MPI 报错处理
需要注意,一次性下载多个文件时,Chrome 浏览器可能会弹窗提醒。原创 2024-06-21 08:58:54 · 263 阅读 · 0 评论 -
Python|firefly 训练报错 KeyError qwen2 的解决方法
,可以看到:Qwen1.5 需要将 transformers 更新只 4.37。查看 firefly 的 README 中安装环境一节(原创 2024-06-20 08:29:10 · 292 阅读 · 0 评论 -
Python|Windows 安装 DeepSpeed 安装方法及报错 Unable to pre-compile async_io 处理
下时,发现路径已存在。查看这 3 个文件,发现其中 Linux 中使用的重定向文件。但是,这里的用法时错误的,无法覆盖文件,且路径也是错误的。PowerShell 可以通过 Win + r 搜索 powershell 启动。安装,会触发如下报错信息。出现后,需使用如下方法完成安装。脚本编译,其中在配置环境变量后,也是通过。不会实现覆盖,所以需要手动删除掉。观察报错信息,可以看到是。可以看到,这三行尝试将。原创 2024-06-19 08:26:57 · 3409 阅读 · 5 评论 -
Python|Windows 系统安装 triton 的方法
这是因为 pypi 中的 triton 中没有适用于 Python 的版本。如果继续抛出如下异常,可能是版本不匹配,暂未找到合适的解决方法。通常是用来显卡加速的,可以尝试暂时卸载。原创 2024-06-18 23:12:43 · 1962 阅读 · 0 评论 -
Python|Windows 安装 DeepSpeed 报错 Unable to pre-compile async_io 处理
PowerShell 可以通过 Win + r 搜索 powershell 启动。的文件,该文件中只是一个空路径,将该文件删掉即可。中复制文件夹时出现重复,可以为。路径下,发现有一个名为。原创 2024-06-17 20:06:13 · 338 阅读 · 0 评论 -
Python|flash_attn 安装方法
直接使用 pypi 安装会安装最新版本,不一定适配本地环境,所以需要直接从 release 中选择合适的版本安装。没有适合的 CUDA 版本和 pytorch 版本则应用更早的版本)。的版本上,直接选择最新版本即可(若最新版本的。原创 2024-06-09 16:34:18 · 2192 阅读 · 1 评论 -
Python|pip 安装报错 error Microsoft Visual C++ 14.0 or greater is required 的解决方法
直接按日志提示,在微软官网下载和安装 Microsoft C++ Build Tools 即可。这样可能需要安装较多的组件,但是简单、靠谱。如果不是磁盘非常紧张,建议使用这个解决方法。|选择 “使用 C++ 的桌面开发”,选择默认的安装详情。|出现如下界面说明安装已经成功。|下载后运行安装工具。原创 2024-06-09 08:32:16 · 576 阅读 · 0 评论 -
Python|module 的 __spec__ 属性
要区分 module 和 class,可以通过查看 module 对象和 class 对象的类名称,即。这是包含模块的符号表的字典。修改此字典将实际改变模块的符号表,但是无法直接对。的符号表中的一个名称。模块属性可以被赋值。时(根据 Python 文档,为避免并发问题,在遍历。为对应的 py 脚本路径。为模块对应 py 或 pyc 文件路径。语句严格来说也是对模块对象的一种操作;的模块对象,而是要求存在一个对于名为。此时 module 的类名称为。属性,为搜索子模块的路径。,class 的类名称为。原创 2024-05-28 18:26:55 · 426 阅读 · 0 评论 -
Python|pylint 类型别名的命名规范
是 Python 对类型的注释,是通过。原创 2024-05-20 10:29:51 · 280 阅读 · 0 评论 -
Python|生成项目的 requirements.txt 文件【v2】
优先推荐使用方法 1 或方法 3,即使用pipreqs或 PyCharm 工具扫描项目代码生成文件。pip freezepip freezepip freezepip freeze但是,使用pipreqs仅能扫描到项目中直接引用的包,如果在引用的包中使用了该包依赖中没有的包,则这些包也无法被pipreqs找到。但是,在开发过程中,这些包可能在我们排查问题时已经安装到了 Python 环境中。此时,使用方法 2 可以包含这些包。例如,pandas并没有依赖openpyxl,但在代码中可以选择使用。原创 2024-04-23 17:40:22 · 485 阅读 · 0 评论 -
Python|Linux 安装 Python 3.10+ 环境步骤
将 openssl 文件夹以及链接全部删除,重新解压缩、配置、编译、安装 openssl 后,再重新配置、编译、安装 Python。参考资料:https://blog.csdn.net/bo_self_effacing/article/details/123628224。参考资料:https://blog.csdn.net/qq_45742250/article/details/134876045。,那么在使用 pip 安装包时,旧会出现类似如下的报错。路径中,寻找是否存在缺失的依赖包,将它们重新定向到。原创 2024-04-22 11:19:31 · 2967 阅读 · 4 评论 -
Python|生成项目的 requirements.txt 文件
优先推荐使用方法 1,即使用pipreqs扫描项目代码生成文件。原创 2024-03-04 23:08:12 · 887 阅读 · 0 评论 -
Python|pip 及 setuptools 版本问题导致的装包报错问题处理
解决方案:升级 pip 版本。原创 2024-01-24 23:32:25 · 423 阅读 · 0 评论 -
Python|将 csv 文件转化为 sql 的 INSERT INTO 语句
最近有一个开发场景,需要将从 Hue 中导出的 csv 文件,转化为 INSERT INTO 语句并写入到测试数据库。原创 2023-12-31 17:56:26 · 840 阅读 · 0 评论 -
Python|文件中随机抽样(内存及水塘抽样两种方法)
最近有一个开发场景,需要从一个很大的文件中随机抽取一些不多的行进行测试。OnOnnOnOknk此外,还有另外一种方法三:先遍历一次文件计算文件中的行数,然后对行号进行抽样,最后打开两个文件,将原文件中被抽取的行号的行写入到新文件中;这样的时间复杂度是On,空间复杂度是O1(忽略操作系统缓存),其中n为文件中的行数。因为在我们的场景中,抽取的样本数量不大,方法二的空间复杂度已满足要求,所以方法三我没有开发。原创 2023-12-31 15:58:27 · 848 阅读 · 0 评论 -
Python 实例|为数据库连接类(Connection)增加 ssh 隧道的功能且不需要修改 Connection 的使用逻辑
实现一个数据库连接类(原创 2023-12-04 18:48:05 · 214 阅读 · 0 评论 -
Python 实例|通过 SSH 连接 MySQL
然后正常使用 MySQL 连接即可。原创 2023-10-25 20:02:35 · 901 阅读 · 0 评论 -
Python 性能优化|剔除多种不同前后缀的优化
优化后:将多个正则表达式合并到一个正则表达式中,统一一次检查前缀或后缀。原创 2023-10-24 13:22:45 · 67 阅读 · 0 评论 -
Python 语法特性|协程与 greenlet【学习笔记】
当操作系统切换线程时:需要切换线程的私有资源,包括栈、寄存器等;如需切换进程,则还需要切换用户态资源,包括内存、打开文件等。协程也可以理解为一种特殊的函数调用。正常函数在出口返回,而协程可以再中途返回而后恢复继续运行。优势:在经常有阻塞的情况下,主动让出时间片的协程模式比抢占式线程分配的效率要好,也简单得多。当调度策略切换协程时,只需要简单的现场保存和恢复。原创 2023-10-20 13:30:58 · 65 阅读 · 0 评论 -
Python 实例|支持计算最近速度和平均速度的计时器工具
的时间复杂度内计算任意时间段内的平均速度,我们记录每一条记录数量的前缀和,从而使计算任意时间段内的完成数量时,只需要将两个元素相减即可。因为我们主要优化高频调用前提下的性能,所以采用方案 2。尽可能提高在高频调用前提下的记录和查询性能。在查询性能方面,实现在。原创 2023-10-16 19:55:56 · 292 阅读 · 0 评论 -
Python 语法特性|uuid 模块整理
Python 的 uuid 模块是用于生成和操作 UUID(Universally Unique Identifier,通用唯一标识符)的模块。getnode():获取 48 位正整数形式的硬件地址。:根据主机 ID、序列号和当前时间生成一个 UUID。如果没有给出node,则使用getnode()来获取硬件地址;如果没有给出clock_seq,则使用随机的 14 比特位序列号。:根据命名空间标识符namespace和name的 MD5 哈希值来生成一个 UUID。uuid4()原创 2023-10-11 20:18:54 · 171 阅读 · 0 评论 -
Python 语法特性|Semaphore 和 BoundedSemaphore 信号量详解
信号量(Semaphore)是一种计数器,用于控制能同时访问某个资源的线程数量。它主要有两个操作:P(等待)和 V(释放)。当一个线程要访问共享资源时,它会调用 P 操作,如果计数器大于 0,则将计数器的值减 1,并允许访问资源;如果计数器等于 0,则线程被阻塞,直到计数器大于 0。当一个线程访问完共享资源后,会调用 V 操作,将计数器的值加 1,以允许其他线程访问资源。在 Python 的类和类中,acquire()方法对应 P 操作,release()方法对应 V 操作。Python 的。原创 2023-10-11 13:33:08 · 879 阅读 · 0 评论 -
Python|Linux 安装 Python 环境步骤
查找每个版本源码的 Python 官方页面:https://b3sh6jivuw.feishu.cn/docx/TkUmdXmMoocxYIxlKyic7DGrndc。其中的警告是因为没有将 Python 环境添加到 PATH 中。:配置 Python 源码编译后的安装路径。:下载需要安装的 Python 程序源码。:解压 Python 程序源码到当前目录。:编译 Python 源码并执行安装。:执行刚才指定的安装目录中的。原创 2023-10-09 14:56:50 · 201 阅读 · 0 评论 -
Python 报错处理|Windows 默认编码 gbk 不能解析文件报 UnicodeDecodeError 的问题处理
这很可能是因为在 Windows 系统运行时,没有显式地指定 configparser 包的编码,导致 configparser 在调用 Python 内置函数 open 时未指定 encoding 参数,进而导致自动读取了 Windows 的系统默认编码 GBK,进而因为 GBK 无法解析包含 UTF - 8 的中文的配置文件导致报错。指定 UTF - 8 未默认编码未生效。通过在命令提示符中执行。原创 2023-10-09 11:37:40 · 731 阅读 · 0 评论 -
Python 分析案例|数据采集案例:B 站 UP 主发布视频信息采集
实现目标本案计划实现:通过网络请求,获取UP主发布的所有视频的信息(包括视频标题、视频播放次数),并输出到控制台。【案例应用技巧】GET请求(requests):headers浏览器抓包(Chrome)翻页Json解析(json)实现过程当前爬虫的实现流程如下:确定数据所在的Url,以及控制翻页的参数执行网页请求并解决请求中出现的问题Json解析实现翻页下面我们按着以上步.原创 2020-05-29 11:49:40 · 1529 阅读 · 1 评论 -
Python 分析案例|数据采集案例:豆瓣电影 TOP250 采集
实现目标本案计划实现:通过网络请求,获取豆瓣电影TOP250的数据,并存储到Json文件中。案例应用技巧:GET请求(requests):headers翻页网页解析(BeautifulSoup)实现过程总体来说,简单的单线程爬虫的实现流程如下:确定数据所在的Url,以及控制翻页的参数执行网页请求并解决请求中出现的问题解析网页,获取格式化数据实现翻页存储数据下面我们按着以上步骤来依次完成。确定数据所在Url在Chrome浏览器中.原创 2020-05-28 12:31:13 · 2005 阅读 · 1 评论 -
Python 分析案例|文本整理样例:近体诗格律分析
在这个案例中,我们将要实现近体诗格律的分析。具体的,我们从如下角度分析近体诗的格律:诗句数量、诗句字数是否符合近体诗的要求,即是否为五绝、七绝、五律、七律中的一种(暂不考虑排律、六言的情况)是否押了平声韵,所押的韵脚是什么平水韵部(暂不考虑首句押韵的情况)诗句是否有拗句,是否存在孤平和拗救的情况诗文是否符合对黏的要求如果当时该诗不符合第1个或第2个要求,则不再分析;如果符合第1个和第2个要求.原创 2020-05-26 18:49:53 · 2546 阅读 · 3 评论 -
Python 分析案例|数据采集案例:猫眼网播热度采集
作者:长行时间:2020.05.26Github原文: Week-04/Example-0402实现目标本案例通过图文详细介绍使用Selenium请求和解析网页方法,其目标实现的需求为:通过Selenium,获取猫眼中实时网播热度的数据,并打印到控制台中。案例应用技巧:SeleniumSelenium安装方法通过pip安装selenium模块,安装命令:pip install selenium下载与Chrome浏览器版本配套的chromedriver可执行文件,下载地址:.原创 2020-05-26 13:22:36 · 641 阅读 · 1 评论 -
Python 分析样例|数据采集案例:微博热搜榜采集
实现目标本案例通过图文详细介绍网络请求和解析的方法,其目标实现的需求为:通过网络请求,获取微博热搜榜中的前50条热搜的关键词,并将结果打印到控制台中。实现过程总体来说,数据采集爬虫的实现过程包括如下步骤:确定数据所在的Url执行网页请求并解决请求中出现的问题解析网页,获取格式化数据存储数据(当前案例中不需要)下面我们按着以上步骤来依次完成。确定数据所在Url打开微博热搜榜,即Url为:http原创 2020-05-25 13:19:29 · 2879 阅读 · 1 评论 -
Python 实例|24 点纸牌游戏算法
对于任意给定的四张扑克牌,计算是否有赢得24点游戏的方法(即使用加、减、乘、除四则运算凑成24的方法);如果有的话,列出所有可能的方法。【24点游戏规则】在大小王以外的52张牌中,任意抽取其中4张牌。如果通过加、减、乘、除四则运算(可加括号)的方法,将抽到的4张牌算成24,则为胜利;每张牌都必须使用,且只能使用一次。第一种解法依据游戏规则,我们可以想到如下解决思路:使用枚举的方法,.原创 2020-05-26 15:30:07 · 3362 阅读 · 3 评论 -
Python类与对象引用案例:地名查询
Python基础算法案例:地名查询工具作者:长行时间:2020.05.24目标要求解析“中国地名表.json”,并实现如下功能:根据给定的中国地名,判断该地名是否存在;若地名不存在,返回None;若地名存在,则给出该地名所属的上级地名和该地名包含的下级地名。例如,给出“秦皇岛市”,返回其上级地名“河北省”以及其下级地名“海港区”、“山海关区”等。对于给定的中国地名A,判断该地名是否存在;若地名不存在,返回None;若地名存在,则返回该地名所属的各级上级地名。例如,给出“海港区”,返回其所有原创 2020-05-24 14:30:25 · 1121 阅读 · 2 评论 -
Python 分析样例|文本整理案例:《全唐诗》文本整理
在整理《全唐诗》的文本之前,我们首先需要完成以下两个步骤:确定需求了解文本在完成以上步骤后,我们开始实际着手整理文本,在整理的过程中大体上也包含两个流程:文本解析结果输出全唐诗文本语料在“全唐诗.txt”文件中,请参考语料阅读以下内容。确定需求我们计划将《全唐诗》中的每一首诗的各种信息分别提取出来,并转存为csv的形式。根据对文本的初步了解,我们发现我们需要提取的信息(即绝大部分诗文都包含的共性信息)包括:诗文的所属的卷编号(后简称卷编号)诗文的在当前卷中的序号(后原创 2020-05-15 14:55:15 · 4789 阅读 · 4 评论 -
Python 语法特性|错误和调试
在我们的程序运行中,不可避免地会出现各种各样的错误。造成这些错误的原因也多种多样,可能是因为代码逻辑存在疏漏,某一种情况我们没有考虑到;也可能是因为用户的特殊操作,使我们的程序陷入了未曾涉及的场景……错误处理当Python将错误信息输出到控制台后,我们首先需要定位到错误发生的位置。def test(name): return int(name)test("cbekd")例如,以上代码运行时会出现如下错误信息:Traceback (most recent call last): Fi原创 2020-05-15 14:55:54 · 402 阅读 · 1 评论 -
Python 实例|使用 openpyxl 读写 Excel
Openpyxl是一个用于读写Excel2010文件的Python第三方包。相较于xlrd,虽然没有与pandas的有效交互,但是在样式设置上的功能更加强大。其pip安装命令如下:pip install openpyxlOpenpyxl的整体逻辑是:首先通过打开或创建的方法,实例化Excel的工作簿文件(Workbook类);接着再通过打开或创建的方法,实例化Excel的工作表(Worksheet类);然后通过坐标或其他方式定位到一个或多个单元格执行操作;最后,将操作结果存入文件中。工作簿层级操作原创 2020-05-15 14:53:33 · 1333 阅读 · 1 评论 -
Python 语法特性|Python 常用内置函数
到目前为止(3.8.2),Python解释器共计提供了69个内置函数和类型,这些函数可以在任意条件下被调用。例如我们之前用来查询变量类型的type()就是一个内置函数。type()实际上是类的构造方法,其返回值是一个type对象,大家在没有理解类与对象之前,也可以先简单地将其理解为一个函数。下面我们来详细介绍一下在初学阶段比较常用的内置函数,在描述函数的功能时也主要以初学阶段可以用到的功能为主。1. 数据类型相关首先,我们先来了解一下与数据类型相关的内置函数。刚才用作举例的type()方法就是与原创 2020-05-15 14:53:00 · 537 阅读 · 1 评论