Python的模块和类

import导入模块路径问题 存在的问题:当我们把模块文件放到工程文件夹的外部的文件,发现无法正常引入模块 原因:外部的文件夹的路径,没有放到环境变量中。 查看环境变量 1.导入sys模块 2.sys.path 查看环境变量返回值是列表 把自己写的模块的路径加入到环境变量中 ...

12 min · 5901 words · Luenci

Python类补充

item系列 __getitem__ 以字典形式访问属性的时候触发 __setitem__ 以字典形式设置属性的时候触发 __delitem__ 以字典形式删除属性的时候触发 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 class Demo(object): def __getitem__(self, item): print("触发__getitem__") def __setitem__(self, key, value): print("触发__setitem__") self.__dict__[key] = value def __delitem__(self, key): print("触发__delitem__") self.__dict__.pop(key) f = Demo() # 以字典的方式来操作属性 print(f.__dict__) f['name'] = 'luenci' print(f.__dict__) print(f['name']) del f['name'] print(f.__dict__) out: {} 触发__setitem__ {'name': 'luenci'} 触发__getitem__ None 触发__delitem__ {} __str__和__repr__控制输出 __str__会在print()打印时候调用,如果类中没重写则会调用默认的打印值,如果自定义了则会调用自定义的__str__方法 __repr__这个实在控制台的时候输出,若一个类中没定义__str__但是定义了__repr__方法,则会调用__repr__的返回值。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 class bar(object): def __init__(self, name, age): self.name = name self.age = age # def __str__(self): # return '__str__自定义返回值' def __repr__(self): return '__repr__自定义返回值' f = bar('luenci', 18) # print() 函数触发__str__()函数 print(f) out: __repr__自定义返回值 __slots__属性 1.__slots__是什么? ...

5 min · 2176 words · Luenci