Python 匿名函数和异常处理

匿名函数什么叫匿名函数?我们之前学过的叫有名函数,就是有名字的函数匿名函数 就是没有名字的函数,语法lambda 参数:返回值# 演示匿名函数的使用f = la

这篇文章给大家聊聊关于Python 匿名函数和异常处理,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

语法

lambda 参数: 返回值

# 演示匿名函数的使用f=lambda x:xprint(f)# function lambda at0x00000000005D1E18s=f(1) # 注意,匿名函数调用会获取返回值。 print(s)# 1 匿名函数一般与Python的内置方法结合使用。

max/min()

”’用法:max(可迭代对象,匿名函数)返回最大值”’例如我们要在下面的字典中查找工资最高/最低的人的名字salary_dict={ ‘nick ‘: 3000, ‘ jason’: 100000, ‘tank’: 5000, ‘sean’: 2000}print(max(salary_dict)) # 如果直接使用max 函数,字符串将按字母顺序排序# Tank# We可以定义一个函数def func (k): return salary_dict[k]print(min(salary_dict,key=func)) # seanprint(max(salary_dict,key=func))# jason”’key=func 做什么: 1.循环salary_dict取出所有的key值2.将每个key值放入func函数中,返回值,返回salary 3.max函数用于排序”’#使用匿名函数实现print(max( salary_dict,key=lambda name:salary_dict[name])) # jasonprint(min(salary_dict,key=lambda name:salary_dict[name]))# sean

sorted()

”’sorted(iterable object, reverse)排序,排序,返回值查找a要接收的变量”’lis=[1, 3, 2, 5, 8, 6]lis=排序(lis,reverse=True)#reverse=True反向print(lis)#[8,6,5,3, 2, 1]salary_dict={ ‘nick’ : 3000, ‘jason’: 100000, ‘tank’: 5000, ‘sean’: 2000}def f2(item): return salary_dict[item]res=排序(salary_dict,key=f2,reverse=True)print(res) # [‘jason’, ‘tank’, ‘nick’, ‘sean’]# 使用匿名函数实现res=Sorted(salary_dict,key=lambda item:salary_dict[item],reverse=true)print(res)# [‘jason’ , ‘tank’, ‘nick’, ‘sean’]

map()

”’map(匿名函数,可迭代对象)映射”’name_list=[‘jason’, ‘ Tank’, ‘sean’]def f1( item): return item + ‘hahahhahahhahahahaha’res=map(f1,name_list)print(list(res))# [‘jasonhahahhahahhahahahaha’, ‘tankhahahhahahhahahaha’, ‘seanhahahahahahahahaha’]# 匿名函数实现res=map(lambda name:f'{ name} sb’,name_list)print(list(res))# [‘jason sb’, ‘tank sb’, ‘sean sb’]

filter()

”’filter (匿名函数、可迭代对象)过滤器,根据一定的条件对可迭代对象进行操作。

”’name_list=[‘nick’, ‘jason sb’, ‘tank sb’, ‘sean sb’]# 匿名函数实现res=filter(lambda name:name.endswith(‘sb’),name_list)print(list(res) ))# [‘jason sb’, ‘tank sb’, ‘sean sb’]lis=[2,3,4,5,6,7]def function(item): if item 5: return True else: return Falseres=filter (function,lis)print(list(res))# [6, 7]# 匿名函数实现res=filter(lambda item:item 5,lis)print(list(res))# [6, 7]

reduce函数

from functools import reducelst=[1,2,3,4]print(reduce(lambda x,y: x+y, lst))#计算过程如下:#这个公式只有两个参数,没有初始化值,则取列表前面2项,通过lambda函数计算的结果#1+2=3,#上面计算的结果是通过lambda函数与列表的第三个元素计算的结果#3+3=6#上面计算的结果用列表第四个元素计算Lambda函数计算# 6+4=10# 也可以传入参数print(reduce(lambda x,y: x+y, lst,100))# 表示初始值为100,而第一次计算是从100开始添加列表的第一个元素,结果按顺序与后面的值相加

内置函数

## 需要掌握1.bytes() # 解码字符res=bytes(‘ Hello’,encoding=’utf8′)#解码为二进制print(res)”’2.chr()/ord()根据ascil码将数字转换为对应的字符ord,将字符转换为数字”’print(chr (65))print(ord(‘A’)) ”’3.divmod() 以元组的形式返回商余数”’print(divmod(10,3))”’4.ennumerate( ) ************** ******索引为”’的重要值l=[‘a’,’b’,’c’]for i in enumerate( l): print(i)# (0, ‘a’) # (1, ‘b’)# (2, ‘c’)”’5.eval()************ ********* 主要转换字符串两边的字符去掉引号,变成剩下的数据类型”lis='[1,2,3]’print(type(list))# class ‘type’print(type(eval(lis)))# class ‘list ””6. hash()是否可以进行散列”’print(hash(10))# 10################################ ################################################## ############ 理解”’1。 abs()***求绝对值”’print(abs(-1))# 1′ ”2.如果all() 可迭代对象中的所有元素都为true,则返回true”’print(all([1,2,3]))# True”’3. any()可迭代对象中有一个元素如果为true,则为true”’print(any([1,2,3,0]))# True”’4. bin() oct() hex() 二进制、八进制、十六进制转换’ ”print(bin(17))print(oct(17))print(hex(17))# 0b10001# 0o21#0x11”’5. dir() 列出所有时间函数”’print(dir( ))# [‘__annotations__’, ‘__builtins__’, ‘__cached__’, ‘__doc__’, ‘__file__’, ‘__loader__’,# ‘__name__’, ‘__package__’ , ‘__spec__’, ‘i’, ‘l’, ‘lis’, ‘res’]”’6. freezeset() 不可变集合”’set8=freezeset({1,2,3,4,5})print(set8)# freezeset({1, 2, 3, 4, 5})# set8.add(10) # AttributeError: ‘frozenset’ 对象没有属性’add””7. globals()locals() 查看全局和局部名称”’ def func(): a=1 # print(locals()) # 以字典形式返回# print(globals()) # 打印全局名称func()# {‘ a’: 1}# {‘__name__’: ‘__main__’, ‘__doc__’ : ‘\n1.bytes()\n解码字符\n’, ‘__package__’: None, ‘# __loader__’: _frozen_importlib_external.SourceFileLoader 对象位于0x0000000001DCB208 ,# ‘__spec__’: None, ‘__annotations__’: {},# ‘ __builtins__’: 模块’builtins’ (内置),# ‘__file__’: ‘C:/Users/Administrator/Desktop/Oldboy Python 文档/Oldboy Python编程/练习/第三章Python基础–文件操作函数/内置函数.py’, ‘__cached__’: None, ‘res’: b’\xe4\xbd\xa0\xe5\xa5\xbd’, ‘l ‘: [‘a’, ‘b’, ‘c’] , ‘i’: (2, ‘c’), ‘lis’: ‘[1,2,3]’, ‘set8’: freezeset({1 , 2, 3, 4, 5}), ‘func’: 函数func 位于0x00000000004F1E18}”’8. pow() 返回xy 的值(x 的y 次方)。

Python 匿名函数和异常处理

”’打印(pow(5,2))# 25”’9. round()*** 返回浮点数x 的舍入值。 ”’打印(圆(5.1))# 5”’10. slice() 切片对象,主要用于切片操作函数中的参数传递。切片语法:class slice(stop)class slice(start, stop[, step])”’myslice=slice(5)print(myslice)”’11. sum()*** 执行求和计算”’ print(sum(range(100)))# 4950”’12. __import__() 通过字符串”’导入模块m=__import__(‘time’)print(m.time())# 1569325150.957757”’面向对象函数,—–^_^—–classmethodstaticmethodpropertydelattrhasattrgetattrsetattrisinstance( )issubclass()object()super()”’

面向过程编程

什么是面向过程和面向过程编程?

面向过程编程是一种解决问题的思想,过程就是解决问题的步骤。

将复杂的问题分解为流程来完成整个事情

优点:复杂的问题被精简、简化

缺点:扩展性差

”’注册函数接受用户输入的用户名,进行合法性验证,获取合法用户名”’def check_user(): username=input(”).strip() if username.isalpha(): return username else: print(‘用户名必须是字母,白痴’)”’ 分层实现功能用户功能层:实现用户特定的功能接口层:连接数据处理层和用户功能层数据处理层:对数据进行处理并处理把结果留给接口层”’

异常处理

什么是异常

异常是程序运行时报错。

异常的种类

python中不同的异常有不同的类型。异常标识一个错误。

用户评论

Python 匿名函数和异常处理
心脏偷懒

我觉得这篇博客写的很清晰易懂!之前一直对Python匿名函数有困惑,现在终于明白了它怎么用和它的优点。希望以后也能多写一些关于Python高级技巧的文章。

    有19位网友表示赞同!

Python 匿名函数和异常处理
那伤。眞美

在实际项目中用到匿名函数非常经常,而且结合异常处理更能提高代码的安全性。作者分析的都很到位,推荐给大家!

    有16位网友表示赞同!

Python 匿名函数和异常处理
来自火星的我

这个标题眼熟啊,之前就想过搞深些Python的异常处理,这个博客文章正好解决了我的一些疑问,以后可以参考一下来写代码。

    有8位网友表示赞同!

Python 匿名函数和异常处理
泡泡龙

匿名函数和异常处理确实是Python中很重要的概念。我觉得博主把这两者结合起来讲清楚了,而且还用了一些例子说明,确实很有帮助!

    有18位网友表示赞同!

Python 匿名函数和异常处理
坠入深海i

这篇博客写的挺棒的,让我对Python匿名函数有了更加深入的理解。以前总是以为它只是一个小技巧,没想到还有这么多用途啊!

    有20位网友表示赞同!

Python 匿名函数和异常处理
不相忘

感觉文章内容偏基础,对于已经熟练使用Python的人来说可能没有太多帮助。希望能探讨一些更高级的用法和实践场景。

    有12位网友表示赞同!

Python 匿名函数和异常处理
入骨相思

匿名函数和异常处理的确是提高代码效率和可靠性的必备工具 ,感谢作者分享这篇文章!我会把它推荐给我的学习伙伴们

    有7位网友表示赞同!

Python 匿名函数和异常处理
几妆痕

博主的分析挺细致的,尤其是对不同种类的异常如何进行处理的阐述,受益匪浅!希望以后可以再写一些关于异常调试和日志记录的文章。

    有17位网友表示赞同!

Python 匿名函数和异常处理
浅笑√倾城

我还是建议大家多练习代码,因为理论学再多实践才是关键。作者这段话说的很对,我也一直在努力将所学的Python知识应用到实际项目中

    有19位网友表示赞同!

Python 匿名函数和异常处理
坏小子不坏

确实,在实际开发中,能够灵活运用匿名函数和异常处理技巧能大大提高代码的简洁性和健壮性!这篇文章是一篇不错的入门指南。

    有19位网友表示赞同!

Python 匿名函数和异常处理
╯念抹浅笑

博主的解释虽然很清晰,但我还是觉得Python的语法有点像谜语啊,需要反复练习才能真正理解。 希望以后也能看到一些关于Python实践经验分享的文章!

    有16位网友表示赞同!

Python 匿名函数和异常处理
人心叵测i

文章写得不错,但我觉得可以适当添加一些更具体的代码例子,这样能帮助读者更好地理解和应用匿名函数和异常处理技巧。

    有5位网友表示赞同!

Python 匿名函数和异常处理
空谷幽兰

匿名函数与异常处理的确是 Python 程序员需要掌握的重要技能。这本书很好地介绍了他们的概念和用法,值得一读!

    有20位网友表示赞同!

Python 匿名函数和异常处理
眉黛如画

博主分析很有条理,我之前在写项目的时候遇到过一些关于异常处理的问题,现在看完这篇文章好像豁然开朗了!感谢分享!

    有9位网友表示赞同!

Python 匿名函数和异常处理
古巷青灯

我觉得Python确实是一个非常强大的语言,学习它的过程中总会遇到各种各样的问题。这篇博客的分享可以帮助我在开发的过程中更好地解决问题,谢谢作者!

    有10位网友表示赞同!

Python 匿名函数和异常处理
将妓就计

这个标题看起来很有吸引力,我之前也用过Python 的匿名函数,但是对异常处理不太了解,看看这篇文章能学到一些新的知识呢!

    有7位网友表示赞同!

Python 匿名函数和异常处理
孤廖

<p align="center"> Python 匿名函数和异常处理确实非常强大 !</p>

    有9位网友表示赞同!

Python 匿名函数和异常处理
醉枫染墨

这篇博客写的不错,我之前也有点 confused about Python 的匿名函数 和异常处理, 看完之后感觉像是豁然开朗了。

    有17位网友表示赞同!

原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/99378.html

Like (0)
小su的头像小su
Previous 2024年8月29日 下午10:31
Next 2024年8月29日 下午10:38

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注