本文共 1002 字,大约阅读时间需要 3 分钟。
eval()函数用于执行字符串表达式并返回结果。在Python中,eval()可以用来创建类名。例如:
is_test_obj = eval('Test') # 创建类名Testprint(type(is_test_obj)) # 调用 Test 类的 __init__ 方法时,会输出 "调用到了",这表明 eval('Test') 仅创建了类名,而不是类对象。要创建类对象,需在类名前后添加 ():
is_test_obj = eval('Test()') # 创建类对象print(isinstance(is_test_obj, Test)) # True lambda函数是Python的匿名函数,形如 lambda arguments: expression。冒号后面的表达式是返回值。例如:
lambda x: x * 2 # 返回x的两倍print(lambda(5)) # 10
hasattr()用于检查对象是否具有某个属性。语法为 hasattr(object, attribute)。例如:
hasattr([1,2,3], 'length') # Falsehasattr({'a': 1}, 'keys') # True assert函数用于断言,在条件不满足时会抛出异常。例如:
assert 'hello' in 'world', '找不到"hello"'print('运行了') # 只有在'hello'不在'world'时才跳过 星号用于扩展函数参数列表。例如:
def func(a, *args): print('a:', a) print('args:', args)func(1, 2, 3) # 输出:a:1, args:(2,3) is_test_obj = eval('Test')print(is_test_obj)print(type(is_test_obj))print(isinstance(is_test_obj(), Test))print(isinstance(is_test_obj, Test)) 输出:
调用到了 FalseTrue
转载地址:http://eslfk.baihongyu.com/