加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python小技巧

发布时间:2020-12-20 12:50:44 所属栏目:Python 来源:网络整理
导读:1、print(list(zip(*(iter(range(20)),)*3))) 输出结果:[(0,1,2),(3,4,5),(6,7,8),(9,10,11),(12,13,14),(15,16,17)] 2、 类中用__slots__将成员静态化,可以节省大量内存。 装饰器,常见用途如函数计时,亦可用来产生新的函数签名。函数签名会影响传参检查

1、print(list(zip(*(iter(range(20)),)*3)))

输出结果:[(0,1,2),(3,4,5),(6,7,8),(9,10,11),(12,13,14),(15,16,17)]

2、 类中用__slots__将成员静态化,可以节省大量内存。

  • 装饰器,常见用途如函数计时,亦可用来产生新的函数签名。函数签名会影响传参检查和ide补全,对带不定长参数的函数非常有用。很多库中都会用这种方法来兼容不同版本的API。
  • 生成器,对于只需遍历的数据可以节省大量内存。
  • *和**参数展开。典型的例子是zip(*list_x)和chain(*list_x),分别相当于转置和concatenate。
  • if __name__ == "__main__": 检查是否作为主程序调用,用multiprocessing并行时主程序得用这个框起来。
  • enumerate,例如将一个list变成list2index可以用dict([(x,i) for i,x in enumerate(list_x)])
  • namedtuple,生成类似于C语言的结构体,同时支持tuple的所有语法。
  • defaultdict,做统计时不用初始化的dict,可以用lambda实现嵌套构造defaultdict(lambda : defaultdict(int)),甚至递归字典tree = lambda : defaultdict(tree)
3、要对字典里面的键嵌套赋值,对键不存在时候的解决方案:
import collections tree = lambda: collections.defaultdict(tree) some_dict = tree() some_dict["colors"]["favourite"] = "yellow"
4、在终端打印红色文本
print(‘33[91mWARNING33[0m‘)
print(‘x1b[91mWARNINGx1b[0m‘)


?打印绿色文本print("33[39;32mText this position statn")#[里的第一个数字40-47是八种不同的颜色,其他的没有测试过,这个颜色是覆盖文本的颜色,不是文本的颜色,第二个数字是文本的颜色

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读