Python Tips

Python Tips

1.函数注解

from typing import *

def func(a: int, b: List[List[int]]):
    ...

def func(a: int, b: Dict[str, int]):
    ...

def func(x: int, y: int) -> int:
    return x + y

a: int = 1
c: List[int] = [1, 2, 3]

2.defalutdict

在字典中查找某个值时,若key不存在时则会返回一个KeyError错误而不是一个默认值,这时候可以使用defaultdict函数。

注意: 使用dict[key]=value时,若key不存在则报错;使用dict.get(key)时,若key不存在则会返回一个默认值。

import random
from collections import defaultdict

# 1.default使用方式
b = defaultdict(list)
b['第一个'] = 'str1'
b['第二个'].append(1)

# 2.普通字典使用方式
dic = {}
if 'a' in dic:
    dic['a'].append(1)
else:
    dic['a'] = []
    
# 3.表示图
graph = defaultdict(set)

for i in range(10):
    for _ in range(3):
        graph[i].add(random.randint(0, 9))

print(graph)

3.降低各种组合数据类型的可变性、只读化

from types import MappingProxyType

if __name__ == '__main__':
    arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    t = tuple(arr)

    s = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
    fs = frozenset(s)

    dic = {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}
    mp = MappingProxyType(dic)

4.if else的简单写法

a, b, c = 1, 2, 3
c = a  if a >b else b
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值