Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Následuje podrobný průvodce pro nastavení vývojového prostředí a zahájení práce s Pythonem pro skriptování a automatizaci operací systému souborů ve Windows.
Poznámka:
Tento článek popisuje nastavení prostředí tak, aby používalo některé z užitečných knihoven v Pythonu, které můžou automatizovat úlohy napříč platformami, jako je prohledávání systému souborů, přístup k internetu, analýza typů souborů atd., z přístupu zaměřeného na Windows. V případě operací specifických pro Windows si projděte ctypes, knihovnu cizích funkcí pro Python kompatibilní s jazykem C, winreg, která zpřístupňuje rozhraní API registru Windows pro Python, a Python/WinRT, což umožňuje přístup k rozhraním API Windows Runtime z Pythonu.
Nastavení vývojového prostředí
Při psaní skriptů, které provádějí operace systému souborů pomocí Pythonu, doporučujeme nainstalovat Python z Microsoft Storu. Instalace prostřednictvím Microsoft Storu používá základní interpret Python3, ale kromě poskytování automatických aktualizací zpracovává nastavení PATH pro aktuálního uživatele (vyhněte se nutnosti přístupu správce).
Pokud používáte Python pro vývoj pro web ve Windows, doporučujeme použít jiný instalační program s využitím subsystému Windows pro Linux. Projděte si názorný postup v naší příručce: Začínáme používat Python pro vývoj webů ve Windows. Pokud s Pythonem začínáte, vyzkoušejte si naši příručku: Začínáme používat Python ve Windows pro začátečníky. V některých pokročilých scénářích (jako je potřeba přistupovat k nainstalovaným nebo upravovat nainstalované soubory Pythonu, vytvářet kopie binárních souborů nebo přímo používat knihovny DLL Pythonu), můžete zvážit možnost stažení konkrétní verze Pythonu přímo z python.org nebo zvážit instalaci alternativního, jako je Anaconda, Jython, PyPy, WinPython, IronPython atd. Doporučujeme to jenom v případě, že jste pokročilejší programátor v Pythonu s konkrétním důvodem pro volbu alternativní implementace.
Instalace Pythonu
Instalace Pythonu pomocí Microsoft Storu:
Přejděte do nabídky Start (ikona Windows v levém dolním rohu), zadejte "Microsoft Store", výběrem odkazu otevřete obchod.
Po otevření obchodu vyberte Hledat z pravého horního menu a zadejte "Python". V části Aplikace vyberte, kterou verzi Pythonu chcete použít. Doporučujeme použít nejnovější, pokud nemáte důvod ne (například sladění s verzí používanou u již existujícího projektu, na který plánujete pracovat). Jakmile určíte verzi, kterou chcete nainstalovat, vyberte Získat.
Jakmile Python dokončí proces stahování a instalace, otevřete Windows PowerShell pomocí nabídky Start (ikona Windows v levém dolním rohu). Po otevření PowerShellu zadáním potvrďte
Python --version, že je na vašem počítači nainstalovaný Python3.Instalace Pythonu v Microsoft Storu zahrnuje pip, standardního správce balíčků. Pip umožňuje instalovat a spravovat další balíčky, které nejsou součástí standardní knihovny Pythonu. Pokud chcete ověřit, že máte k dispozici také pip pro instalaci a správu balíčků, zadejte
pip --version.
Nainstalujte Visual Studio Code
Použitím VS Code jako textového editoru nebo integrovaného vývojového prostředí (IDE) můžete využít IntelliSense (pomoc při dokončování kódu), lintování (pomáhá vyhnout se chybám v kódu), podporu ladění (pomáhá najít chyby v kódu po spuštění), fragmenty kódu (šablony pro malé opakovaně použitelné bloky kódu). a testování jednotek (testování rozhraní kódu s různými typy vstupu).
Stáhněte si VS Code pro Windows a postupujte podle pokynů k instalaci: https://code.visualstudio.com.
Instalace rozšíření Microsoft Pythonu
Abyste mohli využívat funkce podpory VS Code, budete muset nainstalovat rozšíření Microsoft Pythonu. Další informace.
Otevřete okno rozšíření VS Code zadáním Ctrl+Shift+X (nebo pomocí nabídky přejděte na Zobrazení>Rozšíření).
Do horního pole Hledat rozšíření na Marketplace zadejte: Python.
Najděte rozšíření Python (ms-python.python) od Microsoftu a vyberte zelené tlačítko Nainstalovat.
Otevření integrovaného terminálu PowerShellu ve VS Code
VS Code obsahuje integrovaný terminál, který umožňuje otevřít příkazový řádek pro Python pomocí PowerShellu, a vytváří tak bezproblémový pracovní postup mezi editorem kódu a příkazovým řádkem.
Otevřete terminál ve VS Code, vyberte Zobrazit>Terminálnebo případně použijte klávesovou zkratku Ctrl+` (pomocí znaku backtick).
Poznámka:
Výchozí terminál by měl být PowerShell, ale pokud ho potřebujete změnit, zadejte paletu příkazů pomocí kombinace kláves Ctrl+Shift+P . Zadejte Terminál: Vyberte výchozí prostředí a zobrazí se seznam možností terminálu obsahující PowerShell, Command Prompt, WSL atd. Vyberte tu, kterou chcete použít, a zadejte Ctrl+Shift+` (pomocí apostrofu) a vytvořte nový terminál.
V terminálu VS Code otevřete Python zadáním:
pythonVyzkoušejte interpret Pythonu zadáním:
print("Hello World"). Python vrátí váš výraz "Hello World".
Pokud chcete Python ukončit, můžete zadat
exit(),quit()nebo vybrat Ctrl-Z.
Instalace Gitu (volitelné)
Pokud plánujete spolupracovat s ostatními na kódu Pythonu nebo hostovat projekt na opensourcové stránce (jako je GitHub), VS Code podporuje správu verzí pomocí Gitu. Karta Správa zdrojového kódu ve VS Code sleduje všechny změny a obsahuje běžné příkazy Gitu (přidání, potvrzení, vložení, vyžádání) integrované přímo do uživatelského rozhraní. Nejprve je potřeba nainstalovat Git, abyste mohli zapnout panel Správy zdrojového kódu.
Instalační průvodce je součástí balíčku a položí vám řadu otázek ohledně nastavení vaší instalace Gitu. Doporučujeme použít všechna výchozí nastavení, pokud nemáte konkrétní důvod, proč něco změnit.
Pokud jste s Gitem ještě nikdy nepracovali, Průvodci GitHubem vám můžou pomoct začít.
Ukázkový skript pro zobrazení struktury adresáře systému souborů
Běžné úlohy správy systému můžou trvat hodně času, ale pomocí skriptu Pythonu můžete tyto úlohy automatizovat tak, aby vůbec nezabírají čas. Python může například číst obsah systému souborů vašeho počítače a provádět operace, jako je tisk osnovy souborů a adresářů, přesouvání složek z jednoho adresáře do jiného nebo přejmenování stovek souborů. Za normálních okolností by úkoly podobné těmto úkolům mohly trvat delší dobu, pokud byste je provedli ručně. Místo toho použijte skript Pythonu.
Začněme jednoduchým skriptem, který prochází strom adresářů a zobrazí jejich strukturu.
Otevřete PowerShell pomocí nabídky Start (ikona Windows vlevo dole).
Vytvořte adresář pro váš projekt:
mkdir python-scriptsa otevřete tento adresář:cd python-scripts.Vytvořte několik adresářů pro použití s ukázkovým skriptem:
mkdir food, food\fruits, food\fruits\apples, food\fruits\oranges, food\vegetablesVytvořte v těchto adresářích několik souborů, které se mají použít s naším skriptem:
new-item food\fruits\banana.txt, food\fruits\strawberry.txt, food\fruits\blueberry.txt, food\fruits\apples\honeycrisp.txt, food\fruits\oranges\mandarin.txt, food\vegetables\carrot.txtVytvořte nový soubor Pythonu v adresáři python-scripts:
mkdir src new-item src\list-directory-contents.pyOtevřete projekt ve VS Code zadáním:
code .Otevřete okno Průzkumníka souborů VS Code tak, že zadáte Ctrl+Shift+E (nebo pomocí nabídky přejdete doPrůzkumníka>) a vyberete list-directory-contents.py soubor, který jste právě vytvořili. Rozšíření Microsoft Pythonu automaticky načte interpret Pythonu. Ve spodní části okna VS Code můžete vidět, který interpret byl načten.
Poznámka:
Python je interpretovaný jazyk, což znamená, že funguje jako virtuální počítač a emuluje fyzický počítač. Existují různé typy interpretů Pythonu, které můžete použít: Python 2, Python 3, Anaconda, PyPy atd. Pokud chcete spustit kód Pythonu a získat Python IntelliSense, musíte říct VS Code, který interpret se má použít. Doporučujeme držet se interpretu, který VS Code ve výchozím nastavení zvolí (Python 3 v našem případě), pokud nemáte konkrétní důvod pro výběr něčeho jiného. Pokud chcete změnit interpret Pythonu, vyberte interpret aktuálně zobrazený v modrém pruhu v dolní části okna editoru VS Code nebo otevřete paletu příkazů (Ctrl+Shift+P) a zadejte příkaz Python: Select Interpret. Zobrazí se seznam interpretů Pythonu, které jste aktuálně nainstalovali. Další informace o konfiguraci prostředí Pythonu.
VS CodeDo souboru list-directory-contents.py vložte následující kód a vyberte uložit:
import os root = os.path.join('..', 'food') for directory, subdir_list, file_list in os.walk(root): print('Directory:', directory) for name in subdir_list: print('Subdirectory:', name) for name in file_list: print('File:', name) print()Otevřete integrovaný terminál VS Code (Ctrl+' pomocí znaku backtick) a zadejte adresář src, do kterého jste právě uložili skript Pythonu:
cd srcSpusťte skript v PowerShellu pomocí:
python3 .\list-directory-contents.pyMěl by se zobrazit výstup, který vypadá takto:
Directory: ..\food Subdirectory: fruits Subdirectory: vegetables Directory: ..\food\fruits Subdirectory: apples Subdirectory: oranges File: banana.txt File: blueberry.txt File: strawberry.txt Directory: ..\food\fruits\apples File: honeycrisp.txt Directory: ..\food\fruits\oranges File: mandarin.txt Directory: ..\food\vegetables File: carrot.txtPomocí Pythonu můžete výstup adresáře systému souborů vytisknout do vlastního textového souboru zadáním tohoto příkazu přímo do terminálu PowerShellu:
python3 list-directory-contents.py > food-directory.txt
Gratulujeme! Právě jste napsali skript pro správu automatizovaných systémů, který čte adresář a soubory, které jste vytvořili, a pomocí Pythonu zobrazíte a pak vytisknete adresářovou strukturu do vlastního textového souboru.
Poznámka:
Pokud se vám nedaří nainstalovat Python 3 z Microsoft Storu, podívejte se na zmíněný problém pro příklad, jak zpracovat cesty pro tento ukázkový skript.
Ukázkový skript pro úpravu všech souborů v adresáři
Tento příklad používá soubory a adresáře, které jste právě vytvořili, přejmenováním jednotlivých souborů přidáním data poslední změny souboru na začátek názvu souboru.
Ve složce src v adresáři python-scripts vytvořte nový soubor Pythonu pro váš skript:
new-item update-filenames.pyOtevřete soubor update-filenames.py, vložte do něj následující kód a uložte ho:
Poznámka:
Funkce os.getmtime vrátí časové razítko ve formátu "ticks", což není snadno čitelné. Nejprve se musí převést na standardní řetězec s datumem a časem.
import datetime import os root = os.path.join('..', 'food') for directory, subdir_list, file_list in os.walk(root): for name in file_list: source_name = os.path.join(directory, name) timestamp = os.path.getmtime(source_name) modified_date = str(datetime.datetime.fromtimestamp(timestamp)).replace(':', '.') target_name = os.path.join(directory, f'{modified_date}_{name}') print(f'Renaming: {source_name} to: {target_name}') os.rename(source_name, target_name)Otestujte update-filenames.py skript spuštěním:
python3 update-filenames.pya pak znovu spusťte skript list-directory-contents.py:python3 list-directory-contents.pyMěl by se zobrazit výstup, který vypadá takto:
Renaming: ..\food\fruits\banana.txt to: ..\food\fruits\2019-07-18 12.24.46.385185_banana.txt Renaming: ..\food\fruits\blueberry.txt to: ..\food\fruits\2019-07-18 12.24.46.391170_blueberry.txt Renaming: ..\food\fruits\strawberry.txt to: ..\food\fruits\2019-07-18 12.24.46.389174_strawberry.txt Renaming: ..\food\fruits\apples\honeycrisp.txt to: ..\food\fruits\apples\2019-07-18 12.24.46.395160_honeycrisp.txt Renaming: ..\food\fruits\oranges\mandarin.txt to: ..\food\fruits\oranges\2019-07-18 12.24.46.398151_mandarin.txt Renaming: ..\food\vegetables\carrot.txt to: ..\food\vegetables\2019-07-18 12.24.46.402496_carrot.txt PS C:\src\python-scripting\src> python3 .\list-directory-contents.py ..\food\ Directory: ..\food Subdirectory: fruits Subdirectory: vegetables Directory: ..\food\fruits Subdirectory: apples Subdirectory: oranges File: 2019-07-18 12.24.46.385185_banana.txt File: 2019-07-18 12.24.46.389174_strawberry.txt File: 2019-07-18 12.24.46.391170_blueberry.txt Directory: ..\food\fruits\apples File: 2019-07-18 12.24.46.395160_honeycrisp.txt Directory: ..\food\fruits\oranges File: 2019-07-18 12.24.46.398151_mandarin.txt Directory: ..\food\vegetables File: 2019-07-18 12.24.46.402496_carrot.txtPomocí Pythonu můžete vytisknout nové názvy adresářů systému souborů s předvyplněným časovým razítkem naposledy upraveným do vlastního textového souboru zadáním tohoto příkazu přímo do terminálu PowerShellu:
python3 list-directory-contents.py > food-directory-last-modified.txt
Doufám, že jste se naučili několik zábavných věcí o používání skriptů Pythonu pro automatizaci úloh správy základních systémů. Samozřejmě je tu spousta toho, co se můžete dozvědět, ale doufáme, že jste měli dobrý start. Nasdíleli jsme několik dalších zdrojů informací, abychom mohli pokračovat ve studiu níže.
Dodatečné zdroje
- Dokumentace k Pythonu: Přístup k souborům a adresářům: Dokumentace k Pythonu o práci se systémy souborů a používání modulů pro čtení vlastností souborů, manipulaci s cestami přenositelným způsobem a vytváření dočasných souborů.
- Learn Python: String_Formatting lekce: Další informace o použití operátoru "%" pro formátování řetězců.
-
10 metod systému souborů Pythonu, které byste měli znát: Článek na Medium o manipulaci se soubory a složkami použitím
osashutil. - Průvodce Hitchhikers v Pythonu: Správa systémů: "názorný průvodce", který nabízí přehledy a osvědčené postupy týkající se témat souvisejících s Pythonem. Tato část se zabývá nástroji a architekturami pro správu systému. Tato příručka je hostovaná na GitHubu, takže můžete zasouborovat problémy a přispívat.
Windows developer