python语法
Golden-sun
这个作者很懒,什么都没留下…
展开
-
Python循环创建变量名
使用命名空间localslocals 中是当前程序段中的全部变量名是一个字典的形式所以我们新增的话,直接和字典那样就行了names = locals() #获取当前程序段中的全体局部变量名 for i in np.arange(0,10): names[f'name_{i}']=i...原创 2021-03-01 20:46:39 · 5766 阅读 · 2 评论 -
python中 numpy转list list 转numpy
list to numpyimport numpy as npnp.array(a)numpy to lista.tolist()原创 2020-10-10 20:20:44 · 18033 阅读 · 1 评论 -
nn.ReLU() 和 nn.ReLU(inplace=True)中inplace的作用
inplace作用:1.用relu后的变量进行替换,直接把原来的变量覆盖掉2.节省了内存缺点:有时候出现梯度回传失败的问题,因为之前的变量被替换了,找不到之前的变量了参考这篇文章原创 2020-10-08 16:04:02 · 881 阅读 · 0 评论 -
Pytorch: model.eval(), model.train() 讲解
1. model.eval()pytorch会自动把BN和DropOut固定住,不会取平均,而是用训练好的值。不然的话,一旦test的batch_size过小,很容易就会被BN层导致生成图片颜色失真极大;在模型测试阶段使用2. model.train()让model变成训练模式,此时 dropout和batch normalization的操作在训练q起到防止网络过拟合的问题总结: model.train() 和 model.eval() 一般在模型训练和评价的时候会加上这两句,主要是针对由于mod原创 2020-09-30 16:09:15 · 1370 阅读 · 0 评论 -
python 判断数据类型,是否与已知相同
1. 判断数据类型type(x)x = torch.randint(1,2,[2,2])print(type(x))<class 'torch.Tensor'>2.判断是否与已知一样 isinstance(x,type)函数isinstance 作用是判断类型是否与已知一样print(isinstance(x,torch.Tensor))Truex=[]print(isinstance(x,lsit)True...原创 2020-09-12 11:14:14 · 3036 阅读 · 0 评论 -
Python-import导入上级 本级 目录文件
假设有如下目录结构:-- dir0 | file1.py | file2.py | dir3 | file3.py | dir4 | file4.pydir0文件夹下有file1.py、file2.py两个文件和dir3、dir4两个子文件夹,dir3中有file3.py文件,dir4中有file4.py文件。1.导入同级模块python导入同级模块(在同一个文件夹中的py文件)直接导入即可。import xxx如在file1.py中想导入file2.py,注意无需原创 2020-09-11 16:42:07 · 4629 阅读 · 1 评论 -
Python hasattr() getattr() setattr() 函数使用
1.setattr(object, name, values)给对象设置属性,如果对象不存在,则创建对象layers = nn.Sequential( nn.Conv2d(curr_dim, curr_dim * 2, kernel_size=4, stride=2, padding=1, bias=False), nn.InstanceNorm2d(curr_dim * 2, affine=True), n原创 2020-09-11 09:13:21 · 159 阅读 · 0 评论 -
python 遍历文件中的文件,文件名
1.利用pathlib 中的Pathimport osfrom pathlib impot Pathpath= './image'paths = list(Path(path).glob('*'))for in in paths: print(i.name) # 打印文件名原创 2020-09-10 21:43:02 · 693 阅读 · 0 评论 -
python 在不同层级目录import 模块的方法
写的很好转载 2020-09-07 09:26:08 · 168 阅读 · 0 评论 -
torch.view(), squeeze, unsqueeze
1. torch.view()data.view(a,b) # 把data 转换成 a*b 维的矩阵data.view(k,-1)2. torch.squeeze()data.squeeze(0) # 表示在第一维度压缩,如果第一维度是1,则直接去掉img=contentimg.shapetorch.Size([1,3, 800, 600])img=content.squeeze(0)img.shapetorch.Size([3, 800, 600])3. torch.unsq原创 2020-09-06 13:40:23 · 555 阅读 · 0 评论 -
super(Net,self).__init__() 的含义
class Net(nn.Module): def __init__(self): super(Net,self).__init__()python中的super(Net, self).init()首先找到Net的父类(比如是类nn.Module),然后把类Net的对象self转换为类nn.Module的对象,然后“被转换”的类nn.Module对象调用自己的init函数这是对继承自父类的属性进行初始化。而且是用父类的初始化方法来初始化继承的属性。也就是说,子类继承了父类.原创 2020-06-20 03:09:40 · 11480 阅读 · 0 评论 -
Python 判断语句 if else
判断语句的三种结构1.ifif a>10: print(a)2. if -elseif a >10: print(a)else: print(a+1) 3. if -elifif a >10: print(a)elif: print(a+1)elif: print(a+2)原创 2020-06-17 01:09:51 · 118 阅读 · 0 评论 -
Python高级数据类型-字符串,列表,元组,字典
0.序列序列:在python中 序列就是一组按照顺序排列的值python中三种内资的序列类型:字符串,列表,元组优点:支持索引和切片的操作,从0开始1.字符串可以查询,修改字符串常用的方法a='hello world'print(a[0:1],end=' ')print(a[7:],end=' ')print(a[-1],end=' ')输出h lo r l dd2.列表可以查询,修改li=[1,2,3,'你好']print(len(li))print(li[原创 2020-06-17 01:09:33 · 173 阅读 · 0 评论 -
Python 函数
函数基础函数的定义def 函数名(): 语句原创 2020-06-17 01:09:12 · 175 阅读 · 0 评论 -
Python 面向对象 实例方法 属性 (上)
1.面对对象和面对过程的区别面向对象: 将数据与函数绑定到一起,进行封装,这样能够跟快的开发程序,减少代码的重复书写。函数式: 包装为一个函数,然后调用**面向过程:**根据业务逻辑从上到下写代码面向过程编程: 在思考问题的时候,分析怎么按照步骤去实现,然后把问题分解为若干步骤,然后一步一步的完成功能。面向对象编程: oop关注设计的思维,面向过程不适合大项目,面向对象适合大项目面向过程关注:怎么做面向对象关注:谁来做2.类和对象# claas 类名:# 属性#原创 2020-06-17 01:08:53 · 190 阅读 · 0 评论 -
Python 面向对象(中)
在python中面向对象的三大特征:封装,继承,多态1. 析构方法程序结束后,之后调用析构方法,来释放空间def __del__(self): print("析构方法")2.单继承子类继承父类class animal(): def eat(self): print('吃')class dog(animal):#继承父类 def wwj(self): print('dog')d=dog()d.eat()吃3.多继承clas.原创 2020-06-17 01:08:35 · 83 阅读 · 0 评论 -
pyhton 面向对象(下)
1.私有属性两个下划线开头,声明该属性为私有,不能在类的外部使用或者被访问派生类(子类)不能去继承class person: def __init__(self): self.__name='黎明' self.age=30xl=person()print(xl.age)print(xl.__name)30不能继承父类的私有属性2.私有化方法在方法名前面加下划线class person: def __init__(self):.原创 2020-06-17 01:07:18 · 84 阅读 · 0 评论 -
python 循环语句 for while range
for 循环语句list=[2,3,4,5,6]for i in range(len(list)): print(i) print(list[i])其中 len() 表示计算数组的长度,range()表示生成一个指定长度的序列(0,1,2,3,。。。。)原创 2020-06-15 01:15:34 · 129 阅读 · 0 评论 -
python 定义数组
1 一维数组list=[0]*5list=[0,0,0,0,0]list=[0 for i in range(5)]三个效果一样2 二维数组list=[[0,0],[0,0],[0,0]]list=[0,0]*3list=[[0 for in range(2)] for in range(3)]定义3*2的数组原创 2020-06-15 01:15:16 · 2874 阅读 · 0 评论 -
python plt.plot bar 设置绘图尺寸大小
plt.rcParams('figure.figsize')=(12,8)修改前修改后原创 2020-06-02 18:24:18 · 18741 阅读 · 0 评论 -
python for while enumerate
for 循环语句list=[2,3,4,5,6]for i in range(len(list)): print(i) print(list[i])其中 len() 表示计算数组的长度,range()表示生成一个指定长度的序列(0,1,2,3,。。。。) list=[2,3,4,5,6] for i,j in enumerate(list): print(i) print(j)enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列原创 2020-06-02 17:15:22 · 187 阅读 · 0 评论 -
python matplotlib 绘制曲线图,柱状图
import matplotlib.pyplot as pltplt.plot(x,y) #曲线图plt.bar(x,y) # 柱状图原创 2020-06-02 16:46:59 · 471 阅读 · 0 评论 -
python 读取 Excel 文件的方法 csv.reader
with open('./hotel_bookings.csv',newline='') as f: reader=csv.reader(f) for row in reader: print(row)row 为list 类型原创 2020-06-01 19:13:36 · 542 阅读 · 0 评论