Python 是世界上最流行、熱門的編程語言之一,原因很多,比如:
易于學(xué)習(xí)
超高的通用性
具備大量模塊和庫
本文將分享一些使用 Python 的技巧,順序按照 A-Z 排列。
Python 非常受歡迎的原因之一是其可讀性和表達(dá)性。
人們還經(jīng)常把 Python 笑稱為「可執(zhí)行偽碼(executable pseudocode)」。但是,當(dāng)你可以編寫這樣的代碼時(shí),很難去反駁這種言論:
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")
想在控制臺中繪圖嗎?
$ pip install bashplotlib
使用上面的行,即可在控制臺中繪圖。
Python 有一些很棒的默認(rèn)數(shù)據(jù)類型,但有時(shí)候它們可能不會盡如你意。
不過,Python 標(biāo)準(zhǔn)庫提供了 collections 模塊。這個(gè)方便的附加組件可以為你提供更多數(shù)據(jù)類型。
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!")
你是否想過如何查看 Python 對象內(nèi)部及其具有哪些屬性?
輸入以下命令行:
>>> dir()
>>> dir("Hello World")
>>> dir(dir)
當(dāng)以交互方式運(yùn)行 Python 時(shí),這可能是一個(gè)非常有用的功能,并且可以動(dòng)態(tài)地探索你正在使用的對象和模塊。
是的,真的有。
$ pip install emoji
別以為我不知道你會偷偷試它→→
from emoji import emojize
print(emojize(":thumbs_up:"))
Python 流行的一個(gè)結(jié)果是,總有新版本正在開發(fā)中。新版本意味著新功能——除非你的版本已經(jīng)過時(shí)。
不過,別擔(dān)心。__ future__模塊允許用戶導(dǎo)入新版 Python 的功能。這簡直就像時(shí)間旅行,或者魔法什么的。
from __future__ import print_function
print("Hello World!")
地理(Geography)對于程序員來說可能是一個(gè)具有挑戰(zhàn)性的領(lǐng)域。但是 geopy 模塊讓它變得異常簡單。
$ pip install geopy
它通過抽取一系列不同地理編碼服務(wù)的 API 來工作,使用戶獲取一個(gè)地方的完整街道地址、緯度、經(jīng)度,甚至海拔高度。
另外一個(gè)有用的功能是距離:它可以用你喜歡的度量單位計(jì)算出兩個(gè)位置之間的距離。
from geopy import GoogleV3
place = "221b Baker Street, London"
location = GoogleV3().geocode(place)
print(location.address)
print(location.location)
陷入編碼問題,卻不記得以前見過的解決方案?需要檢查 StackOverflow,但不想離開終端?
$ pip install howdoi
無論你有什么問題都可以問它,它會盡力回答。
$ howdoi vertical align css
$ howdoi for loop in java
$ howdoi undo commits in git
但是請注意——它會從 StackOverflow 的最高票答案中抓取代碼。也就是說它提供的信息并非總是有用……