标签:抛出异常 pre 异常 附加 关心 特定 logs 意义 except
#1. #A:python的def语句实际上是一个可执行语句,当他运行的时候,它创建一个新的函数对象并将其赋值给一个变量名 #B:因为def语句是一个语句,所以一个def可以出现在任一语句可以出现的地方,比如说嵌套在其他的语句中 #C:函数除了调用以外,还允许任意的属性附加到记录信息,以供使用 def FunA(Value): if Value: def FunB() : return 10 else: def FunB() : return 20 return 10 + FunB() b0 = "aaa" in dir(FunA) #b0 = False FunA.aaa = "1" b1 = "aaa" in dir(FunA) #b1 = True value0 = FunA(True) #value = 20 value1 = FunA(False) #value = 30 value2 = FunA.aaa #value2 = ‘1‘ #2. #A:多态 def Fun(value0, value1) : return value0 * value1 str0 = Fun(4, ‘s‘) #str0 = ‘ssss‘ value0 = Fun(1, 4) #value0 = 4 try: Fun(‘s‘, ‘z‘) except: pass #执行至此 当参数类型不匹配的时候,python会自动抛出异常 #如上,Fun函数表达式中的value0 * value1的意义完全取决于其本身的类型,这种依赖类型的行为成为多态,这也是python作为动态类型语言和静态类型语言(c++、java)至关重要的区别 #在python中,代码不应该关心特定的数据类型,大体上,python为对象编写接口,而不是数据类型
标签:抛出异常 pre 异常 附加 关心 特定 logs 意义 except
原文地址:http://www.cnblogs.com/szn409/p/6641519.html