python
Autuming
开心工作每一天
展开
-
使用python 装饰器写 IO
经常做文本处理,会写大量的 with open(file,... encoding="utf-8") as f ,可以使用装饰器来写一个一劳永逸的IO方式,每次代码只需要写业务处理逻辑,而且能够 自己不断优化,减少重复代码的开发。原创 2022-09-22 17:14:40 · 289 阅读 · 1 评论 -
python多进程文件处理(二)
如何在python中不用分割文件的使用多进程完成文件处理,换句话说,和单进程跑程序一样的完成处理,具体demo 如下先把数据读入list ,再多进程处理,最后根据自己的要求完成结果的打印原创 2022-06-28 15:51:57 · 535 阅读 · 0 评论 -
scipy 计算向量的余弦相似度
使用scipy 计算预选值from scipy.spatial import distanceprint(1-distance.cosine([1,0],[0,1]))具体 应用:使用bert 计算 相似度import keras_bertfrom scipy.spatial import distance# bert 模型地址自己设定model = 'chinese_L-12_H-768_A-12'texts_1 = '爽肤水、柔肤水、洁肤水、精华水、紧肤水、化妆水、精萃液、原创 2021-01-08 09:52:21 · 1605 阅读 · 0 评论 -
win10 系统 anacoda3 pip 报错解决方案
win10新环境安装anaconda3,配置好环境后,pip 无法使用 报C:\ProgramData\Anaconda3\Scripts>pip install dotmapTraceback (most recent call last): File "C:\ProgramData\Anaconda3\Scripts\pip-script.py", line 10, in ...原创 2019-12-02 17:13:51 · 822 阅读 · 0 评论 -
python 中正则表达式的学习
在做文本处理的时候,经常会使用正则表达式,每次使用的时候,都要使用搜索引擎,怎么样才能熟练掌握,提高自己开发的效率,故决定 把正则表达式梳理一下,方便自己掌握1.split如果是单个分隔符,可以直接使用字符串的s = "hello,csdn"print(s.split(","))多个分隔符使用正则表达式import re# 中文分句doc = "厉害了!经参...原创 2019-05-15 20:23:41 · 193 阅读 · 0 评论 -
python 使用 xml.etree.ElementTree 解析 xml
使用xml.etree.ElementTree (简称ET) 来解析 xml 非常好用推荐给大家。按照我自己的理解,使用ET 解析xml 就像 遍历 字典一样 ,以如下数据为例<?xml version="1.0" encoding="utf-8"?> <SMP2019-ECISA> <Doc ID="4"> <Sentence I...原创 2019-05-24 18:15:43 · 898 阅读 · 0 评论 -
python install causes ModuleNotFoundError: No module named '_swigfaiss'
faiss 是facebook 开源的一个相似度检索工具,支持微秒级 相似度的检索。在安装过程中出现了一些坑 ,分享一下安装过程主要问题:提示 install causes ModuleNotFoundError: No module named '_swigfaiss' 的错误 ,后尝试各种解决办法才解决解决办法按照官网https://github.com/facebookres...原创 2019-05-24 21:26:46 · 10827 阅读 · 3 评论 -
keras 使用 self-attention
self-attention 原理 keras 使用self-attention安装pip install keras-self-attention使用demo import kerasfrom keras_self_attention import SeqSelfAttentionmodel = keras.models.Sequential(...原创 2019-05-28 09:46:09 · 7552 阅读 · 1 评论 -
python 活用命令行参数之argparse
python 开发,特别是文本处理方面,有没有经常vim 打开文件去修改参数,例如文件名称等,为了能避免 这种情况,可以使用argparse 直接在命令行修改自己可变的参数,具体使用方式看代码import argparseparser = argparse.ArgumentParser(description='data pre process')parser.add_argument...原创 2019-06-13 22:58:26 · 334 阅读 · 0 评论 -
BeautifulSoup 网络爬虫的简单使用
在文本处理过程中,经常需要业余的抓取一些训练语料,因此渐渐学会了如何使用BeautifulSoup 解析网页:首先,登录beautifulSoup 官网,查看 该package 的基本安装,入门,以及基本组成。https://beautifulsoup.readthedocs.io/zh_CN/v4.4.0/,主要目的了解 html 标签的种类,知道什么是标签Tag,什么是标签属性,方便以后按...原创 2019-09-09 21:22:22 · 773 阅读 · 0 评论 -
conda\pip 安装pytorch
最近GPU 上重新安装pytorch 出现了一些问题,整理一下正确安装pytorch1.打开pytorch 官网https://pytorch.org/如图生成自己安装环境对应的命令 ,如果找不到对应版本,可以直接替换版本号即可,例如在 cuda 9.0 下安装 torchconda install pytorch torchvision cudatoolkit=9.0 -c...原创 2019-09-18 11:35:58 · 1458 阅读 · 0 评论 -
python 生成 uuid
uuid 作为通用识别码 ,在开发中经常被使用,本文主要介绍如何在python中生成 uuid,本文以https://blog.csdn.net/renyuanfang/article/details/86701148为主要示例将其转化成uuidpython版本import uuid# 创建一个uuid 对象,可以使用系统默认提供的namespace = uuid.NAME...原创 2019-05-14 20:04:53 · 2308 阅读 · 0 评论 -
python 时间处理相关应用
总结一下,python3中时间处理的相关应用import datetimeimport time# 时间戳 已秒为单位timestamp = time.time()# 当前时间的处理dt = datetime.datetime.now() # 输出2019-04-19 10:29:14.544750# 格式化dt_format = dt.strftime('%Y-%m...原创 2019-04-19 14:27:57 · 148 阅读 · 0 评论 -
python 计算 函数时间的函数
经常会计算一段程序执行需要多长时间,python中提供了便捷的计算方法 Timer 使用方式如下#斐波那契数列函数# 模拟业务进程def demo(n): sum = 0 for i in range(n): sum +=i return sumfrom timeit import Timer#测试 计算斐波那契数列的消耗时间t = T...原创 2018-11-23 23:02:03 · 1078 阅读 · 0 评论 -
python2.7 出现UnicodeDecodeError 错误
python2.7 出现UnicodeDecodeError的错误,例如UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 0: ordinal not in range(128)主要解决办法是 import sys reload(sys) sys.setdefaultencoding('ut...原创 2019-01-24 14:25:12 · 498 阅读 · 0 评论 -
python中文分字
在对中文分字处理上,希望能够吧所有的中文分开,同时希望英文和数字不能被拆分,我选择使用正则表达式的形式实现,具体python3代码如下def seg_char(sent): """ 把句子按字分开,不破坏英文结构 """ # 首先分割 英文 以及英文和标点 pattern_char_1 = re.compile(r'([\W])') parts...原创 2019-01-15 09:41:45 · 7090 阅读 · 2 评论 -
python json 数据解析失败:json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes
s ="[{u'\u62bd\u5956': 1.0}]"s = "{u'lat': 61.190495, u'lng': -149.86884}"在使用json解析字符串上述类型的字符串时,json.loads()总是解析失败,错误如下:json.decoder.JSONDecodeError: Expecting property name enclosed in double ...原创 2019-01-22 16:35:19 · 8526 阅读 · 0 评论 -
预加载词向量的处理
在NLP任务中常常需要预加载的词向量,其中gensim 提供了现成的api供大家使用,但里面往往有些需求无法满足,例如未知词的处理。针对这些情况,自己根据gensim 的源码,进行了重构。本篇文章主要包含两部分内容:1.gensim 原始的调用方式;自己修改过的调用方式,本文词向量以腾讯提供的 Tencent_AILab_ChineseEmbedding.txt 为demogensim 加载...原创 2019-02-12 20:09:03 · 2367 阅读 · 0 评论 -
sympy 求导,并带入值进行计算
python 中的sympy 包能实现 表达式的求导。本文主要包含内容为:scipy 求导数 sympy 表达式求导 sympy 带入值计算 scipy求导scipy 能够直接对函数求导,缺点是需要无法保存导数的表达式,每次带入值计算,需要重复求导。import numpy as npfrom scipy.misc import derivativedef f(x)...原创 2019-02-19 10:16:43 · 25901 阅读 · 3 评论 -
python 使用 kafka 中 assert has_snappy(), 'Snappy decompression unsupported'的错误解决
任务场景 ,初次安装 kafka ,出现错误 主要是依赖package 未安装,conda安装 snappy 即可,命令如下:conda install python-snappy直接使用 “pip install python-snappy”安装 可能由于gcc 安装问题出现如下错误,需要首先解决gcc 问题,建议直接使用第一种安装方式即可解决问题...原创 2019-02-20 17:47:52 · 2161 阅读 · 0 评论 -
python 使用 signal包 完成异步的进程控制
问题描述:python 进程一直在往内存写数据,需要不定时的保存 已经写入内存的数据。换句话说,程序常驻内存,通过指令完成不同的操作。达到像使用http 不同参数控制不同返回的效果解决方法 :使用 signal 控制进程方法的执行主要内容:1.我所能想到的方法; 2.signal 的方法 3. 实现代码 ...原创 2019-02-26 19:15:36 · 453 阅读 · 0 评论 -
python 去掉html标签
通过爬虫抓下来的内容,有些正文中还保留一些html 标签可以通过如下方式去除import retext = "精彩!广东男篮141-118大胜深圳,胡明轩成为场>上新亮点 <p><font>北京时间4月8日讯:今天CBA赛场重燃战火,迎来半决赛的首场争夺。广东德比也就此打响,广东男篮在东莞主场迎战前来挑战的深圳男篮。结果广东队从一开场就打出了王者之气...原创 2019-04-11 15:24:55 · 1539 阅读 · 0 评论 -
hadoop-streaming 需要的python版本打包
在使用python写mapper-reduce的时候,集群的python 环境往往不能满足开发的需求,需要自己重新打包python,以下是自己打包python 的主要过程:下载python wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz# 解压tar -xzvf Python-3.6.8.tg#指定pyth.........原创 2019-04-11 15:55:09 · 1275 阅读 · 0 评论 -
linux普通用户配置自己的python环境
linux服务器上默认安装了python2.7,打算在自己的用户下面安装python3的环境。主要包括安装python和安装pip等,具体流程如下:在 https://www.anaconda.com/download/#linux 下获得下载链接2.wget https://repo.anaconda.com/archive/Anaconda3-5.3.0-Linux-x86_64...原创 2018-11-08 21:13:58 · 7774 阅读 · 2 评论