博客
关于我
python中列表乘法、eval、lambda、hasattr、assert、*(星)等的用法
阅读量:800 次
发布时间:2023-03-09

本文共 1002 字,大约阅读时间需要 3 分钟。

列表乘法与Python核心概念

eval函数

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函数

lambda函数是Python的匿名函数,形如 lambda arguments: expression。冒号后面的表达式是返回值。例如:

lambda x: x * 2  # 返回x的两倍print(lambda(5))  # 10

hasattr函数

hasattr()用于检查对象是否具有某个属性。语法为 hasattr(object, attribute)。例如:

hasattr([1,2,3], 'length')  # Falsehasattr({'a': 1}, 'keys')  # True

assert函数

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/

你可能感兴趣的文章
python判断字符串包含中文_Python 判断字符串是否包含中文
查看>>
python删除第一行_Python 乱码指北:一行删掉根目录
查看>>
Python删除列表元素的三种方法
查看>>
python初步学习-python数据类型-集合(set)
查看>>
python列表生成字典_Python中将字典转换为列表的方法
查看>>
python列表对应元素合并为列表及判断一个列表是几维
查看>>
python+flask计算机毕业设计骨科门诊患者档案管理系统(程序+开题+论文)
查看>>
python+flask计算机毕业设计高校体测管理系统的设计与实现(程序+开题+论文)
查看>>
python+flask计算机毕业设计高校体育赛事系统(程序+开题+论文)
查看>>
python+flask计算机毕业设计高校危化品管理系统(程序+开题+论文)
查看>>
python+flask计算机毕业设计高校校园线上跳蚤市场的系统设计(程序+开题+论文)
查看>>
python+flask计算机毕业设计高校疫情防控管理平台(程序+开题+论文)
查看>>
Python+Jenkins+Allure Report接口自动化测试持续集成
查看>>
python+locust电商全流程性能测试
查看>>
Python函数运行的可执行文件的终端输出如何以一般方式静音?
查看>>
Python+Pytest+Allure+Git+Jenkins接口自动化框架
查看>>
python+pytest接口自动化 —— 参数关联
查看>>
python+pytest接口自动化 —— 参数关联
查看>>
Python+pytest接口自动化 —— 接口测试基础
查看>>
python+pytest接口自动化 —— 自动化用例编写思路 (使用pytest编写一个测试脚本)
查看>>