Diferència entre revisions de la pàgina «ASIX-M3-UF3-A1»
Línia 66: | Línia 66: | ||
True | True | ||
</source> | </source> | ||
+ | |||
+ | :* '''Eliminar directoris | ||
+ | <source lang=python> | ||
+ | >>> # Importem "os" | ||
+ | ... import os | ||
+ | >>> # Eliminem el subdirectori 'asix' | ||
+ | ... os.rmdir("/home/ramon/Base de dades/grups/asix") | ||
+ | Traceback (most recent call last): | ||
+ | File "<stdin>", line 1, in <module> | ||
+ | OSError: [Errno 39] Directory not empty: '/home/ramon/Base de dades/grups/asix' | ||
+ | >>> # Eliminem el subdirectori 'primer' | ||
+ | ... os.rmdir("/home/ramon/Base de dades/grups/asix/primer") | ||
+ | >>> # Comprovem que s'ha eliminat | ||
+ | ... os.path.exists("/home/ramon/Base de dades/grups/asix/primer") | ||
+ | False | ||
+ | >>> |
Revisió del 12:04, 11 des 2020
Gestió d'arxius i directoris en Python
Els fitxers permeten emmagatzemar dades en memòria permanent. Des de Python podem llegir i escriure fitxers amb algunes instruccions particulars.
Els mòduls "os" i "shutil" permeten realitzar tasques com caviar de directori, crear i eliminar carpetes o arxius,...
Veiem com:
- Canvi de directori
>>> # Importem "os"
... import os
>>> # Directori actual
... os.getcwd()
'/home/ramon/PythonProjects'
>>> # Canvi de directori
>>> os.chdir('/home/ramon/Base de dades')
>>> # Directori actual
... os.getcwd()
'/home/ramon/Base de dades'
- Comprovar l'existència d'un directori
>>> # Importem "os"
... import os
>>> # Comprovar existència d'un directori
... if os.path.exists('/home/ramon/PythonProjects'):
... print("El directori existeix!")
... else:
... print("El directori no existeix!")
...
El directori existeix!
- Obtenir llista de subdirectoris i arxius d'un directori
>>> # Importem "os"
... import os
>>> # Llistat de subdirectoris i arxius
... # Directori actual
... print(os.listdir())
['investigaciones', 'empresa.odb', 'consultar-alumnos.odb', 'Notes.odb']
>>> # Indicant el directori
... print(os.listdir('/home/ramon/PythonProjects'))
['Treballadors.py', 'grafics_1.py', 'Activitat_11.py', 'Calculadora.py', 'prova.py']
- Creació de directoris
>>> # Importem "os"
... import os
>>> # Directori actual
... os.getcwd()
'/home/ramon/Base de dades'
>>> # Creació de tres subdirectoris imbricats a partir del directori actual
... os.makedirs("grups/asix/primer")
>>> # Comprovem l'existència dels subdirectoris
... os.path.exists("/home/ramon/Base de dades/grups/asix/primer")
True
- Eliminar directoris
<source lang=python> >>> # Importem "os" ... import os >>> # Eliminem el subdirectori 'asix' ... os.rmdir("/home/ramon/Base de dades/grups/asix") Traceback (most recent call last):
File "<stdin>", line 1, in <module>
OSError: [Errno 39] Directory not empty: '/home/ramon/Base de dades/grups/asix' >>> # Eliminem el subdirectori 'primer' ... os.rmdir("/home/ramon/Base de dades/grups/asix/primer") >>> # Comprovem que s'ha eliminat ... os.path.exists("/home/ramon/Base de dades/grups/asix/primer") False >>>