-
如何使用pip来安装第三方模块(官方推荐)
1、确保选中了pip,然后把python.exe添加到系统的path当中。
2、通过pip install web.py命令语句,可以安装一个web.py的第三方模块
3、输入python后就可以import web这个第三方模块了。
4、通过pypi.python.org可以搜索相关第三方模块对应的软件包名字
查看全部 -
1类通过 class 关键字定义。
2类名以大写字母开头,紧接着是(object),表示该类是从哪个类继承下来的。
3创建实例使用 类名+()
查看全部 -
print instance相当于print instance.__str__()
所以定义__str__的时候记得要return对应的字符串
查看全部 -
Python 定义了__str__()和__repr__()两种方法,__str__()用于显示给用户,而__repr__()用于显示给开发人员。
print打印会调用__str__而直接输入变量名则调用__repr__
偷懒定义__repr__的方法:
__repr__ = __str__
查看全部 -
任何数据类型都有特殊方法__str__()将其变为str(常用于print当中)
python大智若愚
特殊方法:
1.用于print的__str__
2.用于len的__len__
3.用于cmp的__cmp__
特殊方法特点:
定义在class中
不需要直接调用
python的某些函数或者操作符会自动调用对应的特殊方法
查看全部 -
利用self.n增加属性时,假设之前有名为n的变量,但此处不会将n中的值取出而作为self的属性名,而单单只将“n”这个字母作为self的属性名(我觉得是因为python不知道n如果是变量的话他的数据类型是什么),但是setattr(self,k,v)这个函数则不一样,他会取出参数k这个变量中所包含的字符串作为self的属性名,而将参数v这个变量当中的值作为这个属性的值。这就是这两种添加属性方法的区别。
查看全部 -
方法一:
import 包名
调用方式:包名.函数名
方法二:
直接导入:from...import...,之后可以直接引用导入的函数;如果名字冲突:from...import...as...,通过起别名避免冲突
调用方式:函数名
查看全部 -
**kw接受任意数量的键值对
查看全部 -
解决变量重名的问题:放入不同模块
解决模块重名的问题:放入不同的包
如何区分普通目录和包:
包下面每一层都必须要有__init__.py文件,即便是空的文件夹也必须要有,只有这样python才会把这个目录当成包来处理。
查看全部 -
json.load(s)的使用条件:
s有方法read返回一个字符串
查看全部 -
这种行为称为多态。也就是说,方法调用将作用在 x 的实际类型上。s 是Student类型,它实际上拥有自己的 whoAmI()方法以及从 Person继承的 whoAmI方法,但调用 s.whoAmI()总是先查找它自身的定义,如果没有定义,则顺着继承链向上查找,直到在某个父类中找到为止。
这是动态语言和静态语言(例如Java)最大的差别之一。动态语言调用实例方法,不检查类型,只要方法存在,参数正确,就可以调用。
查看全部 -
一定要用 super(Student, self).__init__(name, gender) 去初始化父类,否则,继承自 Person 的 Student 将没有 name 和 gender。
函数super(Student, self)将返回当前类继承的父类,即 Person ,然后调用__init__()方法,注意self参数已在super()中传入,在__init__()中将隐式传递,不需要写出(也不能写)。
查看全部 -
类属性无论在哪都必须通过类名或者实例名来访问,而实例属性则无论在哪都需要通过实例名来访问
查看全部 -
类属性和实例属性访问限制都是通过名字来设置
查看全部 -
可见,千万不要在实例上修改类属性,它实际上并没有修改类属性,而是给实例绑定了一个实例属性。
查看全部
举报