python内置函数与匿名函数的用法

一、内置函数

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))
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值