Python
文章平均质量分 72
工作中遇到的python问题
Sun_Sherry(停更)
这个作者很懒,什么都没留下…
展开
-
FastAPI: websocket的用法及举例
WebSocket 是一种在单个TCP连接上进行全双工通信的协议,允许客户端和服务器之间相互发送数据,而不需要像传统的HTTP请求-响应模型那样频繁建立和断开连接。原创 2024-09-30 22:40:16 · 1696 阅读 · 0 评论 -
FastAPI的简单用法
FastAPI 是一个用于构建高性能Web应用程序和API接口的Python框架。其与flask的最大区别在于:FastAPI基于Starlette和Pydantic,支持异步编程,能够提供高并发和高性能。关于Starlette和Pydantic。原创 2024-07-23 20:30:43 · 734 阅读 · 0 评论 -
Python:正则表达式相关整理
最近因为一些原因频繁使用正则表达式,因为以前系统整理过关于正则表达式的相关知识,所以这里仅记录使用期间遇到的问题。本文内容基于re包。原创 2024-07-12 17:26:44 · 648 阅读 · 0 评论 -
Python并发编程:多线程
全局解释锁(Global Interpreter Lock,简称GIL)是Python(特别是CPython)解释器中的一个机制,这个机制会限制同一时间只有一个线程执行Python字节码。原创 2024-05-25 16:45:02 · 947 阅读 · 0 评论 -
Python并发编程:多进程
并发编程指的是在一个程序中同时执行多个独立的任务(或操作),使得这些任务看起来是同时执行的。并发编程有多种实现方式,这里仅介绍多线程和多进程。模块中,通常使用消息传递机制进行进程之间的通信(尽量避免使用锁这类同步原语)。原创 2024-05-23 17:51:57 · 623 阅读 · 0 评论 -
Python使用asyncio包实现异步编程
在Python中实现异步函数的定义需要两个关键字(async和awaitasyncasync关键字声明一个异步函数。它可以在执行过程中暂停并允许其他代码执行。当你调用一个异步函数时,它会立即返回一个协程对象而不是实际的结果。原创 2024-05-15 20:03:31 · 1221 阅读 · 0 评论 -
HTTP协议及Python实现
HTTP(Hypertext Transfer Protocol)是一种用于传输超文本数据的应用层协议。它是万维网上数据交换的基础,定义了客户端和服务器之间进行通信的规则。原创 2024-05-12 22:50:53 · 1154 阅读 · 0 评论 -
Python:Pandas对象的深浅拷贝
这里仅以DataFrame为例进行说明。Pandas版本:1.5.3。原创 2023-03-19 20:42:55 · 4075 阅读 · 1 评论 -
Pandas:sort_index、sort_values方法的使用
以前关于DataFrame中的index只是片面地认为就是行索引,但是DataFrame的列名也可以被称为索引。比如data的定义中其二级列明的定义使用的仍然时pd.MultiIndex方法。同样,对于value也是类似。原创 2022-11-23 21:21:35 · 9740 阅读 · 0 评论 -
Pandas:如何修改DataFrame中某一列的值?
DataFrame是Pandas中的主要数据结构之一,本篇博客主要介绍如何DataFrame中某一列的值进行修改。原创 2022-11-06 17:40:31 · 37599 阅读 · 1 评论 -
Python:日期和时间包datetime的用法
时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数(或总毫秒数)。网上有很多时间戳在线转换工具,可以自行计算验证。原创 2022-08-13 16:24:57 · 4223 阅读 · 0 评论 -
Pandas:DataFrame常用方法
DataFrame常用方法介绍。原创 2022-07-16 20:37:58 · 3334 阅读 · 0 评论 -
Pandas:Period时间段类型及其常用操作
Pandas中的period时期表示的是一个时间区间,比如数月、数年等。可以使用pandas.Period类进行定义。原创 2022-07-16 15:46:17 · 3205 阅读 · 0 评论 -
Python:List\Numpy\DataFrame大规模查找效率(同时查询多个元素的索引)
问题描述:有一个包含大约321w个元素的List型变量A,一个包含200个元素的List型变量B。现在需要求出B中各元素在变量A中的索引,若B中的某个元素没有出现在A中,则不返回。这里主要对比当修改A变量的类型时查找花费的时间。原创 2022-05-18 17:56:12 · 2417 阅读 · 0 评论 -
Python-序列化和反序列化
序列化就是把数据变成可存储或可传输的过程的,只有序列化后的数据才可以写入到磁盘或者通过网络传输到Spark集群的其他节点上。反序列化则相反,反序列就是把序列化的变量重新转到内存里。原创 2019-08-06 17:27:23 · 2113 阅读 · 0 评论 -
复杂网络中的结构洞理论及其Python实现
结构洞理论最早由美国社会学家Burt提出。结构洞可以理解为两个未连接节点之间的间隙,当两个节点通过第三个节点连接时,该间隙被填充,并为纽带节点创造了重要的优势。原创 2022-04-26 20:00:00 · 6065 阅读 · 5 评论 -
正则表达式:零宽断言
原创 2021-12-13 23:50:28 · 8018 阅读 · 12 评论 -
Jinja2中怎么使用宏?
Jinja2中的宏的作用类似于常规编程语言中的函数,可以把频繁冲的常用行为定义为一个可重用的函数,减少代码复杂度。原创 2022-02-15 21:15:00 · 2398 阅读 · 0 评论 -
Python中如何判断字符串是否仅包含数字?
在用Python进行数据处理的时候,经常会遇到DataFrame中的某一列本应该是数值类型,但由于数据不规范导致在字段中夹杂了非数值类型。对于这种类型的数据,再进行处理的时候一般都需要先判断该列中的每一个值是否仅包含数字。原创 2022-02-12 17:36:09 · 5349 阅读 · 0 评论 -
Python+Selenium实现网页截图
最近的项目需要对网页进行自动化截图,可以使用Python和Selenium来实现。原创 2022-02-08 18:34:49 · 8561 阅读 · 0 评论 -
如何使用Flask包构建网页
这篇博客的重点在于页面之间的跳转及前后端的数据传输。原创 2022-01-25 22:30:32 · 7307 阅读 · 3 评论 -
Jinja2模板基本语法
Jinja2是基于python的模板引擎,是Flask作者开发的一个模板系统。起初是仿django模板的一个模板引擎,为Flask提供模板支持,由于其灵活,快速和安全等优点被广泛使用。原创 2022-01-24 18:00:37 · 8869 阅读 · 0 评论 -
Pandas中常用日期操作
这里只会介绍在使用Pandas过程中常用到的日期操作(持续补充)。原创 2021-12-15 22:34:16 · 2750 阅读 · 0 评论 -
python:Flask中request对象的简单用法
1.Get2.POST原创 2021-11-17 15:17:42 · 6109 阅读 · 0 评论 -
如何解决决策树可视化的中文乱码问题?(部分解决)
问题描述:在使用pydotplus和Graphviz对决策树结构进行可视化的时候,由于训练数据的特征名称使用的是中文,所以在最终的可视化结果中,中文被显示成了乱码,具体如下图:从网上找到的一些资料说,需要对GraphViz中的font配置文件做修改,但这些资料中所说的解决方案都是针对GraphViz 2.39版本做的,对于Graphviz2.49(目前的最新版本)无效(因为里面的配置文件都变了,也有可能是我安装的Graphviz版本里面的包不全)。我的解决方案如下:dot_data=tree.expo原创 2021-09-10 14:18:09 · 2031 阅读 · 0 评论 -
Numpy中不同维度数组之间的计算(Broadcasting广播机制)
numpy中尺寸兼容的定义为:将两个数据的shape靠右对齐,然后在各个维度上进行兼容性判断:若对应维度上的尺寸完全相同或其中一个维度的尺寸为1,则在该维度上是兼容的。对于不存在的维度,则默认是兼容的原创 2021-07-04 18:51:59 · 7028 阅读 · 1 评论 -
Python:Numpy中的函数
主要是Numpy中一些不太常见到的函数1 numpy.r_[]作用: 将切片对象在第一轴上进行拼接。2 numpy.c_[]作用:将切片对象在第二轴上进行拼接。3 numpy.linalg.inv()作用:求矩阵的逆矩阵。4 numpy.linalg.det()作用:计算矩阵对应的行列式的值。...原创 2021-06-20 14:01:51 · 297 阅读 · 0 评论 -
用matplotlib中的FuncAnimation()实现GDP世界排名动态图
很久以前写过一篇使用Matplotlib实现GDP世界排名动态图,具体可以参考:https://blog.csdn.net/yeshang_lady/article/details/106040579。 但当时最终的动态图的实现方法非常笨拙,所以这里用maplotlib中的动态图函数FuncAnimation()重新实现制作一遍。数据集可以在原博文给出的网盘链接中下载。具体代码如下:import pandas as pdimport matplotlib as mplfrom matplotlib原创 2021-04-09 11:09:14 · 1804 阅读 · 7 评论 -
Jupyter Notebook和Spyder无法显示动态图(已解决)
1. Jupyter Notebook无法显示动图添加代码%matplotlib qt5。添加这段代码之后,动图会以弹窗的形式展示出来。举个栗子:import pandas as pdimport numpy as npimport matplotlib.pyplot as pltimport matplotlib.animation as animation%matplotlib qt5def update_points(num): point_ani.set_data(x[原创 2021-04-08 16:21:04 · 5745 阅读 · 6 评论 -
Pandas中的Category类型变量
Pandas中常见的是通过cut和qcut函数来产生Category类型变量,具体情况参考https://blog.csdn.net/yeshang_lady/article/details/107957020。这里主要是介绍一些Categroy类型的常用方法。1. groupby()遇到Categroy类型变量时当使用Category类型变量进行Groupby操作时,即使该类型没有出现,也会被纳入计算中。当groupby()函数中的observed=True时,可以保证只统计出现的category原创 2021-01-06 22:36:06 · 1764 阅读 · 0 评论 -
Pandas:isin()用法及其注意事项
正如前文所述,isin()方法可以判断DataFrame/Series中的某个值是否等于给定值。从data_4和data_5的结果可以看出:当isin()接收DataFrame类型数据时,其返回的结果相当于将两个DataFrame(一个是data,一个是isin中接收的参数)按照index和column对齐,若在相应位置上两个DataFrame的值相等则为True,否则为False。Pandas中的isin()方法可以同时判断数据是否与多个值相等,若与其中的某个值相等则返回True,否则则为False。原创 2021-01-04 23:08:27 · 34286 阅读 · 0 评论 -
Pandas:NULL的含义及使用时的注意事项
pandas中原创 2021-01-15 15:47:08 · 4955 阅读 · 3 评论 -
Pandas分箱离散化方法:qcut()和cut()的用法
1.qcut()函数原创 2020-08-13 18:20:09 · 12759 阅读 · 0 评论 -
numpy中的stack()、hstack()、vstack()方法
1.stack()方法stack(arrays,axis)方法的主要功能为将arrays中的数据按照axis指示的轴进行堆叠。首先,对于任意一个三维矩阵来说,其axis轴具体位置如下:使用stack()方法不同轴上进行堆积时,其结果如下:注意:arrays中的各个array必须具有相同的shape参数。2.hstack()方法和vstack()方法hstack(arrays)方法和vstack()方法的作用相似,前者将沿着水平方向对arrays进行堆叠,后者则沿着垂直方向对arr原创 2020-08-05 18:00:46 · 677 阅读 · 0 评论 -
Numpy.tile()方法的作用
numpy.tile(A,reps)参考资料:1.https://numpy.org/doc/stable/reference/generated/numpy.tile.html原创 2020-07-11 16:52:49 · 929 阅读 · 0 评论 -
Numpy:如何计算协方差
1. 协方差原创 2020-06-28 16:09:49 · 5561 阅读 · 0 评论 -
用Matplotlib实现世界GDP动态排名
本篇博客中的代码可以在jupyter notebook中运行。2023/01大修博客。因为在学习Tableau的时候遇到了一个GDP动态图,写这篇博客主要是想用Python来实现这个动态图,最终实现效果如图1。原创 2020-05-10 19:36:52 · 4258 阅读 · 0 评论 -
如何解决Python包nltk中的LookupError错误
在使用ultk中的停用词时发现出现了LookupError错误,具体报错情况如下:1. nltk.download()失败nltk.download为什么会失败,原因不清楚。为了下载nltk中的语料库,采用了下面直接下载的方法。...原创 2020-05-02 16:04:31 · 9722 阅读 · 12 评论 -
Pandas中的unique()和nunique()方法
Pandas中Series和DataFrame的两种数据类型中都有nunique()和unique()方法。这两个方法作用很简单,都是求Series或Pandas中的不同值。而unique()方法返回的是去重之后的不同值,而nunique()方法则直接放回不同值的个数。具体如下:如果Series或DataFrame中没有None值,则unique()方法返回的序列数据的长度等于nuniqu...原创 2020-04-06 16:22:50 · 34992 阅读 · 2 评论 -
DataFrame通过修改索引提升查找速度
下面以MovieLens-100K(可以在网上自己下载为例)来展示不同语法的查询效果。import osimport pandas as pdimport timeimport randomdata=[]with open(os.path.join('ml_data','u.data'),'r') as r_data: for line in r_data: ...原创 2020-01-15 18:23:23 · 2912 阅读 · 0 评论
分享