python

Python随机值生成的常用方法总结

2022-10-13
目录 一.随机整数 二.随机浮点数 三.随机字符串 四.随机数使用到的一些算法 一.随机整数 1.包含上下限:[a, b] import random #1.随机整数:包含上下限:[a, b] for i in range(10): print(random.randint(0,5),end=" | ") 查看运行结果: 2.不包含上限:[a, b) import random #2.随机整数:不包含上限:[a, b) for i in range(10): print(random.

详解python中@classmethod和@staticmethod方法

2022-10-13
在python类当中,经常会遇到@classmethod和@staticmethod这两个装饰器,那么到底它们的区别和作用是啥子呢?具体来看下. @classmethod :默认有一个cls参数,用类或对象都可以调用. @staticmethod:静态方法,无默认参数,用类和对象都可以调用. 1.@staticmethod: 我们看下代码: class A: def f1(x): print(x) A.f1(2) # 2 类.函数 创建一个类,通过类调用函数. class A: @staticm

Python RawString与open文件的newline换行符遇坑解决

2022-10-13
目录 背景 思路 遇到的问题 思考过程 Raw String 如果字符串没转义字符,那么 Raw String 跟普通 String 完全一致 误区:注意单个字符的引号问题 启发 正则替换的问题 open 文件的 newline 参数 背景 一次工作中,我需要完成某个文件的字符串替换. 需求是这样的:文件A有个占位符,需要利用Python3,把占位符替换成文件B的内容.文件都不大,可以一次性读到内存处理. 我想,这不是简单的open read replace write就搞定了嘛? 结果,还真有

利用Pytorch实现获取特征图的方法详解

2022-10-13
目录 简单加载官方预训练模型 图片预处理 提取单个特征图 提取多个特征图 简单加载官方预训练模型 torchvision.models预定义了很多公开的模型结构 如果pretrained参数设置为False,那么仅仅设定模型结构:如果设置为True,那么会启动一个下载流程,下载预训练参数 如果只想调用模型,不想训练,那么设置model.eval()和model.requires_grad_(False) 想查看模型参数可以使用modules和named_modules,其中named_modul

利用Python自制一个批量图片水印添加器

2022-10-12
前段时间写了个比较简单的批量水印添加的python实现方式,将某个文件夹下面的图片全部添加上水印. 今天正好有时间就做了一个UI应用的封装,这样不需要知道python直接下载exe的应用程序使用即可. 下面主要来介绍一下实现过程. 首先,还是老规矩介绍一下在开发过程中需要用到的python非标准库,由于这些库都是之前使用过的. 所以这里就直接导入到代码块中,如果没有的话直接使用pip的方式进行安装即可. # It imports all the classes, attributes, and 

Python模板的使用详细讲解

2022-10-12
目录 一 模板语法传值 二 过滤器 三 标签 四 自定义模板标签和过滤器 4.1 自定义过滤器 4.2 自定义标签函数 4.3 自定义inclusion_tag 五 模板的继承 六 模板的导入 一 模板语法传值 方式一: # urls.py path('template', views.template) # views.py def template(request): name = "jasper" age = "18" return render(reques

python机器学习pytorch 张量基础教程

2022-10-12
目录 正文 1.初始化张量 1.1 直接从列表数据初始化 1.2 用 NumPy 数组初始化 1.3 从另一个张量初始化 1.4 使用随机值或常量值初始化 2.张量的属性 3.张量运算 3.1 标准的类似 numpy 的索引和切片: 3.2 连接张量 3.3 算术运算 3.4单元素张量 Single-element tensors 3.5 In-place 操作 4. 张量和NumPy 桥接 4.1 张量到 NumPy 数组 4.2 NumPy 数组到张量 正文 张量是一种特殊的数据结构,与数组

python人工智能使用RepVgg实现图像分类示例详解

2022-10-12
目录 摘要 安装包 安装timm 数据增强Cutout和Mixup EMA 项目结构 计算mean和std 生成数据集 摘要 RepVgg通过结构重参数化让VGG再次伟大. 所谓“VGG式”指的是: 没有任何分支结构.即通常所说的plain或feed-forward架构. 仅使用3x3卷积. 仅使用ReLU作为激活函数. RepVGG的更深版本达到了84.16%正确率!反超若干transformer! RepVgg是如何到的呢?简单地说就是: 首先, 训练一个多分支模型 然后,将多分支模型等价转

Python字典高级用法深入分析讲解

2022-10-12
目录 一. collections 中 defaultdict 的使用 1.字典的键映射多个值 2.统计字典中某个值出现的次数 二.collections 创建有序字典 1.改变 key-value 的顺序 2.删除 key_value 三.字典排序 1.按照 key 进行排序 2.按照 value 进行排序 四.通过某个关键字排序一个字典列表 一. collections 中 defaultdict 的使用 1.字典的键映射多个值 将下面的列表转成字典 l = [('a',2),('b',3)

pytorch tensorboard可视化的使用详解

2022-10-12
目录 一. 安装tensorboard 二. 使用tensorboard 1.首先导入模块 2.初始化 3.记录内容 4.关闭 三.可视化 1.打开终端写命令行 2.打开浏览器打开tensorboard可视化 一. 安装tensorboard 直接pip即可: pip install tensorboard 这里注意,使用pytorch,并不需要额外安装tensorflow. 二. 使用tensorboard 记录训练的loss和测试的accuracy: 1.首先导入模块 from torch.

PyTorch Dataset与DataLoader使用超详细讲解

2022-10-11
目录 一.Dataset 1. 在控制台进行操作 ①获取图片的基本信息 ②获取文件的基本信息 2. 编写一个继承Dataset 的类加载数据 ①定义 MyData类 ②创建类的实例并调用 二.DataLoader 一.Dataset Dataset 类提供一种方式去获取数据及其标签 主要有两个目的: 获取每一个数据及其标签 获取数据的总量大小 1. 在控制台进行操作 Hymenoptera (膜翅目昆虫)数据集下载地址: 链接: https://pan.baidu.com/s/1XKwXsAtE

python模块导入方式浅析步骤

2022-10-11
目录 1.模块的使用 2.导入模块并使用 3.模块的导入方式之from-import 语句 4.__all__变量用来控制* 5.总结 首先啊,在python中我们熟知的py文件就是一个模块,也就是换言之以py结尾的Python源代码文件都是一个模块我就简单概括一下了直接上代码 1.模块的使用 使用模块里的工具前需要导入模块, 模块的导入方式之import······· 单个:import 模块名多个:import 模块1import 模块2import 模块1,模块2(一般不推荐使用)(多个)

Python浅析多态与鸭子类型使用实例

2022-10-11
什么多态:同一事物有多种形态 为何要有多态=>多态会带来什么样的特性,多态性 多态性指的是可以在不考虑对象具体类型的情况下而直接使用对象 多态指的是一类事物有多种形态,比如动物有多种形态:猫.狗.猪 class Animal: #同一类事物:动物 def talk(self): pass class Cat(Animal): #动物的形态之一:猫 def talk(self): print('喵喵喵') class Dog(Animal): #动物的形态之二:狗 def talk(self):

Python实现葵花8号卫星数据自动下载实例

2022-10-11
目录 一:数据源介绍 二:FTP服务器描述 三: 程序描述 四:注意事项 五:代码 一:数据源介绍 本篇文章介绍的是使用python实现对葵花8号卫星数据进行自动下载. 葵花8号卫星是日本的一颗静止轨道气象卫星,覆盖范围为60S-60N, 80E-160W,除了提供十分钟一幅的原始卫星影像外,还提供了如气溶胶光学厚度(AOT,也叫AOD).叶绿素A.海表温度.云层厚度以及火点等多种产品,这些数据都可以进行下载. 二:FTP服务器描述 首先需要在葵花8官网申请帐号. 可以通过FTP(ftp.ptr

python机器学习pytorch自定义数据加载器

2022-10-10
目录 正文 1. 加载数据集 2. 迭代和可视化数据集 3.创建自定义数据集 3.1 __init__ 3.2 __len__ 3.3 __getitem__ 4. 使用 DataLoaders 为训练准备数据 5.遍历 DataLoader 正文 处理数据样本的代码可能会逐渐变得混乱且难以维护:理想情况下,我们希望我们的数据集代码与我们的模型训练代码分离,以获得更好的可读性和模块化.PyTorch 提供了两个数据原语:torch.utils.data.DataLoader和torch.util

Python利用keyboard模块实现键盘记录操作

2022-10-10
目录 1.准备 2.基本使用 3.高级功能 模拟键盘操作执行自动化任务,我们常用的有 pyautowin 等自动化操作模块.但是这些模块有一个很大的缺点,编译的时候非常依赖 windows 的C语言底层模块. 今天介绍的这个模块叫做 keyboard 它有一个最大的优点:纯Python原生开发,编译时完全不需要依赖C语言模块.一行命令就能完成安装,非常方便. 1.准备 开始之前,你要确保Python和pip已经成功安装在电脑上,如果没有,可以访问这篇文章:超详细Python安装指南 进行安装.

Python Django中间件详细介绍

2022-10-10
目录 一 .中间件简介 二 .编写自己的中间件 三 .中间件执行流程 一 .中间件简介 中间件是Django请求/响应处理的钩子函数.它是一个轻量级的.低级的"插件系统",用于全局改变Django的输入和输出.中间件是帮助我们在视图函数执行之前都可以做一些额外的操作,它本质就是一个自定义类,类中定义几个方法,Djago框架会在特定的时候自动触发. 每个中间件负责做一些特定的功能.例如,‘django.contrib.auth.middleware.AuthenticationMiddl

Python property装饰器使用案例介绍

2022-10-10
目录 1.property 2.property属性定义的两种方式 3.案例 1.property 装饰器:装饰器是在不修改被装饰对象源代码以及调用方式的前提下为被装饰对象添加新功能的可调用对象 property是一个装饰器,是用来绑定给对象的方法伪造成一个数据属性 装饰器property,可以将类中的函数“伪装成”对象的数据属性,对象在访问该特殊属性时会触发功能的执行,然后将返回值作为本次访问的结果. 使用property有效地保证了属性访问的一致性.另外property还提供设置和删除属性的

Python Counting Bloom Filter原理与实现详细介绍

2022-10-10
目录 前言 原理 一.BF 为什么不支持删除 二.什么是 Counting Bloom Filter 三.Counter 大小的选择 简单的实现 总结 前言 标准的 Bloom Filter 是一种比较简单的数据结构,只支持插入和查找两种操作.在所要表达的集合是静态集合的时候,标准 Bloom Filter 可以很好地工作,但是如果要表达的集合经常变动,标准Bloom Filter的弊端就显现出来了,因为它不支持删除操作.这就引出来了本文要谈的 Counting Bloom Filter,后文简

Python threading模块中lock与Rlock的使用详细讲解

2022-10-10
目录 前言 1.Lock(互斥锁) 2.RLock(可重入锁) 前言 在使用多线程的应用下,如何保证线程安全,以及线程之间的同步,或者访问共享变量等问题是十分棘手的问题,也是使用多线程下面临的问题,如果处理不好,会带来较严重的后果,使用python多线程中提供Lock .Rlock .Semaphore .Event .Condition 用来保证线程之间的同步,后者保证访问共享变量的互斥问题. Lock & RLock:互斥锁,用来保证多线程访问共享变量的问题 Semaphore对象:Lock