摘要:在介绍动态可执行方法前,本节先介绍一下Python代码编译有关的知识,因为部分内容和动态执行有些关联。一、 Python解释器的功能Python虽然是解释型语言,但Python代码也是可编译的,编译源代码可以在一定程度上达到源代码产权保护、 防止用户篡改源代码、加载代码...
阅读全文
摘要:一、 函数递归及嵌套简介1. 函数支持递归,递归就是函数可以在函数内调用自己,这种情况在C语言等语言就已经支持,不单独介绍;2. Python支持函数内再定义函数,这种方式称为函数嵌套。函数内的函数称为局部函数,其上层函数称为封闭函数:1) 在默认情况...
阅读全文
摘要:一、函数中的变量使用规则函数执行时,使用的全局空间是调用方的全局空间,参数及函数使用的局部变量存储在函数单独的局部名字空间内; 函数的形参在函数中修改了值时,并不影响调用方本身的数据,但如果形参是一个可变类型的容器,在函数中修改了容器中的元素,则该修改会影响到调用方的数据; ...
阅读全文
摘要:一、 分配参数的定义参数收集就是在定义函数时不能确认参数个数,用收集参数将调用时不确定数量的实参存放到收集参数的元组中。分配参数与此过程相反,它不是在定义函数形参时使用星号(1个或2个),而是在调用函数传递实参时使用星号(1个或2个)来传递多个参数。二、 分配参数...
阅读全文
摘要:函数的参数使用除了常规的位置参数和关键字参数外,还支持可变个数的函数参数,这种支持可变个数的参数方法称为参数收集,对应的参数称为收集参数。一、参数收集的定义 Python的函数支持可变不定数量的参数模式,这种将不定数量实参在调用时传递给函数,函数将其识别并保存到指定形...
阅读全文
摘要:前面第二章简单介绍了函数定义的语法,经过后面一系列的学习,函数有必要再次介绍一下相关内容。一、 关于函数的语法1. 语法def 函数名([参数]):函数文档字符串函数体 2. 函数名:是必须符合Python名称规范要求的标识符,...
阅读全文
摘要:一、三目运算 Python的三目运算与C语言的三目运算非常类似,具体语法如下: 条件为真的赋值表达式 if 条件 else 条件为假的表达式 三目运算实际上就是一种表达式计算,当对应if后面的“条件”为True时,表达...
阅读全文
摘要:一、序列解包 序列解包(或可迭代对象解包):解包就是从序列中取出其中的元素的过程,将一个序列(或任何可迭代对象)解包,并将得到的值存储到一系列变量中。 一般情况下要解包的序列包含的元素个数必须与你在等号左边列出的目标个数相同,否则Python将引发异常。...
阅读全文
摘要:一、print函数前面第二章介绍了print的语法,其语法如下:print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)其中有几个参数,分别说明一下:sep:表示前面打印的几个参数之间的分隔符是什么,...
阅读全文
摘要:一、 关于源文件的缩进使用 前面关于语句中冒号使用有类似“每个关键词语句后面必须有冒号,每个执行内容必须缩进4个空格”这样的内容,经过近段时间的学习,这个说法并不完全正确。正确的说法是:冒号后面的执行代码可以在该语句后面不换行继续,也可以在该行后换行后继续。当不...
阅读全文
摘要:一、 引言经过前几个章节的介绍,终于把与列表解析的前置内容介绍完了,本节老猿将列表解析、字典解析、集合解析进行统一的介绍。前面章节老猿好几次说到了要介绍列表解析,但老猿认为涉及知识层面比较多,一推再推,给人的印象就是这个很复杂,其实整理完成后老猿发现其实很简单。所谓解析...
阅读全文
摘要:下面要介绍的enumerate、range、zip、reversed、sorted属于Python内置的函数或者类别,返回的对象都可通过迭代方法访问。一、 enumerate函数1. 语法:enumerate(iterable, start=0)1) 该函数...
阅读全文
摘要:一、 生成器(generator)概念生成器是一个特殊的迭代器,它保存的是算法,每次调用next()或send()就计算出下一个元素的值,直到计算出最后一个元素,没有更多的元素...
阅读全文