成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Python 中九種關鍵文件類型你了解幾個?

開發 前端
Python 接口文件(帶有擴展名的文件.pyi),或稱為 Python 存根文件,在使用類型提示增強 Python 代碼方面發揮著至關重要的作用。

當你遇到名稱以 .ipynb、.pyi、.pyc 等結尾的 Python 文件時,你是否會感到困惑?

你想知道所有這些文件類型之間的區別嗎?

在這里云朵君和大家一起了解所有這些 Python 文件類型。??

.py文件:標準 Python 源代碼

不用多說,每個懂 Python 的開發者都會把 Python 代碼寫到文件中.py,直接執行就可以了,像這樣:

python filename.py

簡單地說,這些.py文件是包含 Python 代碼的可執行純文本文件。

.ipynb文件:交互式 Jupyter Notebook

使用該擴展保存的 Jupyter Notebooks.ipynb對于數據分析和科學計算至關重要。

這種類型的 Python 文件對于數據科學家來說更加用戶友好。因為它提供了一個交互式環境,用于在單個文檔中結合代碼執行、數據可視化和敘述文本。

Jupyter Notebook 制作的用于數據分析的精美 .ipynb 文件示例Jupyter Notebook 制作的用于數據分析的精美 .ipynb 文件示例

.pyi文件:使用接口文件進行 Python 類型提示

Python 接口文件(帶有擴展名的文件.pyi),或稱為 Python 存根文件,在使用類型提示增強 Python 代碼方面發揮著至關重要的作用。

例如,我們有一個名為test.py以下程序的 Python 文件:

def multiply(a, b):
    return a * b

print(multiply(2.2, 10))

IDE(我使用的是 PyCharm)或其他 Python 類型檢查工具沒有給它們任何類型提示。

現在,創建一個與.py文件同名的.pyi文件:

在 PyCharm 中創建 Python 存根文件在 PyCharm 中創建 Python 存根文件

如上圖所示,在PyCharm中,我們可以在創建此文件時直接選擇Python存根文件類型。

現在將以下代碼寫入test.pyi文件中:

def  multiply ( a: int, b: int ) -> int : ...

如果我們test.py再次打開該文件,IDE 會提醒我們現在不匹配的類型:

圖片圖片

它使你的程序類型更安全。但是你可能會問,為什么不直接在原始 Python 文件(.py文件)中添加類型提示呢?

對于我們的例子,.pyi毫無疑問該文件并不是必要的,可以只在原始函數定義中聲明int類型。

.pyi將類型注釋與實現分離可以使主代碼保持干凈并專注于功能。

更重要的是,為了向后兼容,存根文件可以在不修改原始源文件的情況下為遺留代碼添加類型提示。畢竟,修改以前同事寫的舊代碼是一件很頭疼的事。??

.pyc文件:編譯后的 Python 字節碼

當 Python 腳本作為模塊導入時,解釋器會將其編譯為字節碼并將其保存為.pyc文件,可以通過跳過不必要的重新編譯來改善模塊加載時間。

這種類型的文件由解釋器自動生成,它包含字節碼,它是源代碼(相對.py文件)的低級、與平臺無關的表示形式。

從本質上講,字節碼是 Python 的虛擬機解釋和執行的內容。

鑒于它是以二進制格式保存的并且不可讀,因此在大多數情況下我們不需要過多擔心.pyc文件。

.pyw文件:Windows GUI Python 腳本

Python 不僅適用于數據科學和后端開發。它也是一種用于圖形用戶界面 (GUI) 開發的語言。

對于 Windows GUI,.pyw文件是為其設計的特定類型的 Python 腳本文件。這些文件用于在不打開命令提示符窗口的情況下運行 Python 腳本,使其成為 GUI 應用程序的理想選擇。

創建.pyw文件很簡單——只需使用擴展名.pyw而不是保存.py腳本即可。.pyw文件可以像.py文件一樣直接運行。

例如通過tkinter編寫一個簡單的UI組件并將其保存為.pyw文件:

# example.pyw
import tkinter as tk

def greet():
    label.config(text=f"Hello, {entry.get()}!")

root = tk.Tk()
root.title("Greeting App")

label = tk.Label(root, text="Enter your name:")
label.pack()

entry = tk.Entry(root)
entry.pack()

button = tk.Button(root, text="Greet", command=greet)
button.pack()

root.mainloop()

要執行它,我們只需在 Windows 資源管理器中雙擊該文件即可。或者,我們可以從命令行使用以下命令運行它pythonw:

pythonw example.pyw

.pxd 和 .pyx 文件:Cython 源文件和聲明文件

Cython 是一種編程語言,它使為 Python 編寫 C 擴展變得像編寫 Python 本身一樣簡單。它是Python 的超集,旨在讓主要用 Python 編寫的代碼提供類似 C 的性能。

Cython中使用的兩種重要文件類型是.pyx和.pxd文件。

  • .pyx文件:這些是包含主要實現代碼的 Cython 源文件。文件.pyx中的代碼可以是 Python 和類似 C 的語法的混合,允許你編寫與 Python 無縫集成的高性能代碼。
  • .pxd文件:這些是 Cython 聲明文件,類似于 C 頭文件。它們包含類型定義、函數聲明、變量和可在多個.pyx文件之間共享的類。

.pyd文件:Python 動態模塊

.pyd文件是 Python 動態模塊。(不是Cython 的.pxd文件。)

這些文件相當于 Windows 上的 DLL(動態鏈接庫)。它允許 Python 與已編譯的 C 或 C++ 代碼交互,從而實現高性能和低級系統交互。

要創建.pyd文件,我們通常可以用 C 或 C++ 編寫代碼,然后使用針對 Windows 平臺的編譯器對其進行編譯。該過程通常涉及使用 Microsoft Visual Studio 或 MinGW 等工具。

在游戲開發中,高性能游戲引擎和圖形庫通常利用.pyd文件進行渲染和物理計算。

.pyo文件:優化的 Python 字節碼文件

.pyo文件用于存儲優化的字節碼,通常在使用優化標志(-O)運行 Python 時創建。

例如,在Python 3.5之前,運行test.py如下名稱的Python腳本會生成一個test.pyo文件:

python-O test.py


注意:從 Python 3.5 開始,.pyo不再使用文件,而是將優化信息存儲在.pyc文件中。

寫在最后

如果你使用 Python 的時間足夠長,你可能會遇到所有 9 個 Python 文件擴展名。

責任編輯:武曉燕 來源: 數據STUDIO
相關推薦

2010-01-05 15:32:33

2023-12-04 15:42:10

類型Linux

2025-03-26 00:35:25

2010-04-02 13:15:01

Oracle跟蹤

2023-12-11 13:59:00

YieldPython生成器函數

2017-01-17 11:09:33

大數據關鍵詞工具

2021-02-05 08:03:52

Java

2022-05-06 16:31:27

人工智能自然語言生物特征識別

2022-05-05 21:06:33

人工智能計算機視覺自然語言處理

2024-08-06 11:40:57

2024-08-23 09:06:26

2010-03-01 15:34:38

Linux文件類型

2010-03-10 09:27:36

Linux鏈接文件類型

2023-05-17 12:33:11

AI人工智能

2021-06-11 13:59:22

CSS原子類

2019-04-12 14:26:17

Linux命令文件

2025-06-03 01:45:00

2025-01-16 10:41:40

2019-07-11 08:54:24

Redis安全策略

2010-01-12 11:37:06

Linux常見文件
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 三级免费av | 久久国产精品网站 | 久久精品亚洲欧美日韩久久 | 福利社午夜影院 | 精品国产乱码一区二区三区 | 久婷婷 | 免费一区| 亚洲a人| 四虎影| 久草视频在| 日日干日日射 | 中文在线播放 | 91av在线免费播放 | 亚洲精品一区二 | 91玖玖 | 中文在线а√在线8 | 亚洲精品第一 | 欧美三区在线观看 | 亚洲一区二区三区在线播放 | 免费看的黄网站 | 日韩视频区| 欧美一区二区三区四区五区无卡码 | 欧美极品一区二区 | 久久久精品| 国产午夜精品久久久 | 国产一区二区成人 | 午夜视频在线观看网址 | 欧美在线观看一区二区 | 一区二区三区欧美在线观看 | 美女天堂| 国产欧美一区二区三区在线看 | 神马久久久久久久久久 | 仙人掌旅馆在线观看 | 91久久久精品国产一区二区蜜臀 | 91久久久精品国产一区二区蜜臀 | 亚洲精品大片 | 在线播放亚洲 | 国产视频线观看永久免费 | 桃色五月| 天天操天天射天天舔 | 成人在线精品 |