class类
class user(object):
def __init__(self,name,sex):
self.name=name
self.__sex=sex
#前两个下划线,为隐藏变量,外部不可直接调用。
然而,可以下划线加类名再加隐藏变量名如此调用
lili=user('lili','woman')
lili._user__name
静态方法
前两个下划线,后两个下划线表示。例:__foo__
__init__、__del__
相当于c++的构造函数和析构函数
Object里面的方法:
__str__把一个类的实例变成 str
__repr__该函数返回什么,即对象会打印出什么
__getitem__:切片
def __getitem__(self,item):
if isinstance(item,slice):
return '切片'
>>>print(user[10:100])
切片
__len__
……
@property、@x.setter、@x.delete
https://segmentfault.com/a/1190000007984750
函数属性装饰器:可读、可写、可删除
异常
抛出raise
raise StopIeration()
#没有数据可以返回时抛出StopIteration异常错误
raise StopIeration()
#没有数据可以返回时抛出StopIteration异常错误
try:
可能会报错的语句
except:
报错之后执行的语句
Finally:
最后执行的语句
age=-1
while age==-1:
temp=input('You Age:')
try:
age=int(temp)
except ValueError:
age=-1
一般的Error(如ValueError IOError)继承于Exception,Exception继承于BaseException
枚举enum
from enum import Enum,unique
@unique#用于去重
class Color(Enum):
RED=1
BLUE=2