Python exec,assert,lambda

来源:互联网 发布:suse linux yast 编辑:程序博客网 时间:2024/05/23 19:08

概述

笔者由于自学Python,很多知识点较为散乱。
近日在整理中发现Python中还有三个笔者一知半解的保留字:exec,assert,lambda。
在此梳理如下。


exec

exec语句用来执行储存在字符串或文件中的Python语句。
一段示例代码:

if __name__ == '__main__':    exec "print('hello world')"

运行输出:hello world

assert

assert也称断言,用来声明某一个判断的结果为真。如果在运行中,该判断的结果不为真,则会抛出一个AssertionError。
一段示例代码:

if __name__ == '__main__':    assert 2 > 3

抛出错误异常:AssertionError

assert 主要用于验证前提,确保代码的正确性。
当你肯定代码执行的前提能够满足但又不能完全肯定时,使用断言的运行时检查能帮你确保错误能被尽早地捕捉到。

lambda

lambda表达式也称匿名函数,是对函数的再分类。
一段示例代码:

if __name__ == '__main__':    a = ['three', 'two', 'four']    a.sort(lambda x, y: cmp(len(x), len(y)))    print(a)

输出结果['two', 'four', 'three']
当一个函数只在部分区域被重用时,使用匿名函数可以形成闭包,使代码更加安全与优雅。

0 0
原创粉丝点击