ALL OR ANY
Python 之所以成为这么一门受欢迎的语言一个原因是它的可读性和表达能力非常强。Python 也因此经常被调侃为“可执行的伪代码”。不信你看:
x = [True, True, False] if any(x): print("At least one True") if all(x): print("Not one False") if any(x) and not all(x): print("At least one True and one False")
BASHPLOTIB
你想要在控制台绘图嘛?
$ pip install bashplotlib
现在,你的控制台中就可以有图了
COLLECTIONS
Python 有一些很棒的默认数据类型,但是有时候他们并不会像你所希望的那样发挥作用。
幸运的是,Python 标准库提供了 collection 模块。它让你可以使用更为多样数据类型。
from collections import OrderedDict, Counter # Remembers the order the keys are added! x = OrderedDict(a=1, b=2, c=3) # Counts the frequency of each character y = Counter("Hello World!")
DIR
面对一个 Python 对象,你是否曾想过可以直接看到其属性?你也许可以试试以下的代码:
>>> dir() >>> dir("Hello World") >>> dir(dir)
这是运行 Python 的时候一个非常有用的功能,用于动态探索你所使用的对象和模块。更多详情,可以查看这里:https://docs.python.org/3/library/functions.html#dir
EMOJI
对的,你没看错!
$ pip install emoji
用 python 来创建表情包,你也可以。
from emoji import emojize print(emojize(":thumbs_up:"))
👍
FROM_FUTURE_IMPORT
Python 非常受欢迎,这也就导致了它的版本更新非常快,新的版本往往会有很多新特性。你不更新,就无法使用。
然而,不要害怕。future 模块可以让你导入未来版本的功能。有点像时空穿梭有木有!
from __future__ import print_function print("Hello World!")
GEOPY
对于程序猿来说地理可能是一个非常有挑战性的领域。但是,geopy 模块则让它变得非常简单。
$ pip install geopy
它通过提取一系列不同地理编码服务的 api 来工作,让你能够获得一个地方的完整街道地址、纬度、经度,甚至海拔。
这里面同时还包含一个有用的“距离”类别。它能使用你选定的度量去计算了两个地点之间的距离。
from geopy import GoogleV3 place = "221b Baker Street, London" location = GoogleV3().geocode(place) print(location.address) print(location.location)
HOWDOI
有时候你碰到了一个编程问题,觉得自己之前明明见过它的解决方法,但是却记不起来具体是怎么样的了。于是你想要去 StackOverflow 上找,但又不想离开这个终端。这个时候,你需要下面这个工具——howdoi
$ pip install howdoi
你所遇到的任何问题都可以问它,它会尽他所能给你返回一个答案。
$ howdoi vertical align css $ howdoi for loop in java $ howdoi undo commits in git
需要注意的是——它只从 StackOverflow 最顶端的答案中抓取代码。所以它给你返回的不总是最有用的信息…
$ howdoi exit vim