一、内置函数
1.输出 print
print(1,2,3,4,5,sep=';',end='| ') ##sep是以;分开每个数字,end是以|结尾的
2.查看内置属性
#dir查看某对象的属性及其方法
import os
print(dir(os))
3.数学相关运算的
1 abs 计算绝对值
print(abs(-9))
2 divmod 可以返回商和余数
print(divmod(9,4))
3 round 小数精确
print(round(3.1415926,3)) #逗号后面可以指定保留几位小数,并且会四舍五入
4 pow 幂运算
print(pow(2,3,5)) #(2**3)%3 就是2的三次方,对5取余
5 sum 求和
print(sum ([1,2,3,4]))
print(sum(range(1,10)))
print(sum([1,2,3,4,5],10)) ##1到5求完和之后,然后再加10,不加默认是0
6 max求最大值(重要)
print(max(1,2,3,6))
print(max(range(1,10)))
7 min 求最小值(重要)
print(min(-1,0,3,4))
print(min(-1,0,3,4,key=abs)) ##算完绝对值之后,在返回最小值
def func(num):
return num%2
print(min(-2,3,-4,key=func))
8 反序
#reverse #直接返回结果
ret = [1,2,3,4,5]
ret.reverse()
print(ret)
#reversed #返回一个可迭代对象
#学习中遇到问题没人解答?小编创建了一个Python学习交流群:725638078
ret1 = reversed(ret)
ret2 = reversed((1,2,3,4,5))
print(ret)
print(list(ret1))
4.字符串相关的
eval和exec
eval('print(123)')
exec('print(123)')
print(eval('1+2-3*20/(2+3)'))#有返回值
print(exec('1+2-3*20/(2+3)')) #执行了但没有返回值
5.format格式化显示
字符串可以提供的参数,指定对齐方式,<是左对齐, >是右对齐,^是居中对齐
print(format('test', '<20'))
print(format('test', '>20'))
print(format('test', '^20'))
6.ord 字符串按照unicode转数字
print(ord('a'))
7.chr数字按照unicode转字符
print(chr(97))
8.repr用于%r格式化输出
print(repr(1))
print(repr('1'))
9.enumerate 枚举
第一种写法
ll=['a','b','c']
for i in ll:
print(ll.index(i),i)
第二种写法
for i,v in enumerate(ll):
print(i,v)
10.zip返回一个迭代器,拉链就是按顺序让其一一对应
ret = zip([1, 2, 3, 4, 5], ('a', 'b', 'c', 'd'), (4, 5,0)) # 拉链方法
print(ret)
for i in ret:
print(i)
11.filter 重要 用于过滤,比如大于几的数字,或者偶数,奇数之类的
第一种写法
lst = [1, 4, 6, 7, 9, 12, 17]
def func(num):
if num % 2 == 0: return True
filter(func, lst) #分别把lst里面的值传给num,然后取出除2等于0的数字
for i in filter(func, lst):
print(i)
第二种方法
g = (i for i in lst if i%2 == 0)
for i in g:
print(i)
12.map 求1到10的平方 重要 主要用于计算
def func(num):
return num**2
for i in map(func,range(10)):
print(i)
13 排序
sort 排序(这个只是个方法,不是函数)
l = [1,-4,-2,3,-5,6,5]
l.sort(key=abs) #按照绝对值来排序的
print(l)
#打印结果是
[1, -2, 3, -4, -5, 5, 6]
sorted排序(重要)
l = [1,-4,-2,3,-5,6,5]
new_l = sorted(l,key=abs,reverse=True) #按照绝对值,并且反序来排序的
print(new_l)
#打印结果是
[6, -5, 5, -4, 3, -2, 1]
二.匿名函数(lambda)
匿名函数:为了解决那些功能很简单的需求而设计的一句话函数
#普通函数写法:
def calc(n):
return n**n
print(calc(2))
#换成匿名函数
calc = lambda n:n**n
print(calc(2))
#打印结果都是4
匿名函数格式
函数名 = lambda 参数 :返回值
参数可以有多个,用逗号隔开
匿名函数不管逻辑多复杂,只能写一行,且逻辑执行结束后的内容就是返回值
返回值和正常的函数一样可以是任意数据类型
例子
#第一种普通函数写法:
def func(num):
return num ** 2
for i in map(func,range(10)):
print(i)
#小编创建了一个Python学习交流群:725638078
#第二种写法:匿名函数
for i in map(lambda num : num ** 2 ,range(10)):
print (i)
#打印结果是0-9,9个数字的平方
例子
现有两元组((‘a’),(‘b’)),((‘c’),(‘d’)),请使用python中匿名函数生成列表[{‘a’:‘c’},{‘b’:‘d’}]
#第一种写法:普通函数
def func(t):
return {
t[0]:t[1]}
ret = map(func,zip((('a'),('b')),(('c'),('d'))))
print(list(ret))
#第二种写法:匿名函数
ret = map(lambda t:{
t[0]:t[1]},zip((('a'),('b')),(('c'),('d'))))
print(list(ret))