python-一些用到的知识


__dict__ | vars()

  1. 今天看cyclegan代码框架,经常使用这个属性,结合importlib,用来使用变量导图模块和模块里面的类
    model.__dict__ 会输出model的所有属性,字典key是属性名,value是属性所代表的具体类、方法
    model._dict__.items()将属性字典的key-value打包成可迭代的元组
    可以看看这个博客
  2. vars获取对象object的所有属性和属性值的字典对象,同样items()返回可迭代的元组

@staticmethod

也是cyclegan代码里的,用在类里面,在实例化类之前修改一些参数
这是python的一个内置函数,返回函数的静态方法,我也不是很理解这个词,但是用这个作为装饰器装饰类里面的函数,就宣布这个函数变成了一个静态函数,这样通过类名就可调用这个函数,而不需要通过实例化这个类,这样就可以对每个模型在实例化之前赋予不同的配置
RUNOOB.COM的例子吧


parser.set_default()

解析器级别的默认值会覆盖参数级别的默认值

import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--zz', default='233')
parser.set_default(zz='1023')
print(parser.parse_args)

  • python抽象类和抽象方法abc
    python的类可以通过继承将方法继承到子类,而抽象类的子类必须完全实现抽象类的抽象方法
    即抽象类继承的子类必须实现所有抽象父类中所有的抽象方法
    简书知乎

抽象类中有抽象方法,该类不能被实例化,只能被继承,且子类必须实现抽象方法


np.title

title意思为瓷砖,将矩阵想瓷砖一样铺开

t = np.title(array, (2, 3, 1))

array表示矩阵,后面表示每个维度铺开多少遍,2 表示复制两遍


np.random.choice

选择不重复的随机值,replace=False

import numpy as np
t = np.random.choice(range(1, 176), 20, replace=False)

发布了20 篇原创文章 · 获赞 0 · 访问量 372

猜你喜欢

转载自blog.csdn.net/yywxl/article/details/103305592
今日推荐