Šioje pamokoje sužinosite apie „Python“ failų ir katalogų valdymą, ty katalogo sukūrimą, jo pervadinimą, visų katalogų sąrašą ir darbą su jais.
Vaizdo įrašas: „Python os“ modulis
„Python“ katalogas
Jei mūsų „Python“ programoje yra daug failų, kuriuos reikia tvarkyti, kodą galime sutvarkyti skirtinguose kataloguose, kad viskas būtų lengviau valdoma.
Katalogas arba aplankas yra failų ir pakatalogių rinkinys. „Python“ turi os
modulį, kuris suteikia mums daug naudingų metodų darbui su katalogais (ir failais).
Gaukite dabartinį katalogą
Dabartinį darbo katalogą galime gauti naudodami modulio getcwd()
metodą os
.
Šis metodas grąžina dabartinį darbo katalogą eilutės pavidalu. Mes taip pat galime naudoti getcwdb()
metodą, kad gautume jį kaip baitų objektą.
>>> import os >>> os.getcwd() 'C:\Program Files\PyScripter' >>> os.getcwdb() b'C:\Program Files\PyScripter'
Papildomas atbulinis brūkšnys reiškia pabėgimo seką. print()
Funkcija suteiks ši tinkamai.
>>> print(os.getcwd()) C:Program FilesPyScripter
Katalogo keitimas
Naudodami chdir()
metodą galime pakeisti dabartinį darbo katalogą .
Naujas kelias, kurį norime pakeisti, turi būti pateiktas kaip šio metodo eilutė. Kelio elementams atskirti galime naudoti ir pasvirąjį, /
ir pasvirąjį brūkšnį .
Naudojant pabraukimo brūkšnį, saugiau naudoti pabėgimo seką.
>>> os.chdir('C:\Python33') >>> print(os.getcwd()) C:Python33
Pateikite katalogų ir failų sąrašą
Visus kataloge esančius failus ir pakatalogius galima gauti naudojant šį listdir()
metodą.
Šis metodas patenka į kelią ir pateikia to kelio pakatalogių ir failų sąrašą. Jei kelias nenurodytas, jis grąžina pakatalogių ir failų sąrašą iš dabartinio darbo katalogo.
>>> 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')
Naujo katalogo kūrimas
Naudodami mkdir()
metodą galime sukurti naują katalogą .
Šis metodas patenka į naujo katalogo kelią. Jei nenurodytas visas kelias, naujas katalogas sukuriamas dabartiniame darbo kataloge.
>>> os.mkdir('test') >>> os.listdir() ('test')
Katalogo ar failo pervadinimas
rename()
Metodas gali pervadinti katalogą ar failą.
Pervadinant bet kurį katalogą ar failą, rename()
metodas apima du pagrindinius argumentus: senąjį vardą kaip pirmąjį argumentą ir naują vardą kaip antrąjį argumentą.
>>> os.listdir() ('test') >>> os.rename('test','new_one') >>> os.listdir() ('new_one')
Katalogo ar failo šalinimas
Failą galima pašalinti (ištrinti) naudojant šį remove()
metodą.
Panašiai rmdir()
metodas pašalina tuščią katalogą.
>>> os.listdir() ('new_one', 'old.txt') >>> os.remove('old.txt') >>> os.listdir() ('new_one') >>> os.rmdir('new_one') >>> os.listdir() ()
Pastaba : rmdir()
metodas gali pašalinti tik tuščius katalogus.
Norėdami pašalinti ne tuščią katalogą, mes galime naudoti rmtree()
metodą shutil
modulio viduje .
>>> 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() ()