吐血推荐 | 珍藏多年的 Python 奇淫技巧,务必收藏

ad993048c35ce93d724d57bd5c1f8052.png

文 | 豆豆

来源:Python 技术「ID: pythonall」

62975300f4655379b65205d0697af15d.png

Python 是一门语法非常简洁的语言,其可读性和表达性都非常的强,今天就给大家分享一下派森酱珍藏已久的一些小技巧,话不多说直接看 🌰

0x00 emoji

如何优雅的在 Python 中使用 emoji 表情,这个库兴许可以满足你的需求。

In [1]: import emoji

In [2]: emoji.emojize('Python is :thumbs_up:')
Out[2]: 'Python is 👍'

0x01 dir

当你想查看一个 Python 对象的属性时,dir 可以做到。

In [3]: dir(3)
Out[3]:
['__abs__',
 '__add__',
...
 'real',
 'to_bytes']

0x02 map

map 结合 lambda 函数可以完成一些意想不到的操作。

In [11]: x = [1, 2, 3, 4, 5]

In [12]: y = map(lambda x : x ** 2 , x)

In [13]: list(y)
Out[13]: [1, 4, 9, 16, 25]

0x03 bashplotlib

有没有想过在命令行玩转图表呢,快来试试 bashplotlib 吧。

In [15]: import numpy as np

In [16]: from bashplotlib.histogram import plot_hist

In [17]: arr = np.random.normal(size=1000, loc=0, scale=1)

In [18]: plot_hist(arr, bincount=50)

 58|                          o
 55|                          o
 52|                          o
 49|                          oo
 46|                        o oo o o o
 43|                        o oooo o o
 40|                        oooooooo o  o
 37|                      o oooooooooo  o
 34|                      o oooooooooo  oo
 31|                      ooooooooooooooooo
 28|                    ooooooooooooooooooo
 25|                    oooooooooooooooooooo
 22|                    oooooooooooooooooooo
 19|                 o  ooooooooooooooooooooo
 16|                 o oooooooooooooooooooooo o
 13|                ooooooooooooooooooooooooo oo
 10|                oooooooooooooooooooooooooooo  o
  7|           oo ooooooooooooooooooooooooooooooo o
  4|         o ooooooooooooooooooooooooooooooooooooo  o
  1| o  o oooo oooooooooooooooooooooooooooooooooooooooo
    --------------------------------------------------

0x04 pprint

当你输出一个复杂的对象时,Python 自带的 print 函数其输出可读性是不怎么好的,这时候 pprint 就显示出用处了,pprint 可以让复杂的对象以及其友好的形式展现出来。

In [33]: info = {'info': {'page': 1, 'results': 1, 'id': '1', 'version': '1.0'}, 'has_more': True, 'total': 100}

In [34]: pprint.pprint(info)

{'has_more': True,
 'info': {'id': '1', 'page': 1, 'results': 1, 'version': '1.0'},
 'total': 100}

0x05 zip

zip 函数可以让两个列表中的元素逐个映射到一个新的字典当中。

In [35]: keys = ['x', 'y', 'z']

In [36]: values = [1, 2, 3]

In [37]: dict(zip(keys, values))
Out[37]: {'x': 1, 'y': 2, 'z': 3}

0x06 sh

我们可以像调用方法那样来调用系统的命令。

In [47]: import sh

In [48]: sh.echo('Hello Python')
Out[48]: Hello Python

0x07 推导式

最后一个技巧就是 Python 界的经典用法推导式了,可以非常快速的生成列表。

In [49]: num_list = [num for num in range(0, 10)]

In [50]: num_list
Out[50]: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

总结

人生苦短,我用 Python,希望这些小技巧可以让你的 Python 学习之路更加顺畅。

PS:公号内回复「Python」即可进入Python 新手学习交流群,一起 100 天计划!

老规矩,兄弟们还记得么,右下角的 “在看” 点一下,如果感觉文章内容不错的话,记得分享朋友圈让更多的人知道!

e5efb5b2d9630471ce97c67bc52513af.gif

神秘礼包获取方式

识别文末二维码,回复:1024

cbb6960da0a372e6c465026dc6b46d64.png

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值