1. 推导式创建序列
推导式是从一个或者多个迭代器快速创建序列的一种方法。它可以用来将循环和条件判断结合,从而避免冗长的代码。推导式是典型的python风格。
1.1列表推导式
列表推导式生成列表对象,语法格式为:
[表达式 for item in 可迭代对象]
或者
[表达式 for item in 可迭代对象 if 条件判断]
例如:
>>>[x for x in range(1,5)]
[1,2,3,4]
>>>[x*2 for x in range(20) if x%5==0]
[10,20,30]
>>>[(row,col) for row in range(1,10) for col in range(1,10)]
[(1,1),(1,2),(1,3),(1,4),(1,5)...(9,9)]
1.2. 字典推导式
字典推导式生成字典对象,格式如下:
{key_expression : value_expression for 表达式 in 可迭代对象}
例如:
>>>text = "my name is hetianxia, I love apple"
>>>{c:text.count(c) for c in text}
#可统计出字符串字符及符号出现的次数
1.3 集合推导式
集合推导式生成集合,和列表推导式的语法格式类似:
{表达式 for item in 可迭代对象}
或者
{表达式 for item in 可迭代对象 if 条件判断}
例如:
>>>{x for x in range(1,100) if x%9==0}
{99,36,72,9,45,81,18,54,90,27,63}
1.4 生成器推导式(生成元组)
>>>gnt = (x for x in range(1,100) if x%9==0)
>>>for x in gnt:
print(x,end='')
9 18 27 36 45 54 63 72 81 90 99
2.函数
2.1 函数的基本概念
- 一个程序由一个个任务组成:函数就是代表一个任务或者一个功能
- 函数是代码重用的通用机制
2.2 python函数的分类
- 内置函数(例如str(),list(),len()等都是内置函数,可以直接拿来用的)
- 标准库函数(通过import导入库,然后使用库里面的函数)
- 第三方库函数(import导入后直接使用)
- 用户自定义函数(用户自己定义的函数)
2.3 函数的定义和调用
python中,函数定义语法如下:
def 函数名([参数列表]):
"""文档字符串(注释)"""
函数体/若干语句
函数的调用直接在语句后面输入函数名和函数需要的参数即可
PS:
1.使用def定义函数,然后就是一个空格和函数名称;
2.参数列表:
(1)圆括号内是形参列表,有多个参数用逗号隔开
(2)形参不需要声明类型,也不需要指定函数返回值类型
(3)无参数,也必须保留空的圆括号
(4)实参列表必须与形参列表一一对应
3.return返回值
(1)函数体若包含return语句,则执行并返回值,否则返回None
2.4 形参和实参
def printmax(a,b):
"""实现两个数的比较,并返回最大的值"""
if a>b:
print(a,'较大值')
else:
print(b,'较大值')
printmax(10,20)
该函数中,定义时写的printmax(a,b),a和b称为“形式参数”。形参只是在定义函数时使用的,形参的命名只要符合标识符命名即可。
在调用函数时,传递的参数为实际参数。上述printmax(10,20)即为实参。