Hvad er PY-filformatet?
.py er filtypenavnet, der bruges af script-filer skrevet i programmeringssproget Python. En .py-fil indeholder kildekode skrevet i Python - gemt som almindelig tekst i UTF-8-kodning som standard, så den kan læses og ændres uden specielle værktøjer.
.py-filens alsidighed
.py-formatet har mange anvendelsesmuligheder og er ekstremt populært, drevet af Pythons udbredte fortolker og dens enorme økosystem af biblioteker. Dette format understøttes på mange operativsystemer, herunder Windows, macOS og Unix/Linux. Pythons rækkevidde strækker sig nu fra webudvikling og datavidenskab til maskinlæring og automatisering, hvilket gør .py-filer til stede i stort set alle områder af moderne softwareudvikling.
Håndtering af .py-filer
Visning, åbning og redigering af .py-filer er muligt ved hjælp af ethvert tekstredigeringsprogram. At køre et .py-script kræver dog en Python-fortolker installeret på systemet - standardkommandoerne er python script.py eller python3 script.py. .py-scriptfiler bruges ofte til systemadministration, opgaveautomatisering og databehandling. Når Python importerer et modul, kan det oprette en kompileret .pyc-cache ved siden af kilden. Relaterede varianter inkluderer .pyw (Windows GUI-scripts uden konsolvindue) og .pyi stub-filer, der bruges til type-hints.
Sikkerhed og tryghed
RISIKO: HIGHEn .py-fil er et program - kørsel af den eksekverer den kode, den indeholder, med dine brugerrettigheder. Kør ALDRIG et Python-script fra en upålidelig kilde uden at læse det først; ondsindede scripts kan slette filer, installere malware eller stjæle data, og Python er et almindeligt sprog til levering af malware. Blot at ÅBNE en .py i et tekstredigeringsprogram er sikkert (det er kun tekst). Vær forsigtig med „pip install“ af ukendte pakker, som et script kræver - typosquattede PyPI-pakker er en reel angrebsvektor. Hvis du er i tvivl, så læs kildekoden; .py er menneskeligt læsbar af design.
Formatdetaljer
kort fortaltProgrammer der åbner PY-filer
Tekniske detaljer
dyb specifikation| Filtype | Almindelig tekst Python kildekode |
| MIME-type | text/x-python |
| Standardkodning | UTF-8 (PEP 3120); tilsidesættes af en `# -*- coding: <navn> -*-` erklæring på linje 1 eller 2 |
| Shebang-understøttelse | Unix/Linux-scripts placerer `#!/usr/bin/env python3` på linje 1 for at tillade direkte eksekvering uden at kalde fortolkeren eksplicit |
| Indrykningssyntaks | Betydningsfulde mellemrum - indrykning er en del af grammatikken; PEP 8 anbefaler 4 mellemrum pr. niveau |
| Modul-indgangspunkt | `if __name__ == "__main__":` sikring adskiller importerbar kode fra kode, der kun kører, når filen eksekveres direkte |
| Kompileret cache | CPython kompilerer `.py`-kilde til `.pyc`-bytecode og gemmer det i `__pycache__/` for at fremskynde efterfølgende importer |
| Type-hint understøttelse | Valgfrie inline-annotationer i henhold til PEP 484 (Python 3.5+); separate stub-definitioner findes i `.pyi`-filer |
| Kommentarsyntaks | `#` introducerer en enkeltlinjet kommentar; tredobbelt-anførselstegn (`"""..."""`) fungerer som docstrings for moduler, klasser og funktioner |
| Runtimes | CPython (reference-implementering), PyPy, Jython, MicroPython, GraalPy |
| Linjeafslutninger | LF foretrækkes på tværs af platforme; CRLF accepteres på Windows |
| Importsystem | `import` og `from ... import` indlæser moduler; en mappe, der indeholder `__init__.py`, behandles som en pakke |
| Magic bytes | Ingen - `.py` er en almindelig tekstfil uden binær signatur; identificeres ved indhold (shebang, `import`/`def`/`class` nøgleord eller indrykningsmønster) |
| Udgivet | 1991 (Python 0.9.0); language steward: Python Software Foundation since 2001 |
| Åben standard | Ja · royaltyfri |
| Specifikation | docs.python.org |