.PYD

Plik PYD

Python extension module (Windows)
Zadaj pytanie
SZYBKA ODPOWIEDŹ

Plik .pyd to skompilowany moduł rozszerzenia Python dla systemu Windows - technicznie jest to biblioteka DLL zawierająca natywny kod C/C++, który Python importuje jak zwykły moduł. Nie otwiera się go bezpośrednio; Python ładuje go automatycznie, gdy używasz pakietu, który go wymaga. Jeśli widzisz błąd „ImportError: DLL load failed”, zainstaluj ponownie pakiet za pomocą pip dla swojej dokładnej wersji Pythona i architektury.

Deweloper: Python Software Foundation (CPython); built on Microsoft's PE/DLL format Kategoria: Pliki developerskie Otwarty standard MIME: application/octet-stream
OTWIERA SIĘ NA Windows
Powiązane: .DO · .MD · .HEX · .XSD

Na tej stronie

Zindeksowano 19k+ rozszerzeń
Ostatnia weryfikacja Jun 29, 2026

Nie wiesz, co to za plik?

Przeciągnij dowolny plik do naszego identyfikatora - odczytujemy tylko pierwsze bajty, aby nazwać format.

Zidentyfikuj plik

Co to jest format pliku PYD?

Dynamiczne moduły Python są zapisywane jako pliki .pyd w systemach Windows. Plik .pyd to systemowa biblioteka DLL w formacie binarnym PE (Portable Executable), wyróżniająca się eksportowaniem punktu wejścia PyInit_<modulename>, który interpreter wywołuje podczas importu. Moduły .pyd zawierają biblioteki, które mogą być używane przez inne aplikacje Python; biblioteki dynamiczne pozwalają na szybsze ładowanie kodu i modułowość aplikacji. W przeciwieństwie do plików bajtokodu .pyc i .pyo, pliki .pyd są specyficzne dla systemu Windows - format .so pełni tę samą rolę w systemach Linux i macOS.

Pliki .pyd zawierają skompilowane moduły rozszerzeń Python. Moduły zawierają jedną lub więcej przestrzeni nazw, a programy Python korzystające z takich modułów mogą odwoływać się do funkcji w nich zawartych. Moduły mogą być używane przez wiele aplikacji Python. Nowoczesne kompilacje zawierają znacznik ABI w nazwie pliku - na przykład cp312-win_amd64.pyd - co wiąże plik z konkretną wersją CPython i architekturą bitową. Tworzenie i dystrybucja modułów .pyd jest zazwyczaj obsługiwana przez narzędzia budowania, takie jak Cython lub setuptools.

Bezpieczeństwo

RYZYKO: MEDIUM

Plik .pyd to natywny kod wykonywalny, który Python uruchamia wewnątrz swojego procesu bez piaskownicy, więc złośliwy .pyd może zrobić wszystko, co Twój program Python. Praktyczne zagrożenia: (1) plik .pyd umieszczony w folderze przeszukiwanym przez Pythona może przejąć import (DLL/PYD search-order hijacking), oraz (2) pobieranie pojedynczych plików .pyd z przypadkowych stron w celu „naprawienia” błędu jest wektorem złośliwego oprogramowania - zawsze instaluj właściwy pakiet z PyPI za pomocą pip. Pliki .pyd wewnątrz legalnych pakietów zainstalowanych przez pip są normalne. Traktuj nieoczekiwane, niepodpisane pliki .pyd w folderze Pobrane lub folderze projektu z podejrzliwością i skanuj je.

Szczegóły formatu

w pigułce
PEŁNA NAZWAPython extension module (Windows)znany również jako Python dynamic module, Compiled Python extension
DEWELOPERPython Software Foundation (CPython); built on Microsoft's PE/DLL formatod Late 1990s - Python on Windows has loaded extension modules from .pyd (a renamed .dll) since the Python 1.x/2.0 era
TYP MIMEapplication/octet-stream
TYPBiblioteka DLL Windows PE (Portable Executable) udostępniająca funkcję inicjalizacji Python - skompilowany plik binarny
STANDARDOtwarty · bezpłatny
POWIĄZANE.do.md.hex.xsd
MAGICZNE BAJTY · SYGNATURA PLIKU
OFFSET
0001
HEX
4D5A
ASCII
MZ
Plik .pyd jest dosłownie biblioteką DLL systemu Windows, więc zaczyna się od nagłówka MZ DOS i zawiera sygnaturę „PE\0\0” (50 45 00 00) pod offsetem zapisanym w e_lfanew (0x3C). Różni się od zwykłej biblioteki DLL tylko tym, że eksportuje funkcję inicjalizacji modułu Python o nazwie PyInit_<modulename> (Python 3) lub init<modulename> (Python 2). Flaga DLL (bit 0x2000) jest ustawiona w polu COFF Characteristics.

Programy otwierające pliki PYD

Windows4 apps
Python (CPython) - the loader Open-source Nie otwierasz .pyd bezpośrednio. Python go importuje: „import nazwa_modułu”. Jeśli to się nie uda, zainstaluj ponownie pakiet: „pip install --force-reinstall nazwa_pakietu”.
pip (package manager) Open-source Zainstaluj ponownie lub napraw pakiet, do którego należy .pyd, dla swojej wersji Pythona: „pip install --upgrade --force-reinstall nazwa_pakietu”. Nie przenoś plików .pyd ręcznie.
Dependencies (lucasg) Open-source Diagnozuj błąd „DLL load failed”: otwórz .pyd, aby zobaczyć, których zależnych bibliotek DLL (np. środowiska VC++) brakuje w systemie.
Ghidra Open-source Tylko dla programistów i inżynierii wstecznej: zaimportuj .pyd w celu pełnej deasemblacji/dekompilacji jego natywnego kodu (jest to plik binarny PE).

Szczegóły techniczne

specyfikacja
Format konteneraWindows PE (Portable Executable) - ten sam kontener binarny co pliki `.dll` i `.exe`
Magiczne bajty`MZ` (0x4D 0x5A) pod offsetem 0 (nagłówek DOS); sygnatura PE pod offsetem zapisanym w 0x3C
Kolejność bajtówLittle-endian
Kluczowy eksportowany symbol`PyInit_<modulename>` (Python 3) lub `init<modulename>` (Python 2) - system importu CPython wywołuje tę funkcję, aby zainicjować moduł
Znacznik ABI w nazwieKompilacje z oznaczeniem wersji używają wzorca `nazwa.cpXYZ-win_amd64.pyd`; na przykład `cp312-win_amd64` dotyczy CPython 3.12 na 64-bitowym systemie Windows
PlatformaTylko Windows; odpowiednikiem w systemach Linux i macOS jest obiekt współdzielony `.so`
Typ MIME`application/octet-stream`; zarejestrowany również jako `application/vnd.microsoft.portable-executable`
Typowy rozmiar pliku20 KB - kilka MB; duże biblioteki natywne (np. komponenty NumPy lub SciPy) mogą osiągać dziesiątki MB
KompresjaBrak - surowe sekcje PE, brak wbudowanej kompresji
Podpis koduOpcjonalny podpis cyfrowy Authenticode (PE); w przeciwnym razie integralność nie jest weryfikowana (natywny kod maszynowy)
Kompatybilność interpreteraMusi pasować do dokładnej wersji CPython, architektury (32/64-bit) i znacznika ABI; niezgodny plik zgłasza `ImportError` podczas importu
Narzędzia budowaniaZazwyczaj kompilowane ze źródeł C, C++ lub Cython za pomocą setuptools `ext_modules`, CMake/scikit-build lub CFFI
WydanoLate 1990s - Python on Windows has loaded extension modules from .pyd (a renamed .dll) since the Python 1.x/2.0 era
Najnowsza wersjaTracks CPython; the per-version ABI tag (e.g. cp312-win_amd64) determines compatibility, current CPython 3.13 (2024)
Otwarty standardTak · bezpłatny (royalty-free)
Specyfikacjadocs.python.org

Konwersje PYD

Pytania i odpowiedzi społeczności

pytania użytkowników
Zadaj szybkie pytanie
Uzyskaj pomoc od osób pracujących z plikami PYD. Bądź precyzyjny - podaj system i wersję oprogramowania.
Konto nie jest wymagane · odpowiedzi zazwyczaj w ciągu doby

Brak pytań - bądź pierwszą osobą, która zapyta o pliki PYD.

Najczęściej zadawane pytania

Co to jest plik .pyd?
To skompilowany moduł rozszerzenia Python dla systemu Windows - technicznie biblioteka DLL zawierająca natywny kod (zazwyczaj C/C++), który Python może zaimportować jak zwykły moduł. W ten sposób szybkie pakiety, takie jak NumPy, dostarczają swoje skompilowane części.
Jak otworzyć plik .pyd?
Nie otwiera się go bezpośrednio - to skompilowany plik binarny, a nie skrypt. Python ładuje go automatycznie, gdy importujesz pakiet, który go używa. Aby go zbadać, programista może użyć deasemblera, takiego jak Ghidra; aby go naprawić, należy ponownie zainstalować dany pakiet za pomocą pip.
Jak naprawić błąd 'ImportError: DLL load failed' dla pliku .pyd?
Zazwyczaj pakiet został zbudowany dla innej wersji Pythona/architektury, brakuje zależnego środowiska uruchomieniowego (zainstaluj Microsoft Visual C++ Redistributable) lub plik jest uszkodzony. Zainstaluj go ponownie dla swojej wersji Pythona: „pip install --force-reinstall nazwa_pakietu” i upewnij się, że architektura bitowa Pythona zgadza się z pakietem.
Czy .pyd to to samo co DLL?
Tak - .pyd używa identycznego formatu Windows PE/DLL. Jedyną różnicą jest to, że .pyd eksportuje funkcję inicjalizacji modułu Python (PyInit_<nazwa>), co pozwala Pythonowi zaimportować go jako moduł.
Czy mogę przekonwertować .pyd na kod źródłowy .py?
Nie. .pyd to skompilowany kod maszynowy; oryginalnego kodu źródłowego Python/C nie można odzyskać, a jedynie zgrubnie zdeasemblować. Zamiast tego pobierz kod źródłowy z oficjalnego repozytorium pakietu.
Czy plik .pyd to wirus?
Nie z natury - większość plików .pyd to legalne części zainstalowanych pakietów Python. Ponieważ jednak jest to kod natywny, który Python uruchamia bez piaskownicy (sandbox), należy traktować nieoczekiwane pliki .pyd (zwłaszcza pobrane w celu „naprawienia” błędu) z podejrzliwością; instaluj pakiety tylko z PyPI przez pip i skanuj nieznane pliki.

Źródła

1Python docs - Building C and C++ Extensions on Windowsdocs.python.org
2Python docs - Extending Python with C or C++docs.python.org

Odkrywaj dalej

w całej bazie danych

Najpopularniejsze rozszerzenia w tym tygodniu

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.PARTPartial Download File
4.DATProgram Data File (generic)
5.BINCD/DVD Disc Image (BIN/CUE)
6.EXEWindows Executable (Portable Executable)
7.RPMSGRestricted Permission Message
8.NOMEDIAAndroid No-Media Marker File
9.MDMarkdown Document
10.TXTPlain Text File

Powiązane rozszerzenia

.DOStata Do-File
.MDMarkdown Document
.HEXIntel HEX File
.XSDXML Schema Definition
.MAPSource Map (JavaScript / CSS)
.CONFIGConfiguration File

Darmowe narzędzia do plików

Identyfikator plików i konwerter obrazów w przeglądarce - wszystko działa na Twoim urządzeniu.

Otwórz przybornik

Przeglądaj rozszerzenia plików A-Z