![](https://img-blog.csdnimg.cn/b6b4ee956c3a4af4b64982b3a8959106.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
python
文章平均质量分 52
Python基础学习
vincent_hahaha
haha ha
展开
-
如何从requirements.txt文件中安装pytorch
平时使用文件来安装python但是如果我们的依赖中包含pytorch使用这个。原创 2024-04-25 17:39:00 · 304 阅读 · 3 评论 -
Python rich库
为了完全控制终端格式,Rich提供了一个Console类。的实例为一个具有行和列的可渲染对象。原创 2023-10-20 20:50:27 · 415 阅读 · 0 评论 -
Python nonlocal
我们知道global关键字用于表示全局变量。原创 2022-11-29 17:01:02 · 256 阅读 · 0 评论 -
Python正则表达式
还可以与其他字符进行组合:匹配除了a、b、c以外的字符。匹配到之间的任意一个字符,也可以代指除换行符以外任意一个字符匹配字母、数字、下划线或者汉字 匹配数字表示任意空白字符表示前一个字符出现0次或多次表示前一个字符出现1次或多次表示前面的字符出现0次或者1次表示前面的字符出现n次表示前面的字符出现n次或者大于n次重复次数是从n次到m次上面都是按照整体去匹配,如何匹配部分数据呢,这里可以使用分组的概念:可以原创 2022-11-29 12:30:29 · 1254 阅读 · 0 评论 -
Python time和datetime
返回的结果并不是一个时间字符串,而是一个。类型的数据,转化为字符串就表示当前时间。原创 2022-11-04 16:59:05 · 183 阅读 · 0 评论 -
Python JSON数据序列化
表示,json数据中的所有的数据类型。如果要支持其他的类型,需要自定义。原创 2022-11-04 15:23:30 · 355 阅读 · 0 评论 -
Python 内置模块
os.walk()主要用来扫描某个指定目录下所包含的子目录和文件。这篇文章将通过几个简单的例子来说明python中os.walk()的使用方法。上面的代码在扫描子目录和文件的时候,是采用自顶向下的方式进行扫描。可以理解为是深度优先进行遍历。假设我们的test文件夹有如下的目录结构,【可以在windows中通过。如果想要自底向上地扫描子目录和文件,可以添加上。命令来查看目录的文件结构】原创 2022-10-29 13:29:02 · 115 阅读 · 0 评论 -
Python 模块
例如,我们有一个文件utils.py我们在另一个文件run.py中可以引入这个utils.py文件中的方法。原创 2022-10-28 22:47:12 · 828 阅读 · 0 评论 -
Python 对json(字典)进行排序
【代码】Python 对json(字典)进行排序。原创 2022-10-27 16:27:43 · 2746 阅读 · 0 评论 -
Python 手动安装nltk数据包
自然语言处理工具包,是NLP研究领域常用的一个Python库。安装过程较为麻烦,这里记录一下。,然后移动到上面任意的一个文件夹。数据包,解压后,重命名为。原创 2022-10-17 17:40:26 · 2404 阅读 · 0 评论 -
python 实时打印控制台输出信息
我们在使用docker部署flask的时候,需要使用进行调试,但是控制台却不是实时输出的结果。原创 2022-10-17 17:14:31 · 1974 阅读 · 0 评论 -
Python 推导式
与创建其他类型的数据不同,不会立即创建元组数据,而是会返回一个生成器。对于生成器来说,可以通过。原创 2022-10-08 17:24:17 · 176 阅读 · 0 评论 -
Python 生成器
生成器原创 2022-10-08 14:34:17 · 366 阅读 · 0 评论 -
anaconda 离线安装Python环境
在离线环境下,使用anaconda创建环境的时候,需要指定Python的版本,但是无法自动下载,需要手动下载Python包,然后用conda进行安装。原创 2022-08-17 13:57:40 · 13027 阅读 · 2 评论 -
Python 闭包与装饰器
当执行v1()时,inner()中的name会在自己的作用域中查找,因此name为rose。同理,执行v2()时,也会在自己的作用域中查找,因此name为rose。原创 2022-07-20 13:52:03 · 123 阅读 · 0 评论 -
python 参数内存地址相关、深拷贝与浅拷贝
我们需要知道的是当函数执行传参时,传递的是内存地址。验证:可以看出传递的是内存地址。因为和指向了同一块内存,所以的值发生了变化。例如:深拷贝如果想实现传值而不是传地址,那么可以使用深拷贝。函数的返回值也是内存地址上述代码的执行过程:所以,最终v1指向的函数内部创建的那块内存地址。如果两个函数进行调用,将返回不一样的内存地址:参数的默认值当我们在函数中定义了一个参数默认值之后,在函数定义之后,还未执行函数时,Python解释器会帮助我们为函数创建一块区域,存储参数的默认值。原理:Pyt原创 2022-07-01 12:33:26 · 711 阅读 · 0 评论 -
python 数据类型(整理)
类型转换:长整型:在python2中跟整数相关的数据类型有两种:int(整型)、long(长整型),他们都是整数只不过能表示的值范围不同。在python3中去除了long只剩下:int(整型),并且 int 长度不在限制。地板除:python2:布尔类型类型转化:整型转为布尔类型:只有转为布尔类型时结果为,其他情况都是其他类型转为布尔类型:只有内容为空的情况转为布尔类型时结果为,其他情况都是如果在 、 条件后面写一个值当做条件时,他会默认转换为布尔类型,然后再做条件判断。字符串判断字原创 2022-06-29 17:01:36 · 368 阅读 · 0 评论 -
python字符编码
编码,就是文字和二进制之间的一个对照表。最早计算机诞生之初,就产生的编码,ascii规定使用1个字节来表示字母与二进制的对应关系。例如:总共有28=2562^8=25628=256 个编码。对于一些语言是不够的。gb-2312编码,由国家信息标准委员会制作(1980年)。gbk编码,对gb2312进行扩展,包含了中日韩等文字(1995年)。在与二进制做对应关系时,由如下逻辑:unicode也被称为万国码,为全球的每个文字都分配了一个码位(二进制表示)。有两种表示方式:ucs4无论是ucs2原创 2022-06-29 14:26:45 · 309 阅读 · 0 评论 -
Python 短路运算符
例如代码,那么变量的值是多少?第一步:会将前后的值转换为布尔值,这里相当于第二步:这一次的逻辑处理取决于谁?中的第一个为,所以语句的最终结果取决于第二个值(如果第二个为那么结果为,如果第二个为,那么结果为)。本例中取决于第二个值。所以后面的值等于多少,结果就是多少。第三步:的值为例如:第一步:会将前后的值转换为布尔值,这里相当于第二步:这一次的逻辑处理取决于谁?中的第一个为,所以最终结果取决于第一个值。第三步: 的值为例如: 第一步:会将前后的值转换为布尔值,这里相当于第二步:这一次的逻辑处理原创 2022-06-28 17:43:24 · 374 阅读 · 0 评论 -
python 字符串格式化
这里的是为字符串占位,而真正为整型占位的是,严谨的方式写:1.3 需要注意的是上面这段代码会运行出错:因为我们的字符串中出现了多个,会把也当做了占位符,因此报错。解决这种方式的方法就是多写一个,例如:因此,一旦字符串中存在百分比的形式,一定要加两个以实现百分比的效果。方式1:方式2:也可以不写序号,默认则是按位置来取对应的值,但是上面的情况则会报错:方式3:f格式化Python3.6版本及之后才支持的方式。可以支持表达式:在Python3.8引入的新功能:输出结果:进制转换:原创 2022-06-28 16:40:34 · 198 阅读 · 0 评论 -
Python 实现简单的sqlhelper
python实现简单sqlhelper原创 2022-06-14 16:45:47 · 601 阅读 · 1 评论 -
python with上下文管理
python with 上下文管理原创 2022-06-13 10:32:23 · 230 阅读 · 0 评论 -
python 使用flask-socketio
安装flask-socketiopip install flask-socketio服务端from flask import Flask, render_templatefrom flask_socketio import SocketIO, emitapp = Flask(__name__)app.config['SECRET_KEY'] = 'secret_key'socketio = SocketIO()socketio.init_app(app, cors_allowed_or原创 2022-05-29 10:31:19 · 1903 阅读 · 2 评论 -
使用matplotlib 画多个networkx图
import numpy as npimport networkx as nximport matplotlib.pyplot as pltG = nx.Graph()edgelist = [(0,1),(0,2),(0,3),(1,3)]G.add_edges_from(edgelist)fig = plt.figure()ax = fig.add_subplot(1,2,1)option = {'font_family':'serif', 'font_size':'15', 'fon原创 2021-11-17 18:05:09 · 821 阅读 · 0 评论 -
linux 配置jupyter远程访问
安装jupyterpip install jupyter 修改配置文件首先生成配置文件:jupyter notebook --generate-config修改配置文件,~/.jupyter/jupyter_notebook_config.py添加下面的内容:c.NotebookApp.ip='*'#×允许任何ip访问c.NotebookApp.open_browser = Falsec.NotebookApp.port =8888 #可自行指定一个端口, 访问时使用该端口测试ju原创 2021-09-07 15:17:34 · 130 阅读 · 0 评论 -
通过pyinotify实现文件的监控,包括监控文件是否传输完成
首先安装pyinofity,pip install pyinotify创建Event Processor与linux下面的inotify事件机制类似,我们通过继承ProcessEvent来实现对inotify事件的重写,这里将事件名封装成process_事件名,例如IN_CREATE会经过Event Processor变成process_IN_CREATE。下面是所有的事件:Inotify EventsDescriptionIN_CREATEFile/directory crea原创 2021-09-06 23:22:55 · 1697 阅读 · 0 评论 -
pip离线安装pip包
实际开发中,我们的项目部署环境可能是封闭的内网环境,无法直接使用pip install -r requirement.txt这种方式安装项目依赖包,这时pip download这个犀利的工具就要发光发热了使用pip download在一个可以连接外网的环境下载整个项目的依赖包pip download \ --only-binary=:all: \ # 对于包以及包的依赖包,都不使用二进制 --platform linux_x86_64 \ # 指定系统环境 -d \home转载 2021-09-06 10:11:31 · 6114 阅读 · 1 评论 -
dropout理解(三)
本节使用的pytorch版本为1.8.1,其中的torch.nn.functional函数中的dropout方法中的参数training默认为True:下面进入正文,首先创建一个简单的模型:import torchimport torch.nn as nnimport torch.nn.functional as Fclass LinearFC(nn.Module): def __init__(self): super(LinearFC, self).__init_原创 2021-08-27 14:45:31 · 552 阅读 · 0 评论 -
dropout理解(一)
1.Dropout原理1.概述作用:防止过拟合方法:训练时,随机停止某些神经元的参数训练2. Dropout工作流程及使用2.1 Dropout具体工作流程假设我们要训练这样一个神经网络,如图2所示。上图表示标准的神经网络。输入是x输出是y,正常的流程是:我们首先把x通过网络前向传播,然后把误差反向传播以决定如何更新参数让网络进行学习。使用Dropout之后,过程变成如下:(1)首先随机(临时)删掉网络中一半的隐藏神经元,输入输出神经元保持不变(图3中虚线为部分临时被删除的神经元)(转载 2021-08-27 10:08:24 · 730 阅读 · 0 评论 -
nn.linear()函数
import torchimport torch.nn as nnimport torch.nn.functional as Fclass LinearFC(nn.Module): def __init__(self): super(DropoutFC, self).__init__() self.fc = nn.Linear(3, 2) def forward(self, input): out = self.fc(input)原创 2021-08-26 17:21:11 · 7048 阅读 · 1 评论 -
pytorch使用清华源安装仍失败解决方案
给conda配置清华源镜像,及pytoch清华源镜像:# 添加清华源conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/conda config --set show_channel_urls yes#添加pytor原创 2021-08-25 00:08:42 · 1283 阅读 · 0 评论 -
利用图基Tukey method检测数据集中的异常值
在数据集中如果某一个观察值不寻常地大于或者小于该数据集中的其他数据,我们则称之为疑似异常值。疑似异常值的存在,会对随后的计算结果产生不适当的影响,检测疑似异常值并加以适当的处理是十分必要的。一种经典的计算数据集中疑似异常值的方法是Tukey method。该方法先计算出数据集的四分之一分位数(Q1)和四分之三分位数(Q3),从而计算出四分位数间距(IQR),然后将小于Q1 - 1.5IQR或者大于Q3 + 1.5IQR的数据点当做是疑似异常值。我们可以借助这种方法在DataFrame中检测异常值。代码如下原创 2021-07-05 16:38:56 · 2759 阅读 · 5 评论 -
anaconda 命令
查看conda版本conda --version设置源conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --set show_channel_urls yes检测目前安装了哪些环境变量conda info --envs创建新环境conda create --name pytorch python=3.6激活环境conda activate原创 2021-04-28 13:34:32 · 108 阅读 · 0 评论 -
python中os.path和pathlib
前段时间,在使用新版本的 Django 时,我发现了 settings.py 的第一行代码从import osBASE_DIR = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))变成了from pathlib import PathBASE_DIR = Path(__file__).resolve().parent.parent为什么 pathlib 更值得我们使用?打印当前的路径使原创 2021-06-16 23:04:51 · 597 阅读 · 0 评论 -
python中哈达玛积与矩阵乘法的区别
矩阵乘法是线性代数的基础运算,例如矩阵A是32,矩阵B是32哈达玛积是两个m*n矩阵相乘那么在python中,他们是怎样计算的呢?当矩阵是 numpy.ndarray 时,A * B 表示哈达玛积当矩阵是numpy.matrix是,A*B表示矩阵相乘,紧接着上面的代码...原创 2021-06-16 22:38:47 · 969 阅读 · 0 评论 -
python中yield的用法
在 Python 开发中,yield 关键字的使用其实较为频繁,例如大集合的生成,简化代码结构、协程与并发都会用到它。生成器如果在一个方法内,包含了 yield 关键字,那么这个函数就是一个「生成器」。生成器其实就是一个特殊的迭代器,它可以像迭代器那样,迭代输出方法内的每个元素。我们来看一个包含 yield 关键字的方法:# coding: utf8# 生成器def gen(n): for i in range(n): yield ig = gen(5)原创 2021-06-06 23:24:46 · 2937 阅读 · 6 评论 -
【转】L1范数与L2范数的区别
把答案放在前面L0范数是指向量中非0的元素的个数。(L0范数很难优化求解)。L1范数是指向量中各个元素绝对值之和。L2范数是指向量各元素的平方和然后求平方根。L1范数可以进行特征选择,即让特征的系数变为0。L2范数可以防止过拟合,提升模型的泛化能力,有助于处理 condition number不好下的矩阵(数据变化很小矩阵求解后结果变化很大)。(核心:L2对大数,对outlier离群点更敏感!)下降速度:最小化权值参数L1比L2变化的快。模型空间的限制:L1会产生稀疏 L2不会。L1会趋向原创 2021-05-26 22:09:28 · 13586 阅读 · 4 评论 -
[转]一文解释PyTorch求导相关 (backward, autograd.grad)
PyTorch是动态图,即计算图的搭建和运算是同时的,随时可以输出结果;而TensorFlow是静态图。在pytorch的计算图里只有两种元素:数据(tensor)和 运算(operation)运算包括了:加减乘除、开方、幂指对、三角函数等可求导运算数据可分为:叶子节点(leaf node)和非叶子节点;叶子节点是用户创建的节点,不依赖其它节点;它们表现出来的区别在于反向传播结束之后,非叶子节点的梯度会被释放掉,只保留叶子节点的梯度,这样就节省了内存。如果想要保留非叶子节点的梯度,可以使用retain原创 2021-05-06 23:14:43 · 461 阅读 · 1 评论 -
python利用win32com读取doc和pdf内容,并保存到文件
将使用win32com包进行处理读取doc文件# coding=utf-8import os, fnmatchfrom win32com import client as wcfrom win32com.client import Dispatchdef word2txt(filePath, savePath = ''): dirs, filename = os.path.split(filePath) print(dirs, '\n', filename) new_原创 2021-05-03 15:34:02 · 2471 阅读 · 3 评论 -
jupyter下使用conda环境
安装nb_condaconda install nb_conda安装完成后,jupyter notebook中多了Conad选项卡,但此时还不能用,还需要在每一个虚拟环境中安装jupyter.在虚拟环境中安装jupyter进入虚拟环境,Linux&mac环境:source activate your_env_name,在windows下执行conda activate your_env_name在虚拟环境中安装jupyter:pip install ipykernel,这样重新执行j原创 2021-05-02 23:47:50 · 1740 阅读 · 0 评论