Python有哪些编程技巧
发表于:2025-02-22 作者:千家信息网编辑
千家信息网最后更新 2025年02月22日,小编给大家分享一下Python有哪些编程技巧,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!1、如何按照字典的值的大小进行排序我们知道,字典的本质是哈希表,本身是无法排序的,但 Pyt
千家信息网最后更新 2025年02月22日Python有哪些编程技巧
小编给大家分享一下Python有哪些编程技巧,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
1、如何按照字典的值的大小进行排序
我们知道,字典的本质是哈希表,本身是无法排序的,但 Python 3.6 之后,字典是可以按照插入的顺序进行遍历的,这就是有序字典,其中的原理,可以阅读为什么 Python3.6 之后字典是有序的。
知道了这一点,就好办了,先把字典的键值对列表排序,然后重新插入新的字典,这样新字典就可以按照值的大小进行遍历输出。代码如下:
>>> xs = {'a': 4, 'b': 3, 'c': 2, 'd': 1} >>> for k,v in xs.items():#遍历字典 ... print(k,v) ... a 4 b 3 c 2 d 1 >>> new_order = sorted(xs.items(), key=lambda x: x[1]) #对字典的键值对列表排序 >>> new_xs = { k : v for k,v in new_order} #有序列表插入新的字典 >>> new_xs {'d': 1, 'c': 2, 'b': 3, 'a': 4} >>> for k,v in new_xs.items(): ##新字典的输出就是有序的 ... print(k,v) ... d 1 c 2 b 3 a 4
对列表的排序,你还可以使用如下方法:
>>> import operator >>> sorted(xs.items(), key=operator.itemgetter(1)) [('d', 1), ('c', 2), ('b', 3), ('a', 4)]
2、优雅的一次性判断多个条件
假如有三个条件,只要有一个为真就可以通过,也许你会这么写:
x, y, z = 0, 1, 0 if x == 1 or y == 1 or z == 1: print('passed')
实际上,以下三种方法更加 Pythonic
if 1 in (x, y, z): print('passed') if x or y or z: print('passed') if any((x, y, z)): print('passed')
最后一个用到了 Python
内置的方法 any()
,any
接受一个可迭代对象作为参数,比如列表或元组,只要其中一个为真,则 any() 方法返回真,用法示例如下:
>>> any(['a',(2,4),3,True]) True >>> any(['a',(2,4),3,False]) True >>> any(['a',(),3,False]) True >>> any(['',(),0,False]) False >>> any(('a',(),3,False)) True >>> any(('',(),0,False)) False ## 注意空的可迭代对象返回 False >>> any(()) False >>> any([]) False >>> any('') False >>> any({}) False
与 any()
对应的,就是方法 all()
,只有全部为真,才为真,注意空的可迭代对象一直返回真。
>>> all(['a',(2,4),1,True]) //list都为"真" True >>> all(['a',(),1,True]) //list元素中有空tuple False >>> all(['a',(2,4),0,True]) False >>> all(['a',(2,4),3,False]) False ## 注意空的可迭代对象返回 True >>>all([]) True >>> all(()) True >>> all({}) True >>> all('') True
查看帮助文档,可以在解释器输入 help
:
>>> help(all) Help on built-in function all in module __builtin__: all(...) all(iterable) -> bool Return True if bool(x) is True for all values x in the iterable. If the iterable is empty, return True.
3、如何优雅的合并两个字典
** 操作符可以解包字典,这在合并字典时非常有用,比如:
>>> x = {'a': 1, 'b': 2} >>> y = {'b': 3, 'c': 4} >>> z = {**x, **y} >>> z {'c': 4, 'a': 1, 'b': 3}
如果在 Python2.x 中,需要这么做:
>>> z = dict(x, **y) >>> z {'a': 1, 'c': 4, 'b': 3}
看完了这篇文章,相信你对"Python有哪些编程技巧"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!
字典
方法
排序
有序
对象
迭代
就是
技巧
编程技巧
编程
优雅
大小
条件
篇文章
输出
一次性
三个
两个
代码
元素
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
cms集中管理服务器参数
如何在2b2t服务器中生存下去
网络安全信息测试题A
优秀网络安全员有什么用
根服务器地址
网络安全日常网络故障
机架式服务器售后维修
注意网络安全 管理好微信群
达内科技网络安全
网络工程师和软件开发
分仓软件开发
福建服务器防火墙
陈俊川技术专家数据库
考勤机本地数据库
杭州知协网络技术有限公司
王牌战争服务器为什么会断开
郑州云光软件开发公司
企业用户面临的网络安全问题
使用网络安全的缺点
昆明小软件开发公司有哪些
网络安全工程师薪资上限
服务器存在bootkit
scival数据库怎么使用
数据库与大数据平台区别
纵天下网络技术有限公司
网络安全主题国画
多级联动数据库表结构
微服务数据库访问方式
客户关系管理数据库设计
市网络安全信息化副主任级别