摘要:一、作用域 所谓作用域(Scope),就是变量的有效范围,就是变量可以在哪个范围以内使用。有些变量可以在整段代码的任意位置使用,有些变量只能在函数内部使用,有些变量只能在 for 循环内部使用。变量的作用域由变量的定义位置决定,在不同位置定义的变量,它的作用域是不一样的。本节我们只讲解两种变量,局部
阅读全文
摘要:一、偏函数的定义 简单的理解偏函数,它是对原始函数的二次封装,是将现有函数的部分参数预先绑定为指定值,从而得到一个新的函数,该函数就称为偏函数。相比原函数,偏函数具有较少的可变参数,从而降低了函数调用的难度。定义偏函数,需使用 partial 关键字(位于 functools 模块中),其语法格式如
阅读全文
摘要:通常情况下,一个函数只有一个返回值,实际上 Python 也是如此,只不过 Python 函数能以返回列表或者元组的方式,将要返回的多个值保存到序列中,从而间接实现返回多个值的目的。因此,实现 Python 函数返回多个值,有以下 2 种方式: 在函数中,提前将要返回的多个值存储到一个列表或元组中,
阅读全文
摘要:一、位置参数 参数的顺序,个数要,在函数调用时,传递进去的参数要和定义的保持一致 def girth(width , height): return 2 * (width + height) #调用函数时,必须传递 2 个参数,否则会引发错误 print(girth(3)) 二、关键字参数 函数调用
阅读全文
摘要:一、Python函数值传递和引用传递 Python 中,根据实际参数的类型不同,函数参数的传递方式可分为 2 种,分别为值传递和引用(地址)传递: 值传递:适用于实参类型为不可变类型(字符串、数字、元组); 引用(地址)传递:适用于实参类型为可变类型(列表,字典); 值传递和引用传递的区别是, 值传
阅读全文
摘要:sorted() 作为 Python 内置函数之一,其功能是对序列(列表、元组、字典、集合、还包括字符串)进行排序。sorted() 函数的基本语法格式如下: list = sorted(iterable, key=None, reverse=False) 其中, iterable 表示指定的序列,
阅读全文
摘要:reserved() 是 Pyton 内置函数之一,其功能是对于给定的序列(包括列表、元组、字符串以及 range(n) 区间),该函数可以返回一个逆序序列的迭代器(用于遍历该逆序序列)。reserved() 函数的语法格式如下: reversed(seq) 其中,seq 可以是列表,元素,字符串以
阅读全文
摘要:推导式(又称解析器),是 Python 独有的一种特性。 使用推导式可以快速生成列表、元组、字典以及集合类型的数据, 因此推导式又可细分为 列表推导式、 元组推导式、 字典推导式 集合推导式。 1、Python列表推导式 列表推导式可以利用 range 区间、元组、列表、字典和集合等数据类型,快速生
阅读全文
摘要:一、elese用法 Python 中,无论是 while 循环还是 for 循环,其后都可以紧跟着一个 else 代码块,它的作用是当循环条件为 False 跳出循环时,程序会最先执行 else 代码块中的代码。 上面程序中,当i==len(add)结束循环时(确切的说,是在结束循环之前),Pyth
阅读全文
摘要:Python 中的循环语句有 2 种,分别是 while 循环和 for 循环,前面章节已经对 while 做了详细的讲解,本节给大家介绍 for 循环,它常用于遍历字符串、列表、元组、字典、集合等序列类型,逐个获取序列中的各个元素。for 循环的语法格式如下: for 迭代变量 in 字符串|列表
阅读全文
摘要:Python 中,while 循环和 if 条件分支语句类似,即在条件(表达式)为真的情况下,会执行相应的代码块。不同之处在于,只要条件为真,while 就会一直重复执行那段代码块。while 语句的语法格式如下: while 条件表达式: 代码块 这里的代码块,指的是缩进格式相同的多行代码,不过在
阅读全文
摘要:Python assert 语句,又称断言语句,可以看做是功能缩小版的 if 语句,它用于判断某个表达式的值,如果值为真,则程序可以继续往下执行;反之,Python 解释器会报 AssertionError 错误。assert 语句的语法结构为: assert 表达式 assert 语句的执行流程可
阅读全文
摘要:在实际开发中,有时候我们会先搭建起程序的整体逻辑结构,但是暂时不去实现某些细节,而是在这些地方加一些注释,方面以后再添加代码,请看下面的例子: age = int( input("请输入你的年龄:") ) if age < 12 : print("婴幼儿") elif age >= 12 and a
阅读全文
摘要:前面我们看到的代码都是顺序执行的,也就是先执行第1条语句,然后是第2条、第3条……一直到最后一条语句,这称为顺序结构。但是对于很多情况,顺序结构的代码是远远不够的,比如一个程序限制了只能成年人使用,儿童因为年龄不够,没有权限使用。 这时候程序就需要做出判断,看用户是否是成年人,并给出提示。在 Pyt
阅读全文
摘要:对于浅拷贝(shallow copy)和深度拷贝(deep copy),本节并不打算一上来抛出它们的概念,而是先从它们的操作方法说起,通过代码来理解两者的不同。 Python浅拷贝 浅拷贝,指的是重新分配一块内存,创建一个新的对象,但里面的元素是原对象中各个子对象的引用。 常见的浅拷贝的方法,是使用
阅读全文
摘要:字典和集合是进行过性能高度优化的数据结构,特别是对于查找、添加和删除操作。本节将结合实例介绍它们在具体场景下的性能表现,以及与列表等其他数据结构的对比。例如,有一个存储产品信息(产品 ID、名称和价格)的列表,现在的需求是,借助某件产品的ID找出其价格。则实现代码如下: def find_produ
阅读全文
摘要:set 集合是可变序列,程序可以改变序列中的元素;frozenset 集合是不可变序列,程序不能改变序列中的元素。set 集合中所有能改变集合本身的方法,比如 remove()、discard()、add() 等,frozenset 都不支持;set 集合中不改变集合本身的方法,fronzenset
阅读全文
摘要:Python 中的集合,和数学中的集合概念一样,用来保存不重复的元素,即集合中的元素都是唯一的,互不相同。从形式上看,和字典类似,Python 集合会将所有元素放在一对大括号 {} 中,相邻元素之间用“,”分隔,如下所示: {element1,element2,...,elementn} 其中,el
阅读全文
摘要:一、字典的概念 Python 字典(dict)是一种无序的、可变的序列,它的元素以“键值对(key-value)”的形式存储。相对地,列表(list)和元组(tuple)都是有序的序列,它们的元素在底层是挨着存放的。字典类型是 Python 中唯一的映射类型。“映射”是数学中的术语,简单理解,它指的
阅读全文
摘要:一、列表和元组的区别 【变更方面】 列表中的元素可以进行任意修改,就好比是用铅笔在纸上写的字,写错了还可以擦除重写; 元组中的元素无法修改,除非将元组整体替换掉,就好比是用圆珠笔写的字,写了就擦不掉了,除非换一张纸。 【存储方式】 元组占用的存储空间比列表少占用 16 个字节 列表是动态的,元组是静
阅读全文