
python自学
文章平均质量分 54
GeekZW
先做后说,说到做到;淡泊明志,宁静致远
唐奖-终身制
展开
-
Python编程题——句式中的指定字符替换
目标:给定句式(含待替换字符)、替换对象与待替换对象的 span,求随机替换N次后生成的数据。并保存为json格式文件。原创 2022-10-17 23:15:18 · 546 阅读 · 0 评论 -
NLP——常见任务的批量加载2.0
NLP任务常见的数据生成器,用于提升训练与测试效率原创 2021-12-24 00:16:50 · 1658 阅读 · 0 评论 -
Python —— 压缩文件夹
Python —— 压缩文件夹目标:压缩指定文件夹为zip文件适用场景:批处理文件,定时打包并发送至指定用户邮箱python脚本如下:#!/usr/bin/env python# -*- coding:utf-8 -*-"""@Author :xxxxx@Contact :1223242863@qq.com@File :zip.py@Time :202...原创 2021-08-17 23:44:07 · 7162 阅读 · 4 评论 -
NLPCDA —— 基于SimBERT的相似文本生成
基于SimBERT的相似文本生成感谢苏神开源的SimBERT,笔者先前简单尝试了SimBERT在相似文本生成的应用。同时结合nlpcda作者开源的代码,所以才有了博客中的demo:NLPCDA——中文数据增强工具。估计是标题不够高大上,或者大家不知道NLPCDA这个工具,阅读量不大。最近,苏神又开源了RoFormer-Sim模型(SimBERT的升级版,简称SimBERTv2),链接:SimBERTv2来了!融合检索和生成的RoFo...原创 2021-06-27 00:21:41 · 7727 阅读 · 19 评论 -
NLP——大规模预训练模型下载
XGBoost实践篇——LTR原创 2021-06-15 23:33:48 · 798 阅读 · 1 评论 -
Python——命令行传参
Python 提供了getopt模块来获取命令行参数。Python 中也可以使用sys的sys.argv来获取命令行参数: sys.argv 是命令行参数列表。 len(sys.argv) 是命令行参数个数。原创 2021-06-12 00:19:43 · 6438 阅读 · 0 评论 -
Python——assert的使用
assert(断言)用于判断一个表达式,在表达式条件为 false 的时候触发异常。断言可以在条件不满足程序运行的情况下直接返回错误,而不必等待程序运行后出现崩溃的情况,例如我们的代码只能在 Linux 系统下运行,可以先判断当前系统是否符合条件。...原创 2021-06-11 22:57:44 · 792 阅读 · 2 评论 -
Python——如何避免无法解码的数据读取
Python——如何避免无法解码的数据读取工作中,线上数据可能存在一些utf-8无法解码的符号,应该如何利用python读取?解决方案:新增参数errors="ignore"with open("demo.txt", "r", encoding="utf-8", errors="ignore") as file: for line in file: print(line)API文档可以看...原创 2021-06-07 00:35:46 · 1352 阅读 · 1 评论 -
Python——sklearn库的安装
Python——sklearn库的安装做个笔记,时间久了,都忘了sklearn库的标准名字——scikit-learn。所以,不要用pip install sklearn应该是pip install scikit-learn真被自己蠢哭了。说明:有的低版本的sklearn库没有"accuracy",版本问题,更新一下包就可以哈。...原创 2021-03-21 21:03:56 · 126381 阅读 · 26 评论 -
Python——CSV读取大文件报错_csv.Error: field larger than field limit
Python——CSV读取大文件报错_csv.Error: field larger than field limit 使用Python读取较大的csv文件时,可能出现大字段,导致超过字段默认限制,从而无法读取。因此,需要在使用csv读取文件前,先设置下csv字段显示大小。import csvcsv.field_size_limit(500 * 1024 * 1024)for i in range(1, 100): print("开始读取第{0}个".form...原创 2021-03-14 23:19:28 · 1898 阅读 · 3 评论 -
Leetcode17——电话号码的字母组合【Python3版】
Leetcode17——电话号码的字母组合【Python3版】题目链接:https://leetcode-cn.com/problems/letter-combinations-of-a-phone-number/解题与分析:itertools工具的熟练使用 python中的函数引用...原创 2021-03-07 18:25:03 · 220 阅读 · 0 评论 -
Pycharm——2种方式快速回滚指定版本代码
Pycharm指定版本的代码回滚工作中,因为各种原因,难免会遇到代码回滚。本文记录2种快速回滚代码的方式,以python项目为例 [Pycharm集成环境]:Pycharm中进行代码回滚、分支切换 Git命令进行代码回滚、分支切换假设项目已建成,并已push到Github或者Gitlab中【如果不会,请百度一下】。一般地,公司里的项目代码是多人维护,经常...原创 2021-02-24 22:27:01 · 5198 阅读 · 0 评论 -
Python——PyTorch的安装
Python——PyTorch的安装越来越多的人选择PyTorch的深度学习框架了,那么这么包如何安装呢?注意,它不能像Tensorflow或者Keras那样安装了,否者会报错的。官网给了具体说明,咱们移步:PyTorch官网注意:查看cuda版本: 方法1: cat /usr/local/cuda/version.txt方法2: nvcc --version 查看cudnn版本:...原创 2021-01-15 01:06:07 · 2126 阅读 · 1 评论 -
Python——工作中的调试经验
Python——工作中的代码调试经验【说在前面】作为一名算法工程师,结合个人的理解,需掌握四种语言:文字语言 + 符号语言 + 图形语言 + 编程语言。文字语言—— 能向不同的人清楚地表达自己的想法、观点与问题,编写技术文档、PPT汇报,以及总结能力等; 符号语言—— 要知道如何用专业的符号来描述问题(需要具备相应的数学功底,但不是纯秀数学功底,而不落地),并进行逻辑推理,证明等,不人云亦云,要有自己独到的见解; 图形语言—— 与别人讨论或交流时,用图形去解释问题,往...原创 2021-01-15 00:24:24 · 468 阅读 · 1 评论 -
Python——annoy的安装&如何安装包
Python——annoy的安装目标:在不同操作系统中安装annoy,用于从海量文本中快速查找出相似的Top N 文本。背景:Annoy是高维空间求近似最近邻的一个开源库。GitHub:Annoy源码,本文主要谈如何在Windows、Linux与MacOX中进行安装annoy包。具体用法与性能分析见下一篇博客。1、Linux/Mac OX操作系统pip install -i https://pypi.tuna.tsi...原创 2020-12-03 23:54:03 · 7923 阅读 · 5 评论 -
Python——常见面试题自我总结
Python——常见面试题总结背景:工作中,用Python写代码多少会遇到易错易忘的知识点,尤其是适合在面试中询问的知识点。有的比较偏,有的比较复杂(尤其是常用而不清楚具体原理的知识点),简单记录下,温故知新。说明:部分内容,摘自大神(搬)博客(砖),有些问题会结合自己的理解记录下我的看法,持续更新~。问题1:Python中内置函数sort排序原理是什么?时间与空间复杂度是多少?答案:pyt...原创 2020-10-24 23:41:21 · 312 阅读 · 0 评论 -
NLP——如何批量加载数据
NLP——如何批量加载数据问题背景:利用Bert、Albert、Roberta或腾讯词向量等预训练模型,去微调或者特征集成各类NLP子任务,并转存为pb模型后,如何进行批量预测,以提升性能,缩短耗时呢?当然是batch预测了!为了方便以后使用,个人抽成一个简单的类。资源:源代码:改自苏神的bert4keras源码文件夹examples中的情感分析例子 如果不熟悉子类继承父...原创 2020-10-14 22:40:51 · 1351 阅读 · 2 评论 -
yagmail——快速发送邮件
yagmail——快速发送邮件目标:如何利用python中的yagmail包,快速发送邮件。python写的一个简单demo脚本代码如下:import yagmailimport pandas as pdfrom loguru import logger# 保存excel文件contents= pd.DataFrame()contents["name"] = ["张三"...原创 2020-08-30 00:45:31 · 5748 阅读 · 3 评论 -
loguru——Python优雅日志包
loguru——python优雅日志包参考文档:『Python』优雅的记录日志——loguru Github:Delgan / loguru常用用法:from loguru import loggerimport syslogger.add(sys.stderr, format="{time} {level} {message}", filter="my_module",...原创 2020-08-16 21:26:00 · 2689 阅读 · 1 评论 -
Python——生成项目文件树状图
Python——生成项目文件树状图目标:用readme文档可能会用到文件夹的目录结构,如何用python快速实现?# 显示文件夹树状目录import osimport os.pathdef dfs_showdir(path, depth): if depth == 0: print("root:[" + path + "]") for item in ...原创 2020-08-03 23:02:03 · 3313 阅读 · 0 评论 -
Python——进度条加载
Python——进度条加载目标:进度条加载# 加载进度条的方式总结from time import sleepfrom tqdm import tqdmimport jsondata = []num_file = sum([1 for i in open("company_dict.txt", "r")])with open("company_dict.txt", "r"...原创 2020-08-03 22:52:22 · 573 阅读 · 0 评论 -
Python——获取列表中指定元素(多个)的索引
Python——获取列表中指定元素(多个)的索引目标:获取列表中出现为word的所有索引,并作为列表输出。解决方案:循环遍历+判断(简单)写作目的:改写为函数形式,便于以后直接调用。def get_same_element_index(ob_list, word): return [i for (...原创 2020-02-12 12:29:29 · 19800 阅读 · 0 评论 -
Python——如何获取二维列表的列数据
Python——如何获取二维列表的列数据目标:如何简单快速获取二维列表的列数据。代码:import numpy as nptest_data = [[1, 2, 3], [4, 5, 6]]print("二维数据:", test_data)print("第一列数据:", list(np.array(test_data).T[0]))print("第二列数据:", list(np.a...原创 2020-05-30 22:58:09 · 13580 阅读 · 1 评论 -
Typora——Vue文档风格主题设置
Typora——Vue文档风格主题设置目标:写代码时少不了写markdown文档,如何使用Typora来编写?(有道云笔记、印象笔记等等都可以,个人推荐Typora,适用于公司办公)1. Typora的介绍与下载 Typora是一款支持实时预览的 Markdown 编辑器和阅读器,支持Windows、macOS、Linux三大平台。Typora 作为一款合格的 Markdow...原创 2020-05-17 17:18:11 · 6444 阅读 · 0 评论 -
Python——按比例(随机)划分列表
Python——按比例(随机)划分列表目标:对列表A按比例(随机)划分为子列表A1与A2。代码:import randomdef data_split(full_list, ratio, shuffle=False): """ 数据集拆分: 将列表...原创 2020-04-18 16:19:46 · 17014 阅读 · 3 评论 -
Windows系统——读取编码为utf-8与utf-8-sig的文件区别
Windows系统——读取编码为utf-8与utf-8-sig的文件区别1、问题背景: 相信很多细心的朋友在实战的过程中发现,Windows系统下,利用Python或者Java读取txt文件时,控制台打印首行正常,但是若是用首行内容打开文本的话,就会报错。(换句话说,断点调试你会发现第一行多了一串字符"\ufeff")。Linux与Ma...原创 2020-03-14 15:11:19 · 2166 阅读 · 0 评论 -
Mac——Python生成中文词云
Python生成中文词云目标:对文本text进行分词,提取出topK的高频词,生成可视化的词云图。本文接python-wordcloud词云练习,主要实现中文的词云。Python代码:#!/usr/bin/env python# -*- coding:utf...原创 2020-03-13 00:14:42 · 3576 阅读 · 2 评论 -
Mac——利用Python进行网页爬取
Mac——利用Python进行网页爬取目标:利用Python爬取网页中的指定内容,例如,爬取百度百科上面的四川省的别名。输出:四川省的别名为:川、蜀、天府之国个人经验,网页爬取主要掌握2个核心点:网页爬虫的原理 正则表达式的灵活应用接下来,拆分一下步骤:1、打开待...原创 2020-03-02 23:32:47 · 4032 阅读 · 2 评论 -
Pyinstaller打包后的exe文件打开闪退解决方案
Pyinstaller打包后的exe文件打开闪退解决方案问题:利用pyinstaller对python代码打包后,dist文件夹中会生成一个xxx.exe可执行文件。但是很多朋友双击这个exe文件会发现,代码运行后,一闪而过(闪退)。那么如何解决?解决方案1:step 1: winkey + rstep 2: cd进入...原创 2020-03-01 21:40:24 · 33837 阅读 · 16 评论 -
Mac——利用Python读取与写入Excel文档
Mac——利用Python读取与写入Excel文档目的:按照自定义的格式写入或读取Excel文档,如标红加粗等Python代码:import xlwtimport pandas as pddef save_excel_way1(): # 创建Excel文件 wb = xlwt.Workb...原创 2020-02-29 20:16:48 · 7504 阅读 · 0 评论 -
Python——利用AC自动机进行关键词提取
Python——AC自动机目标:在之前写的文章【Python实现多模匹配——AC自动机】基础上,安装gcc(C编译器),再装ahocorasick ,并完成从文本中提取关键词的任务。由于原理之前已经介绍,这里只介绍安装过程与例子。1、安装ahocoras...原创 2020-02-26 22:02:11 · 8673 阅读 · 4 评论 -
Pyinstaller——Python代码打包
Pyinstaller——Python代码打包目标:对Python代码进行打包,生成exe文件(Mac系统的可执行文件)或exec文件(Mac系统的可执行文件)1、安装pyinstaller在终端输入:pip install -i https://pypi.tuna.t...原创 2020-02-26 21:29:32 · 347 阅读 · 0 评论 -
Python实现多模匹配——AC自动机
Python实现多模匹配——AC自动机目标:学习AC自动机,多模匹配。要求:尽可能用纯Python实现,提升代码的扩展性。一、什么是AC自动机? AC自动机,Aho-Corasick automaton,该算法在1975年产生于贝尔实验室,是著名的多...原创 2020-02-10 13:23:32 · 6426 阅读 · 1 评论 -
Python——腾讯词向量的预处理
Python——腾讯词向量的预处理目标:下载腾讯词向量,并对其进行预处理,输出字向量与对应的tokenizer。腾讯词向量下载地址:Tencent AI Lab Embedding Corpus for Chinese Words and Phrases。解压后是一个约...原创 2020-02-04 15:00:26 · 2917 阅读 · 0 评论 -
Python——n-gram实现
Python——n-gram实现目标:给定文本,以及划分的长度n,将文本划分为将长度为n的子文本,列表输出。例子:输入:哈哈切分长度:2列表输出:['哈哈']集合输出:{('哈', '哈')}输入:哈哈哈哈切分长度:3列表输出:['哈哈哈', '...原创 2019-12-07 15:26:23 · 14778 阅读 · 2 评论 -
Python——循环遍历多个列表实现字符的组合拼接
Python——循环遍历多个列表实现字符的组合拼接目标:给定泛化的句式文件regex.txt,组合生成query参考解决技巧:一日一技:如何用Python遍历多个列表元素的所有组合regex.txt的内容:小张(来|背|背诵|读)+(一段|一首|几首|一条)我喜欢的(唐诗|宋词|元曲)吧立马(删掉|关闭...原创 2019-11-21 23:33:57 · 8581 阅读 · 2 评论 -
Python——正则表达式的常见应用
Python——正则表达式的常见应用在NLP的数据处理过程中,经常会用到正则表达式,应用包括:case 1:字符串如何通过split()指定多个字符进行分割字符? case 2:网页爬虫时,如何自定义正则表达式,完成目标的匹配或查找?一、case 1:字符串如何通过sp...原创 2019-10-22 01:03:11 · 575 阅读 · 0 评论 -
Python编程——位运算的妙用总结
Python编程——位运算的妙用总结 参考百度百科:位运算 程序中的所有数在计算机内存中都是以二进制的形式存储的。位运算就是直接对整数在内存中的二进制位进行操作。比如,and运算本来是一个逻辑运算符,...原创 2019-05-07 23:02:10 · 1579 阅读 · 0 评论 -
OpenCV-Python 中文教程13——图像梯度与Canny边缘检测
OpenCV-Python 中文教程13——图像梯度与Canny边缘检测目标• 掌握图像梯度,图像边界• 学习函数 cv2.Sobel(), cv2.Schar(), cv2.Laplacian() 等• 了解 Canny 边缘检测的概念• 学习函数 cv2.Canny() 一、图像梯度原理 梯度简单来说就是求导。OpenCV 提供了三种不同的梯度滤波器,或者说高通滤波器: Sobel,...原创 2018-06-29 17:13:10 · 2545 阅读 · 0 评论 -
OpenCV-Python 中文教程12——形态学转换
OpenCV-Python 中文教程12——形态学转换形态学操作的具体原理见网址:http://homepages.inf.ed.ac.uk/rbf/HIPR2/morops.htm目标• 学习不同的形态学操作,例如腐蚀,膨胀,开运算,闭运算等• 学习函数cv2.erode(), cv2.dilate(), cv2.morphologyEx()等原理 形态学操作是根据图像形状进行的简单...原创 2018-06-29 16:16:06 · 610 阅读 · 0 评论