Upravljanje datotek in datotek Python

V tej vadnici boste izvedeli več o upravljanju datotek in imenikov v Pythonu, tj. Ustvarjanju imenika, preimenovanju, naštevanju vseh imenikov in delu z njimi.

Video: Python os modul

Python Directory

Če je v našem programu Python veliko datotek za obdelavo, lahko svojo kodo razporedimo v različne imenike, da naredimo stvari bolj obvladljive.

Imenik ali mapa je zbirka datotek in podimenikov. Python ima osmodul, ki nam ponuja veliko uporabnih metod za delo z imeniki (in datotekami).

Pridobite trenutni imenik

Sedanji delovni imenik lahko dobimo po getcwd()metodi osmodula.

Ta metoda vrne trenutni delovni imenik v obliki niza. getcwdb()Metodo lahko uporabimo tudi, da jo dobimo kot bajtni objekt.

 >>> import os >>> os.getcwd() 'C:\Program Files\PyScripter' >>> os.getcwdb() b'C:\Program Files\PyScripter'

Dodatna poševnica nazaj pomeni zaporedje pobega. print()Funkcija bo to naredilo pravilno.

 >>> print(os.getcwd()) C:Program FilesPyScripter

Spreminjanje imenika

Trenutni delovni imenik lahko spremenimo z uporabo chdir()metode.

Nova pot, v katero se želimo spremeniti, mora biti tej metodi podana kot niz. Za ločevanje elementov poti lahko uporabimo poševnico naprej /ali poševnico nazaj .

Varneje je uporabiti ubežno zaporedje pri uporabi poševnice nazaj.

 >>> os.chdir('C:\Python33') >>> print(os.getcwd()) C:Python33

Seznam imenikov in datotek

Vse listdir()metode in podimenike znotraj imenika je mogoče pridobiti z uporabo metode.

Ta metoda zavzame pot in vrne seznam podimenikov in datotek na tej poti. Če pot ni podana, vrne seznam podimenikov in datotek iz trenutnega delovnega imenika.

 >>> print(os.getcwd()) C:Python33 >>> os.listdir() ('DLLs', 'Doc', 'include', 'Lib', 'libs', 'LICENSE.txt', 'NEWS.txt', 'python.exe', 'pythonw.exe', 'README.txt', 'Scripts', 'tcl', 'Tools') >>> os.listdir('G:\') ('$RECYCLE.BIN', 'Movies', 'Music', 'Photos', 'Series', 'System Volume Information')

Izdelava novega imenika

Z mkdir()metodo lahko naredimo nov imenik .

Ta metoda zavzame pot novega imenika. Če celotna pot ni podana, se nov imenik ustvari v trenutnem delujočem imeniku.

 >>> os.mkdir('test') >>> os.listdir() ('test')

Preimenovanje imenika ali datoteke

rename()Način lahko preimenujete mapo ali datoteko.

Za preimenovanje katerega koli imenika ali datoteke rename()metoda upošteva dva osnovna argumenta: staro ime kot prvi argument in novo ime kot drugi argument.

 >>> os.listdir() ('test') >>> os.rename('test','new_one') >>> os.listdir() ('new_one')

Odstranjevanje imenika ali datoteke

Datoteko je mogoče odstraniti (izbrisati) z uporabo remove()metode.

Podobno rmdir()metoda odstrani prazen imenik.

 >>> os.listdir() ('new_one', 'old.txt') >>> os.remove('old.txt') >>> os.listdir() ('new_one') >>> os.rmdir('new_one') >>> os.listdir() ()

Opomba : rmdir()Metoda lahko odstrani samo prazne imenike.

Da odstranimo neprazen imenik, lahko uporabimo rmtree()metodo znotraj shutilmodula.

 >>> os.listdir() ('test') >>> os.rmdir('test') Traceback (most recent call last):… OSError: (WinError 145) The directory is not empty: 'test' >>> import shutil >>> shutil.rmtree('test') >>> os.listdir() ()

Zanimive Članki...