python
文章平均质量分 55
清风醉雨
莫忘少年凌云志,曾许天下第一流。
展开
-
python读取文件时出现\ufeff非法字符的处理思路
如下图所示,利用python读取文件后,在对字符串进行处理时,会出现。交互式命令行的运行结果如下图所示,在图中就可以发现所读取的文件为。库自动对编码格式进行判断(该库一般是不需要单独安装的)。编码对文件进行读取,然后判断字符串里面是否存在关键字符。产生该现象的原因是 UTF 的编码格式分为。测试结果如下图所示,返回的结果是布尔类型。本文目前采用的是一种笨办法,即可按照。因此,需要先对其进行解码,将。是没有字节序的问题的,而后者。是按照二进制流读取文件内容,是。,是存在字节序的区分的,编码的文件时需要选择。原创 2022-09-13 16:47:29 · 2659 阅读 · 1 评论 -
pycharm 远程调试报错 Couldn‘t refresh skeletons for remote interpreter 解决方法
远程和本地的依赖文件无法同步就会直接导致本地的pycharm因为依赖缺失而直接对所编写的代码提示红色,即语法错误,调用函数无法自动补全,无法查看函数内部实现的源码等。修改远程服务器上的文件 /home/xxx/.pycharm_helpers/generator3/① 删除远程服务器上的 /home/xxx/.pycharm_helpers 目录,② 在 pycharm 里重新添加 python interpreter。.py,删除其中的 encoding=“utf-8” 字段即可。原创 2022-09-05 21:20:28 · 3547 阅读 · 1 评论 -
基于多种分隔符进行字符串的分割
首先来说,字符串尾部的不叫分隔符,字符串中间的才叫分隔符。例如 Hello World, My name is Python. 中的点号就不是分隔符将下面这个字符串切分成单个的单词。Hello World, My name@ is Python从上面这个例子中可以看出分隔符有逗号,多个空格,@这三种。下面给出两种解决办法。方法1 String模块的spilt()思路: 将除了空格以外的其他分隔符全部替换为空格,然后按照空格符进行分割。str.replace('a', 'b') 表示用 b 替换原创 2021-09-26 20:07:39 · 1992 阅读 · 0 评论 -
利用Python实现中文转拼音
##两种方式###SnowNLP####安装pip install snownlp####Demo>>> from snownlp import SnowNLP>>> s = SnowNLP(u'一次满意的购物')>>> s.pinyin['yi', 'ci', 'man', 'yi', 'de', 'gou', 'wu']###pypinyin####安装pip install pypinyin####Demo>原创 2021-09-22 23:59:04 · 614 阅读 · 0 评论 -
Windows下安装Curses库 + 查看pip所支持whl版本
今天在弄一个视频转字符动画的程序,里面会涉及到 curse。Curses 库是 Python 中的一个库,我们非常容易想到的安装方式当然就是pip install curses但是我们会发现,当我们这样安装的时候竟然报错了,简直不可思议Could not find a version that satisfies the requirement curses (from versions: ) No matching distribution found for curses究其原因是为什原创 2021-09-22 23:45:07 · 4305 阅读 · 0 评论 -
安装spacy遇到的问题
在Windows 10 和 Ubuntu 16.04 环境下安装 spacy ,运行的命令是 pip install spacy, 在安装的过程中都遇到了这个问题,报错信息如下:Cannot uninstall ‘cytoolz’. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial u原创 2021-09-22 23:28:48 · 568 阅读 · 0 评论 -
设置 jupyter notebook 可远程访问
准备事项首先,我们都知道运行 jupyter notebook 命令时,系统会自动打开浏览器。我们使用命令行连接服务器的时候并不希望它打开浏览器,只需要它默默地在后端运行就可以了。此时我们只要稍微设置一下就可以了,我们通过 Xshell 连接远端服务器,在命令行运行这条命令时,Xshell 会自动将这条命令转发给 Xmanager,利用 Xmanager 来显示浏览器,那么我们设置不转移就可以了,首先在 Xshell 的窗口选择 文件 - 属性,就可以出现如下图所示的窗口了,点击 连接 - SSH - 隧原创 2021-09-22 23:23:10 · 1157 阅读 · 0 评论 -
python检测、创建目录和文件
首先来说,应当弄清楚相对路径和绝对路径,此处不再赘述。如果在代码中使用相对路径的时候,都是针对python程序运行的那个目录下而言的;如果使用绝对路径当然就完全不用考虑这些了,但是绝对路径对环境的适应较差,程序换一个地方运行的话就得改路径,所以在程序中灵活考虑吧。本文均是采用相对路径进行论述的。实验环境:Python 3.6.1 |Anaconda 4.4.0 (64-bit)判断当前目录下 test 文件夹是否存在 os.path.isdir('test') 或 os.path.exists(原创 2021-09-22 23:01:32 · 585 阅读 · 0 评论 -
Windows中启动Python报错
#报错信息在Windows命令行环境下启动Python3.6,报如下错误C:\Users\gaozh>pythonPython 3.6.1 |Anaconda 4.4.0 (64-bit)| (default, May 11 2017, 13:25:24) [MSC v.1900 64 bit (AMD64)] on win32Type "help", "copyright", "credits" or "license" for more information.Failed callin原创 2021-09-21 17:14:45 · 702 阅读 · 0 评论 -
Python中的二维矩阵“相减”——答东小羊问
问题描述:在一个 220*2 的矩阵 A 中,以行为单位(即每行),行与行之间不存在重复的数据。现已经得到了矩阵 A 中的 i 行数据构成的矩阵 B,求另外 220-i 行数据构成的矩阵 C 。问题分析:很明显这个问题其实并不难,我们最容易想到的解决办法就是for循环,一个不行就两个,两个不行就三个……但如果要求你尽可能少的使用for循环时,这个问题又该如何处理呢?本文实验环境:Python 3.6.1 |Anaconda 4.4.0 (64-bit)方案1拼接矩阵 + 虚数转化 + 计原创 2021-09-20 10:03:57 · 1005 阅读 · 0 评论 -
Python中 ‘\r‘ 的实际应用
####1. 知识储备\r 表示将光标的位置回退到本行的开头位置\b 表示将光标的位置回退一位在 python 语言中, 使用 print 打印输出时,默认是会进行换行的。如何让其不换行呢?在 python 2.x 中的语法是在 print 语句的末尾添加逗号,例如 print x, ;或者使用 sys.stdout.write() 对标准输出进行重定向,如此文所示 https://segmentfault.com/q/1010000002810865 。在 python 3.x 中,print原创 2021-09-20 10:02:53 · 1184 阅读 · 0 评论 -
登记成绩之小东助手v1
问题描述现有一份关于学生每次实验报告的汇总Excel表格,要求小东同志把成绩登记到对应的Word实验报告中去,一个班级95份,一共6次试验报告,总计480份报告。完全依靠手工,这是何等的毅力。。。鉴于此,特地写了一个简单的demo以备不时之需。样例需求: 将图1中的成绩登记在图2的成绩记录框中,要求字体样式除颜色为红色为红色外均保持一致。实验环境本文的实验环境是 Python 3.6.1 |Anaconda 4.4.0 (64-bit),Win10实验准备安装 python-docx原创 2021-09-20 10:01:01 · 174 阅读 · 0 评论 -
基于Python的微信朋友圈数据可视化分析之地点
前提朋友圈的相关数据请参照上一篇文章《基于Python的微信朋友圈数据可视化分析之个性签名》获取,本篇文章默认需要的数据已经下载保存至本地的 csv 文件中了。将好友的地点按照省份进行统计import pandas as pdfrom collections import Counterfrom pyecharts import Mapwechat_info = pd.read_csv("wechat_friends_info.csv", encoding="gbk")province =原创 2021-09-20 09:58:05 · 348 阅读 · 0 评论 -
Python将字典按照树形结构显示
平常情况下我们见到字典类型在显示的时候都是原始的字符串堆积形式,如果字典内部存在着多层嵌套关系,则非常不利于探索其内部的层次结构,如何层次化地显示字典类型的数据,使得我们能更加方便快捷地找到其嵌套关系,则是本文要解决的问题。层次化显示字典import jsontree = { 'bin': { 'bash': None, 'cat': None, 'cp': None, }, 'etc': { 'init.d': { 'apache2':Non原创 2021-09-19 12:00:53 · 2058 阅读 · 0 评论 -
定时删除微信文件夹中重复文件
问题描述PC端微信在翻看聊天记录时,对于文件会反复接收,然后你就会发现文件夹会有一大堆文件是重复的。重复的文件名用括号+数字进行了修改。虽然大家都在吐槽这个问题,可是微信死活还是没有对这个bug进行解决。那么, 如何解决这个问题呢?##分析文件夹禁止写入。导致文件无法接收,不可取。阻止重复接收。在微信接收文件前,先对本地文件进行检查,若重复,则不接收。可想象总是美好的,臣妾做不到啊。删除文件夹中重复文件。这属于是灾难发生后的挽救措施,也是没有办法的办法了。首先利用脚本通过一定的正则表达式规则可以原创 2021-09-19 11:55:01 · 5642 阅读 · 0 评论 -
python修改命令行字符颜色
本文的实验环境是 Python 3.6.1 |Anaconda 4.4.0 (64-bit),Win10知识储备如何修改命令行中字体颜色?print("\033[显示方式; 前景色; 背景色m")具体的描述可以参考文章 《python_控制台输出带颜色的文字方法》。经实测,效果不是特别稳定,在有的机器上可以跑通,有的机器上却不行。在 Python 3.x 中,使用 colorama 模块实现对控制台字体颜色的改变。经实测,效果稳定。例子如下,运行效果如图1所示。imp.原创 2021-09-19 11:54:07 · 1237 阅读 · 0 评论 -
python生成5层文件目录
问题描述:要求创建5层文件目录,每一层5个文件夹,共5层,文件夹的名字要求使用随机字符串,不能使用随机数命名。实验环境 Python3.x, Win10思考:树的遍历、排列组合、笛卡尔积最终选择了笛卡尔积的方式完成的该任务,代码如下:import hashlibimport randomimport itertoolsimport osdef create_md5(): #通过MD5的方式创建 m=hashlib.md5() m.update(bytes(str原创 2021-09-19 11:50:20 · 175 阅读 · 0 评论 -
python实现str时间和系统时间的比较
import timetime模块中主要有一下方法time.time() 获取当前系统时间,返回float型数值时间戳(当前时间相对于1970.1.1 00:00:00 以秒计算的偏移量)time.localtime() 获取当前系统时间,返回struct time 型时间time.mktime() 把struct time转换成float型时间戳如何将字符串时间和系统时间进行比较呢?思路:先将字符串时间转换成time类型的时间,要么是struct time型时间,要么就是float型时间。原创 2021-09-18 09:43:39 · 826 阅读 · 0 评论 -
用Python解析json数据
json 模块json是JavaScript程序编写数据结构的原生方式,**在Python中,字典的格式和json格式在显示上是一样的,但是字典是dict,而json是str。那么如何将一个字符串类型的dict或list转换成实实在在的dict和list**呢,请往下看。>>> import jsonPython的json模块主要包含两大函数。json.dumps把一个Python对象编码转换成json字符串json.loads把json格式字符串解码转换成Python对象原创 2021-09-18 09:42:41 · 1793 阅读 · 0 评论 -
href中的相对地址如何补全
最近在写爬虫的时候发现,有很多网页中的翻页以及列表的中的选择项的超链接都是采用的相对地址。那么你要抓取对应的网页,则必须先将其补全为绝对地址,再进行request,才能抓取到对应的内容。那么如何进行补全呢?我简单地讲述一下我所遇到的几种情况,以及在Python中的具体解决方式。以 ‘/’ 开头表示***根地址+相对地址***以 ‘./’ 开头表示***当前目录的地址+相对地址***以 ‘…/’ 开头表示***上一级目录的地址+相对地址***除上述三种情况外,不以任何符号作为开头与第二种情原创 2021-09-14 09:34:37 · 1327 阅读 · 0 评论 -
Python生成指定区间中的随机数
要求生成区间[a, b]中的随机数。若要求为浮点数,则Python中只能近似达到这一要求,因为随机函数的取值区间一般都为左闭右开区间,因为只能无限接近b。若要求为整数,那么将取数区间设置为[a,b+1)即可以取到b了。具体如下:1. random()numpy.random.random(size=None)生成[0.0, 1.0)的随机数。注意区间是左闭右开,取不到1.0。生成的是浮点数。参数size可以用于指定生成随机数的个数和形状。例如>>>import num原创 2021-09-14 09:29:25 · 10733 阅读 · 0 评论 -
python矩阵中float转int
问题:numpy定义的矩阵A中所有元素为float类型,现要求将A中所有元素转化为int类型。修改时间:2017年5月24日>>>import numpy as np>>>sample = np.mat([[1.0, 2.0], [3.0, 4.0]])>>>samplematrix([[ 1., 2.], [ 3., 4.]])>>>sample.astype(np.int)matrix([[1,原创 2021-09-13 22:55:25 · 4641 阅读 · 0 评论 -
安装NumPy遇到的问题
今天是我第一次写博文,就简单总结一下今天安装NumPy所遇到的一些问题,希望自己以后能坚持写,坚持总结。NumPy科学函数库是Python中经常用到的,常用与数据挖掘,机器学习等各种需要进行科学计算的场景中,NumPy尤其擅长处理矩阵的运算。下面介绍安装步骤:下载NumPy的地址:https://pypi.python.org/pypi/numpy如何选择自己对应的版本,文件名中从前往后,包含了Python的版本型号,操作系统类型,Python的bit。cp35表示Python3.5版本,原创 2021-09-13 22:50:23 · 351 阅读 · 0 评论