前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python小技之小技小集合一

Python小技之小技小集合一

作者头像
不止于python
发布2022-05-31 19:41:59
1630
发布2022-05-31 19:41:59
举报
文章被收录于专栏:不止于python

1. 字典嵌套按照值的长度排序:

代码语言:javascript
复制
d = {'a':[{},{},{}], "b":[{}], "c":[{},{},{}], 'd':[{},{}]}

倒序:
dd = dict(sorted(d.items(), key=lambda item:len(item[-1])))
正序
dd = dict(reversed(sorted(d.items(), key=lambda item:len(item[-1]))))

2. 合并两个字典, 相同键相加, 不同则合并

代码语言:javascript
复制
a = {"a": 1, "b": 0, "c": 2}
b = {"a": 0, "b": 2}
c = {k: v + b.get(k,0)  for k,v in a.items()}

3. 合并字典

代码语言:javascript
复制
1. a_dict.update(b_dict)
2. c_dict = {**a_dict, **b_dict}

4. 判断键是否存在字典中

代码语言:javascript
复制
key_exists = True if key in a_dict else False

5. 两个列表合并成字典

代码语言:javascript
复制
kv_dict = dict(zip(key_list, value_list))

6. 字符串提取数字

代码语言:javascript
复制
num = re.sub(r"[^\d]", "", value) or 0

7. 合并列表

代码语言:javascript
复制
1. a_list += b_list
2. a_list.extend(b_list)

8. 变量赋值

代码语言:javascript
复制
a = d_dict.get("a") or "a"

9. 变量交换

代码语言:javascript
复制
a, b = b, a

10. 多变量同时赋值容器

代码语言:javascript
复制
a, b, c = (a, b, c)

11. 反转列表

代码语言:javascript
复制
a_list[::-1]

12. 求b列表在a列表中不存在的值

代码语言:javascript
复制
exists_b_list = [value for value in b if value not in a]

13. 判断是否都为真(有假则为False)

代码语言:javascript
复制
In [29]: all(("a", 0))
Out[29]: False

14. 判断是否含有真值(有真则为True)

代码语言:javascript
复制
In [31]: any(("a", 1))
Out[31]: True

15. 计算文件行数

代码语言:javascript
复制
def get_row_num(file_pname):
    for count, line in enumerate(open(file_pname, 'r'), start=1):
        pass
    return count

16. 读取文件为list

代码语言:javascript
复制
1. [line for line in open("test.py")]
2. open("test.py").readlines()

17. 生成md5 值

代码语言:javascript
复制
import hashlib
def genearte_hash(value):
    if not isinstance(value, str):
        value = str(value)
    hl = hashlib.md5()
    hl.update(value.encode(encoding='utf-8'))
    return hl.hexdigest()

18. 设置某个模块的输出logging等级

代码语言:javascript
复制
logging.getLogger("requests").setLevel(logging.WARNING)

更新ing...

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-11-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 不止于python 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档