
python
python学习笔记
梅津太郎
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【python】计数方法
1. 使用dict使用默认字典,每次需要判断key值是否出现过。2. 使用defaultdict不用判断key是否存在3. 使用set 和list4.使用Counter原创 2022-04-14 20:43:35 · 1574 阅读 · 0 评论 -
【深度学习】不同框架下的默认数据通道顺序
NCHW类型:caffe: NCHWpytorch: NCHWmxnet: NCHW海思bgr: NCHWNCNN: CHWNHWC类型:tensorflow: NHWCopencv: NHWC瑞芯微rknn: NHWCscipy.misc: NHWC原创 2021-11-07 17:00:52 · 622 阅读 · 0 评论 -
【python-cookbook】学习笔记1
解压赋值的时候变量多少不匹配的问题比较最后一个值和前边的值的比例双端队列可迭代对象堆排序模块优先级队列原创 2021-11-06 09:19:01 · 392 阅读 · 0 评论 -
【python】冗余冲突问题
import osos.environ["KMP_DUPLICATE_LIB_OK"]="TRUE"原创 2021-10-29 09:33:24 · 1712 阅读 · 0 评论 -
【深度学习】torchvision.utils.make_grid() 拼接图片
import torchfrom torchvision import datasets, transformsfrom torch.utils.data import DataLoaderimport torchvisionimport matplotlib.pyplot as plt def image_show(images): images = images.numpy() images = images.transpose((1, 2, 0)) print(im原创 2021-10-29 09:31:03 · 1375 阅读 · 0 评论 -
【python】python中存储读取list数据到pkl文件
首先导入头文件:分别使用pickle.dump和pickle.load将字典或者列表的数据写入,读取原创 2021-10-27 19:35:47 · 1594 阅读 · 0 评论 -
【python】python中的线程threading.Thread()使用详解
threading.thread()的简单使用原创 2021-10-26 12:13:13 · 247 阅读 · 0 评论 -
【python】python 中的functools.partial用法
原创 2021-05-24 10:23:59 · 183 阅读 · 0 评论 -
【python】argparse子命令subparsers()
import argparseparser = argparse.ArgumentParser(prog='PROG')subparsers = parser.add_subparsers(help='sub-command help')#添加子命令 addparser_a = subparsers.add_parser('add', help='add help')parser_a.add_argument('-x', type=int, help='x value')parser_a.a原创 2021-05-10 16:20:07 · 875 阅读 · 1 评论 -
【python】np.add.at(a,index,b)和a[index] +=b 的区别
有个一个矩阵b,经过索引变换后得到bexpb = np.asarray([[1, 2, 3, 4, 5, 6]])bexp =b[:,[[2,3,4],[3,4,5]]] #索引变换bexpOut[56]: array([[[3, 4, 5], [4, 5, 6]]])现在我想通过这个变换(index)以及bexp 计算原来a的部分元素值:c = np.zeros_like(b)np.add.at(c, (slice(None),[[2,3,4],[3,4,5]] ),原创 2021-05-07 17:25:52 · 390 阅读 · 0 评论 -
【python】numpy.pd和numpy.expand_dims用法记录
numpy.pd 用于对数组上下左右(2d)进行扩充语法结构:numpy.pad(array, pad_width, mode='constant', **kwargs)参数说明:array——表示需要填充的数组;pad_width——表示每个轴(axis)边缘需要填充的数值数目。参数输入方式为:((before_1, after_1), … (before_N, after_N)),其中(before_1, after_1)表示第1轴两边缘分别填充before_1个和after_1个数值。取值原创 2021-05-05 13:35:58 · 1452 阅读 · 4 评论 -
【深度学习】softmax 注意事项
公式:注意事项1:0 值进行softmax后还应是0的问题:x = torch.tensor([[0,1],[2,3]]).type(dtype=torch.float32)xOut[92]: tensor([[0., 1.], [2., 3.]])对这个张量应用softmax 得到:Out[93]: tensor([[0.2689, 0.7311], [0.2689, 0.7311]])但我希望0 值softmax后应该是0啊。改写:x = t原创 2021-04-24 16:56:47 · 677 阅读 · 0 评论 -
【python】Python 有序字典(OrderedDict)与 普通字典(dict)
Python 的基础数据类型中的字典类型分为:无序字典 与 有序字典 两种类型1.无序字典(普通字典):输出:可以看见,遍历一个普通字典,返回的数据和定义字典时的字段顺序是不一致的。2.有序字典输出:有序字典可以按字典中元素的插入顺序来输出。注意:有序字典的作用只是记住元素插入顺序并按顺序输出。如果有序字典中的元素一开始就定义好了,后面没有插入元素这一动作,那么遍历有序字典,其输出结果仍然是无序的,因为缺少了有序插入这一条件,所以此时有序字典就失去了作用,所以有序字典一般用于动态添加原创 2021-04-24 14:38:10 · 323 阅读 · 0 评论 -
【深度学习】numpy.tile(),numpy.repeat(),torch.repeat(),torch.repeat_interleave()
其中1. np.tile, tensor.repeatnumpy.tile()torch.repeat()两者类似,将矩阵或者numpy整体进行扩展:# numpy.tile()aOut[44]: tensor([[1, 2], [3, 4]])np.tile(a,[1,3])Out[46]: array([[1, 2, 1, 2, 1, 2], [3, 4, 3, 4, 3, 4]], dtype=int64)np.tile(a,[3,1])原创 2021-04-24 09:10:57 · 640 阅读 · 0 评论 -
【深度学习】softmax 函数求导
def _bwd(self,dLdy,X): dX = [] for dy,x in zip(dLdy, X): dxi = [] for dyi, xi in zip(*np.atleast_2d(dy, x)): # 用xi 计算yi. # 梯度:当i=j : yj - yj yj, 当i \= j : -yj yj # dyi,xi 都是矩阵,1 n_o..原创 2021-04-22 19:33:43 · 452 阅读 · 0 评论 -
【python】用正则表达式从字符串中提取参数
class SGD(OptimizerBase): """ SGD 优化方法""" def __init__(self, lr=0.01): super().__init__() self.lr = lr def __str__(self):# 调用对象时候的打印方法。print( 对象) 打印的信息。 lr = self.hyperparams["lr"] return f"SGD(lr={lr})" d.原创 2021-04-22 13:49:22 · 1178 阅读 · 0 评论 -
【python】Python __repr__()方法:显示属性
class CLanguage: passclangs = CLanguage()print(clangs)输出的信息为:类名+object at+内存地址class CLanguage: def __init__(self): self.name = "C语言中文网" self.add = "http://c.biancheng.net" def __repr__(self): return "CLanguage[nam原创 2021-04-20 17:26:34 · 143 阅读 · 0 评论 -
scipy中的稀疏矩阵
本文主要围绕scipy中的稀疏矩阵展开,也会介绍几种scipy之外的稀疏矩阵的存储方式。dok_matrix继承自dict,key是(row,col)构成的二元组,value是非0元素。优点:非常高效地添加、删除、查找元素转换成coo_matrix很快缺点:继承了dict的缺点,即内存开销大不能有重复的(row,col)适用场景:加载数据文件时使用dok_matrix快速构建稀疏矩阵,然后转换成其他形式的稀疏矩阵coo_matrix如上图,构造coo_matrix需要.原创 2021-04-13 18:57:19 · 725 阅读 · 0 评论 -
ubuntu下:matplotlib 汉字标签
具体解决方法如下:(1)下载simhei.ttf ,放到指定目录下{/home/hadoop/.pyenv/versions/2.7.10/lib/python2.7/site-packages/matplotlib/mpl-data}/fonts/ttf目录中,具体路径可以在python解释其中输入以下命令查看import matplotlibprint matplotlib.matplotlib_fname()(2)删除~/.cache/matplotlib的缓冲目录(3)修改{/home/h原创 2021-03-11 16:56:18 · 161 阅读 · 0 评论 -
pycharm中文注释
PyCharm发现中文注释不能正常使用:添加:#!/usr/bin/python# -*- coding: utf-8 -*-方便起见可以将其设定为固定模板:原创 2020-12-02 15:41:47 · 1242 阅读 · 0 评论 -
__call__ 的用法
call在Python中,函数其实是一个对象:>>> f = abs>>> f.__name__'abs'>>> f(-123)123由于 f 可以被调用,所以,f 被称为可调用对象。所有的函数都是可调用对象。一个类实例也可以变成一个可调用对象,只需要实现一个特殊方法__call__()。我们把 Person 类变成一个可调用对象:class Person(object): def __init__(self,原创 2020-10-14 17:00:16 · 1816 阅读 · 0 评论 -
pycharm导入自己写的模块时,模块下方出现红色波浪线的解决方案
情况说明:自定定义包导入如下:解决方法:将model所在的文件夹设置为source root结果:完成。原创 2020-09-05 17:15:08 · 529 阅读 · 0 评论 -
Pycharm无法导入自定义包问题
报错No module named verificateCodeSendingSMS less... (Ctrl+F1) This inspection detects names that should resolve but don't. Due to dynamic dispatch and duck typing, this is possible in a limited but useful number of cases. Top-level and class-level items原创 2020-09-04 18:39:02 · 519 阅读 · 0 评论 -
splitlines()方法
描述Python splitlines() 按照行(’\r’, ‘\r\n’, \n’)分隔,返回一个包含各行作为元素的列表,如果参数 keepends 为 False,不包含换行符,如果为 True,则保留换行符语法str.splitlines([keepends])参数keepends – 在输出结果里是否保留换行符(’\r’, ‘\r\n’, \n’),默认为 False,不包含换行符,如果为 True,则保留换行符。返回值返回一个包含各行作为元素的列表。...原创 2020-08-03 10:02:09 · 517 阅读 · 0 评论 -
nn.Linear()
PyTorch的nn.Linear()是用于设置网络中的全连接层的,需要注意的是全连接层的输入与输出都是二维张量,一般形状为[batch_size, size],不同于卷积层要求输入输出是四维张量。其用法与形参说明如下: in_feat...原创 2020-06-01 18:03:55 · 449 阅读 · 0 评论 -
Counter.most_common()
问题怎样找出一个序列中出现次数最多的元素呢?解决方案collections.Counter 类就是专门为这类问题而设计的, 它甚至有一个有用的 most_common() 方法直接给了你答案。为了演示,先假设你有一个单词列表并且想找出哪个...原创 2020-05-30 19:00:04 · 460 阅读 · 0 评论 -
正规方程参数推导
正规方程原创 2020-05-21 10:07:11 · 239 阅读 · 0 评论 -
NumPy 矩阵库 numpy.matlib
NumPy 中包含了一个矩阵库 numpy.matlib,该模块中的函数返回的是一个矩阵,而不是 ndarray 对象。一个 的矩阵是一个由行(row)列(column)元素排列成的矩形阵列。矩阵里的元素可以是数字、符号或数学式。以下是一个由 6 个数字元素构成的 2 行 3 列的矩阵:matlib.empty()matlib.empty() 函数返回一个新的矩阵,语法格式为:numpy.matlib.empty(shape, dtype, order)参数说明:shape: 定义新矩阵形原创 2020-05-21 09:06:39 · 2670 阅读 · 3 评论 -
numpy.linalg模块包含线性代数的函数
numpy.linalg模块包含线性代数的函数。使用这个模块,可以计算逆矩阵、求特征值、解线性方程组以及求解行列式等。np.linalg.det() 计算输入矩阵的行列式np.linalg.solve() 给出矩阵形式的线性方程的解np....原创 2020-05-21 09:01:39 · 522 阅读 · 0 评论 -
numpy.linalg模块
numpy.linalg模块包含线性代数的函数。使用这个模块,可以计算逆矩阵、求特征值、解线性方程组以及求解行列式等。import numpy as np# 1. 计算逆矩阵# 创建矩阵A = np.mat("0 1 2;1 0 3;4 -3 8")print (A)#[[ 0 1 2]# [ 1 0 3]# [ 4 -3 8]]# 使用inv函数计算逆矩阵inv = np.linalg.inv(A)print (inv)#[[-4.5 7. -1.5]# [-2. 4. -1. ]# [原创 2020-05-21 08:56:34 · 358 阅读 · 0 评论