电竞比分网-中国电竞赛事及体育赛事平台

分享

8個好用到爆的Python實(shí)用技巧,不用吃虧半年

 雨潤心田品風(fēng)雨 2021-12-14

大家好,我是杰杰 作為一名數(shù)據(jù)工作者,我們每天都在使用 Python處理大多數(shù)工作。在此過程中,我們會不斷學(xué)到一些有用的技巧和竅門。

在這里,我嘗試以 A - Z 開頭的格式分享這些技巧中的一些,并且在本文中簡單介紹這些方法,如果你對其中一個或多個感興趣,你可以通過文末參考資料查看官方文檔。希望對你能有所幫助。

all or any

Python 語言如此流行的眾多原因之一,是因?yàn)樗哂泻芎玫目勺x性和表現(xiàn)力。

人們經(jīng)常開玩笑說 Python 是可執(zhí)行的偽代碼。當(dāng)你可以像這樣寫代碼時,就很難反駁。

x = [True, True, False]if any(x): print('至少有一個True')if all(x): print('全是True')if any(x) and not all(x): print('至少一個True和一個False')

bashplotlib

你有沒有想過在控制臺中繪制圖形嗎?

Bashplotlib 是一個 Python 庫,他能夠幫助我們在命令行(粗曠的環(huán)境)中繪制數(shù)據(jù)。

# 模塊安裝pip install bashplotlib# 繪制實(shí)例import numpy as npfrom bashplotlib.histpgram import plot_histarr = np.ramdom.normal(size=1000, loc=0, scale=1)plot_hist(arr, bincount=50)

collections

Python 有一些很棒的默認(rèn)數(shù)據(jù)類型,但有時它們的行為并不完全符合你的期望。

幸運(yùn)的是,Python 標(biāo)準(zhǔn)庫提供了 collections 模塊[1]。這個方便的附加組件為你提供了更多的數(shù)據(jù)類型。

from collections import OrderedDict, Counter# 記住鍵的添加順序!x = OrderedDict(a=1, b=2, c=3)# 統(tǒng)計每個字符出現(xiàn)的頻率y = Counter('Hello World!')

dir

有沒有想過如何查看 Python 對象內(nèi)部,查看它具有哪些屬性?在命令行中輸入:

dir() dir('Hello World') dir(dir)

emoji

emoji[3] 是日本在無線通信中所使用的視覺情感符號,繪指圖畫,文字指的則是字符,可用來代表多種表情,如笑臉表示笑、蛋糕表示食物等。在中國大陸,emoji通常叫做“小黃臉”,或者直稱emoji。

# 安裝模塊pip install emoji# 做個嘗試from emoji import emojizeprint(emojize(':thumbs_up:'))

fromfuture import

Python 流行的結(jié)果之一,總是有新版本正在開發(fā)中。新版本意味著新功能 —— 除非你的版本已過時。

不過不要擔(dān)心。使用該__future__模塊[4]可以幫助你用Python的未來版本導(dǎo)入功能。從字面上看,這就像是時間旅行、魔法或其他東西

from __future__ import print_functionprint('Hello World!')

geogy

地理,對大多數(shù)程序員來說是一個具有挑戰(zhàn)性的領(lǐng)域。在獲取地理信息或者繪制地圖時,也會遇到不少問題。這個geopy 模塊[5]讓地理相關(guān)內(nèi)容變得非常容易。

pip install geopy

它通過抽象一系列不同地理編碼服務(wù)的 API 來工作。通過它,你能夠獲得一個地方的完整街道地址、緯度、經(jīng)度甚至海拔高度。

還有一個有用的距離類。它以最好的測量單位計算兩個位置之間的距離。

from geopy import GoogleV3place = '221b Baker Street, London'location = GoogleV3().geocode(place)print(location.address)print(location.location)

howdoi

當(dāng)你使用terminal終端編程時,通過在遇到問題后會在StackOverflow上搜索答案,完后會回到終端繼續(xù)編程,此時有時會不記得你之前查到的解決方案,此時需要重新查看StackOverflow,但又不想離開終端,那么此時你需要用到這個有用的命令行工具h(yuǎn)owdoi[6]。

pip install howdoi

無論你有什么問題,都可以問它,它會盡力回復(fù)。

howdoi vertical align csshowdoi for loop in javahowdoi undo commits in git

但請注意——它會在 StackOverflow 的最佳答案中抓取代碼。它可能并不總是提供最有用的信息......

howdoi exit vim

Python 是一種非常多樣化且發(fā)展良好的語言,因此肯定會有許多我沒有考慮到的功能,如果大家有知道的,可以在評論區(qū)告訴我

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多