歸納整理! Python實用技巧總結
本篇文章為大家帶來了關於python的相關知識,其中主要總結了24個非常實用的Python開發技巧,包括了all or any、bashplotlib、collections等等,希望對大家有幫助。
推薦學習:python教學
在Python的學習過程中,很多小夥伴可能會想,我學了這麼多,哪些是常用、實用的?怎樣增加工作效率?
今天,我就總結了24個好用到爆的Python實用技巧,希望能對小夥伴們有幫助! 歡迎收藏學習,喜歡按讚支持,文末提供技術交流群。
在這裡,我嘗試以A - Z 開頭的格式分享這些技巧中的一部分,並且簡單介紹這些方法,如果你對其中一個或多個感興趣,你可以透過文末參考資料查看官方文件哦~
all or any
Python 語言如此流行的眾多原因之一,是因為它具有很好的可讀性和表現力。
人們常開玩笑說 Python 是可執行的偽代碼
。當你可以像這樣寫程式碼時,就很難反駁。
1 2 3 4 |
|
bashplotlib
你有沒有想過在控制台中繪製圖形嗎?
Bashplotlib 是一個 Python 函式庫,他能夠幫助我們在命令列(粗曠的環境)中繪製資料。
1 2 3 4 5 6 7 |
|
collections
Python 有一些很棒的預設資料類型,但有時它們的行為並不完全符合你的期望。
幸運的是,Python 標準函式庫提供了 collections 模組**[1]**。這個方便的附加元件為你提供了更多的資料類型。
1 2 3 4 5 |
|
dir
有沒有想過如何查看 Python 物件內部並查看它具有哪些屬性?在命令列中輸入:
1 2 3 |
|
當以互動方式運行 Python 以及動態探索你正在使用的物件和模組時,這可能是一個非常有用的功能。在這裡閱讀更多**functions****[2]**相關內容。
emoji
emoji**[3]** 是日本在無線通訊中所使用的視覺情緒符號,繪圖圖畫,文字指的則是字符,可用來代表多種表情,如笑臉表示笑、蛋糕表示食物等。在中國大陸,emoji通常叫做“小黃臉”,或直稱emoji。
1 2 3 4 5 |
|
from __future__ import
Python 流行的結果之一,總是有新版本正在開發中。新版本意味著新功能 —— 除非你的版本已過時。
不過別擔心。使用該**__future__模組****[4]**可以幫助你用Python的未來版本導入功能。從字面上看,這就像時間旅行、魔法或其他東西。
1 2 |
|
geogy
#地理,對大多數程式設計師來說是一個具有挑戰性的領域。在取得地理資訊或繪製地圖時,也會遇到不少問題。這個**geopy 模組****[5]**讓地理相關內容變得非常容易。
1 |
|
它透過抽象化一系列不同地理編碼服務的 API 來運作。透過它,你能夠獲得一個地方的完整街道地址、緯度、經度甚至海拔高度。
還有一個有用的距離類別。它以你偏好的測量單位計算兩個位置之間的距離。
1 2 3 4 5 |
|
howdoi
當你使用terminal終端程式設計時,透過在遇到問題後會在StackOverflow上搜尋答案,完後會回到終端繼續編程,此時有時會不記得你之前查到的解決方案,此時需要重新查看StackOverflow,但又不想離開終端,那麼此時你需要用到這個有用的命令列工具howdoi****[6 ]。
1 |
|
無論你有什麼問題,都可以問它,它會盡力回覆。
1 2 3 |
|
但請注意——它會從 StackOverflow 的最佳答案中抓取程式碼。它可能不會總是提供最有用的信息…
1 |
|
inspect
Python 的**inspect模組****[7]**非常適合了解幕後發生的事。你甚至可以呼叫它自己的方法!
下面的程式碼範例inspect.getsource()
用來列印自己的原始程式碼。 inspect.getmodule()
也用來列印定義它的模組。
最後一行程式碼列印出它自己的行號。
1 2 3 4 |
|
當然,除了這些微不足道的用途,inspect 模組可以證明對理解你的程式碼在做什麼很有用。你也可以使用它來編寫自文檔化程式碼。
Jedi
Jedi 函式庫是一個自動完成和程式碼分析函式庫。它使編寫程式碼更快、更有效率。
除非你正在開發自己的 IDE,否則你可能對使用Jedi **[8]**作為編輯器外掛程式比較感興趣。幸運的是,這已經有可用的負載!
**kwargs
在学习任何语言时,都会有许多里程碑。使用 Python 并理解神秘的**kwargs
语法可能算作一个重要的里程碑。
字典对象前面的双星号****kwargs****[9]**允许你将该字典的内容作为命名参数传递给函数。
字典的键是参数名称,值是传递给函数的值。你甚至不需要调用它kwargs
!
1 2 3 |
|
当你想编写可以处理未预先定义的命名参数的函数时,这很有用。
列表(list)推导式
关于 Python 编程,我最喜欢的事情之一是它的列表推导式****[10]。
这些表达式可以很容易地编写非常顺畅的代码,几乎与自然语言一样。
1 2 3 4 5 6 7 8 9 10 |
|
map
Python 通过许多内置功能支持函数式编程。最有用的map()
功能之一是函数——尤其是与**lambda 函数****[11]**结合使用时。
1 2 3 4 |
|
在上面的示例中,map()
将一个简单的 lambda
函数应用于x
. 它返回一个映射对象,该对象可以转换为一些可迭代对象,例如列表或元组。
newspaper3k
如果你还没有看过它,那么准备好被Python newspaper module [12]模块震撼到。它使你可以从一系列领先的国际出版物中检索新闻文章和相关的元数据。你可以检索图像、文本和作者姓名。它甚至有一些内置的 NLP 功能**[13]**。
因此,如果你正在考虑在下一个项目中使用 BeautifulSoup
或其他一些 DIY 网页抓取库,使用本模块可以为你自己节省不少时间和精力。
1 |
|
Operator overloading
Python 提供对**运算符重载的****[14]**支持,这是让你听起来像一个合法的计算机科学家的术语之一。
这实际上是一个简单的概念。有没有想过为什么 Python 允许你使用+
运算符来添加数字以及连接字符串?这就是操作符重载的作用。
你可以定义以自己的特定方式使用 Python 的标准运算符符号的对象。并且你可以在与你正在使用的对象相关的上下文中使用它们。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
pprint
Python 的默认print
函数完成了它的工作。但是如果尝试使用print
函数打印出任何大的嵌套对象,其结果相当难看。这个标准库的漂亮打印模块**pprint****[15]**可以以易于阅读的格式打印出复杂的结构化对象。
这算是任何使用非平凡数据结构的 Python 开发人员的必备品。
1 2 3 4 5 |
|
Queue
Python 标准库的 Queue 模块实现支持多线程。这个模块让你实现队列数据结构。这些是允许你根据特定规则添加和检索条目的数据结构。
“先进先出”(FIFO)队列让你可以按添加顺序检索对象。“后进先出”(LIFO) 队列让你可以首先访问最近添加的对象。
最后,优先队列让你可以根据对象的排序顺序检索对象。
这是一个如何在 Python 中使用队列**Queue****[16]**进行多线程编程的示例。
__repr__
在 Python 中定义类或对象时,提供一种将该对象表示为字符串的“官方”方式很有用。例如:
1 2 3 |
|
这使得调试代码更加容易。将其添加到你的类定义中,如下所示:
1 2 3 4 5 6 |
|
sh
Python 是一种很棒的脚本语言。有时使用标准的 os 和 subprocess 库可能有点头疼。
该**SH库****[17]**让你可以像调用普通函数一样调用任何程序——对于自动化工作流和任务非常有用。
1 2 3 4 5 6 |
|
Type hints
Python 是一种动态类型语言。定义变量、函数、类等时不需要指定数据类型。这允许快速的开发时间。但是,没有什么比由简单的输入问题引起的运行时错误更烦人的了。
从 Python 3.5**[18]** 开始,你可以选择在定义函数时提供类型提示。
1 2 |
|
你还可以定义类型别名。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
尽管不是强制性的,但类型注释可以使你的代码更易于理解。
它们还允许你使用类型检查工具,在运行前捕获那些杂散的 TypeError。如果你正在处理大型、复杂的项目,这是很有用的!
uuid
通过Python 标准库的 uuid 模块**[19]**生成通用唯一 ID(或“UUID”)的一种快速简便的方法。
1 2 3 |
|
这将创建一个随机的 128 位数字,该数字几乎肯定是唯一的。事实上,可以生成超过 2¹²² 种可能的 UUID。这超过了五个十进制 (或 5,000,000,000,000,000,000,000,000,000,000,000,000)。
在给定的集合中发现重复的概率极低。即使有一万亿个 UUID,重复存在的可能性也远低于十亿分之一。
Virtual environments
你可能同时在多个 Python 项目上工作。不幸的是,有时两个项目将依赖于相同依赖项的不同版本。你在你的系统上安装了什么?
幸运的是,Python支持对 虚拟环境**[20]** 的让你可以两全其美。从命令行:
1 2 3 |
|
现在,你可以在同一台机器上运行 Python 的独立版本和安装。
wikipedia
维基百科有一个很棒的 API,它允许用户以编程方式访问无与伦比的完全免费的知识和信息。在**wikipedia模块****[21]**使访问该API非常方便。
1 2 3 4 5 |
|
和真实站点一样,该模块提供了多语言支持、页面消歧、随机页面检索,甚至还有一个donate()
方法。
xkcd
幽默是 Python 语言的一个关键特征,它是以英国喜剧小品剧**Python飞行马戏团****[22]**命名的。Python 的许多官方文档都引用了该节目最著名的草图。不过,Python 的幽默并不仅限于文档。试试运行下面的行:
1 |
|
YAML
YAML**[23]**指的是 “ 非标记语言” 。它是一种数据格式化语言,是 JSON 的超集。
与 JSON 不同,它可以存储更复杂的对象并引用它自己的元素。你还可以编写注释,使其特别适合编写配置文件。该**PyYAML模块****[24]**可让你使用YAML使用Python。
安装并然后导入到你的项目中:
1 |
|
PyYAML 允许你存储任何数据类型的 Python 对象,以及任何用户定义类的实例。
zip
压轴出场的也是很棒的一个模块。你曾经遇到过需要从两个列表中形成字典吗?
1 2 3 |
|
该zip()
内置函数需要一系列可迭代的对象,并返回一个元组列表中。每个元组按位置索引对输入对象的元素进行分组。
你还可以通过调用对象来“解压缩”对象*zip()
。
Python 是一种非常多样化且发展良好的语言,因此肯定会有许多我没有考虑的功能。如果你想了解更多的python模块,可以参考awesome-python****[25]。
推荐学习:python学习教程
以上是歸納整理! Python實用技巧總結的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。

PHP適合網頁開發和快速原型開發,Python適用於數據科學和機器學習。 1.PHP用於動態網頁開發,語法簡單,適合快速開發。 2.Python語法簡潔,適用於多領域,庫生態系統強大。

在 Sublime Text 中運行 Python 代碼,需先安裝 Python 插件,再創建 .py 文件並編寫代碼,最後按 Ctrl B 運行代碼,輸出會在控制台中顯示。

PHP起源於1994年,由RasmusLerdorf開發,最初用於跟踪網站訪問者,逐漸演變為服務器端腳本語言,廣泛應用於網頁開發。 Python由GuidovanRossum於1980年代末開發,1991年首次發布,強調代碼可讀性和簡潔性,適用於科學計算、數據分析等領域。

Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。

Golang在性能和可擴展性方面優於Python。 1)Golang的編譯型特性和高效並發模型使其在高並發場景下表現出色。 2)Python作為解釋型語言,執行速度較慢,但通過工具如Cython可優化性能。

在 Visual Studio Code(VSCode)中編寫代碼簡單易行,只需安裝 VSCode、創建項目、選擇語言、創建文件、編寫代碼、保存並運行即可。 VSCode 的優點包括跨平台、免費開源、強大功能、擴展豐富,以及輕量快速。

在 Notepad 中運行 Python 代碼需要安裝 Python 可執行文件和 NppExec 插件。安裝 Python 並為其添加 PATH 後,在 NppExec 插件中配置命令為“python”、參數為“{CURRENT_DIRECTORY}{FILE_NAME}”,即可在 Notepad 中通過快捷鍵“F6”運行 Python 代碼。
