format()的使用
print( ‘输出:{}’.format( ) )
格式化输出,format中填写要输出的内容,会填写到{}中
全局变量、局部变量
函数外部为全局变量,函数内部为局部变量
1、想要在函数中修改函数外的全局变量,需要在变量前加global。
2、若局部变量与全局变量重名,则以函数内部的局部变量为准。
匿名函数
lambda 参数1,参数2:表达式
1、表达式只能有一个
2、自带return,返回表达式计算的结果
3、只能满足简单逻辑,复杂逻辑还需def
s = lambda x,y:x+y
print(s(10,1))
双分支判断
1、传统
if a:
b
else:
c
2、匿名函数(lambda语句)
b if a else c
即,如果a成立,输出b,否则输出c
result = lambda x,y:b if a else c
例如:
result = lambda age:'可以参军' if age>=18 else '不可以参军'
print(result(22))
内置函数
https://docs.python.org/3/library/functions.html
数学运算函数
sum()
round()取整运算,不一定是四舍五入,和版本有关。
pow() 次方运算
pow(3,2) 等价于 3**2
eval() 动态执行表达式和函数,以字符串的形式传递即eval(‘语句’)
例如:
#执行表达式
a,b,c = 1,2,3
print('动态执行结果:{}'.format(eval('a*b+c')))
#执行函数
def Test():
print('我被执行')
eval('Test()')
类型转换函数
int()、float()、str()、ord()、chr()数字对应ascii的字符、bool()
bin()十进制转二进制、hex()转十六进制、oct()转八进制
list()元组转列表、tuple()列表转元组、dict()声明或创造字典
bytes() 编码转换
例:
bytes('中国',encoding = 'utf-8')
序列操作函数
all()、any()、sorted()、reverse()、range()、zip()、enumerate()
all()函数:判断参数中所有元素是否为True,是则返回True,不全是则返回False
False的元素:0、空、FALSE
True的元素:其他
any()函数:有一个为True,则返回True
sort()和sorted():
sort()只针对list,是对原始列表进行操作
sorted()可针对多有可迭代对象,不改变原始数据,返回新的数据集
sorted(data , reverse = True/False)
reverse = True 降序
reverse = False 升序,不写默认升序
reverse()函数:只针对list,对列表元素进行反向排序
zip(data1 , data2 , data3)函数:将数据集相同索引位置的数据打包为一个元组,再将全部元组打包。若索引不一长,以最短的为准。
data1 = [1,2,3,4]
data2 = ['Hello','world','?','!']
li = zip(data1,data2)
print(li)
print(list(li))
输出:
<zip object at 0x0000023DB14AD948>
[(1, ‘Hello’), (2, ‘world’), (3, ‘?’), (4, ‘!’)]
enumerate()函数:将可遍历对象与其索引组合为一个元组。 一般在for循环中使用,可以同时列出数据和他的下标
可更改起始下标
li = ['Nick','Jack','Crystal']
for item in enumerate(li):
print(item)
for index,item in enumerate(li):
print(index,item)
for index,item in enumerate(li,7):
print(index,item)
输出结果:
[0, ‘Nick’]
[1, ‘Jack’]
[2, ‘Crystal’]
0 Nick
1 Jack
2 Crystal
7 Nick
8 Jack
9 Crystal