En este artículo, discutiremos el método para leer archivos del directorio hermano en Python. Primero, cree dos carpetas en una carpeta raíz, y una carpeta contendrá el archivo python y la otra contendrá el archivo que se va a leer. A continuación se muestra el árbol del diccionario:
Árbol de directorios:
root : | |__Sibling_1: | \__demo.py | |__Sibling_2: | \__file.txt
Aquí Sibling_1 y Sibling_2 son hermanos. Vamos a discutir el método para leer datos de file.text en demo.py que existe en la carpeta hermana. Usaremos el módulo os para cambiar el directorio de trabajo actual a un directorio que tenga file.txt.
archivo.txt:
¡Estos son los datos que deben leerse!
Los pasos serán los siguientes:
1. Importar el módulo os y almacenar la ruta de demo.py en una variable llamada ruta. El método os.path.realpath(__file__) dará la ruta donde existe el archivo demo.py que será ‘D:\root\Sibling_1\demo.py’.
Python
# importing os module import os # gives the path of demo.py path = os.path.realpath(__file__) print(path)
Producción:
'D:\root\Sibling_1\demo.py'
2. Obtener el directorio usando os.path.dirname() donde existe demo.py y almacenarlo en la variable dir.
Python
import os # gives the path of demo.py path = os.path.realpath(__file__) # gives the directory where demo.py # exists dir = os.path.dirname(path) print(dir)
Producción:
'D:\root\Sibling_1'
3. Reemplazar el nombre de la carpeta en la string dir de Sibling_1 a Sibling_2, de modo que ahora dir tenga el directorio ‘D:\root\Sibling_2’ donde existe file.txt. Ahora usaremos el método os.chdir() para cambiar el directorio de trabajo del directorio actual al directorio almacenado en dir.
Python
import os path = os.path.realpath(__file__) dir = os.path.dirname(path) # replaces folder name of Sibling_1 to # Sibling_2 in directory dir = dir.replace('Sibling_1', 'Sibling_2') # changes the current directory to Sibling_2 # folder os.chdir(dir) print(dir)
Producción:
'D:\root\Sibling_2'
4. Ahora que el directorio se cambia a una carpeta hermana, podemos usar el método open() para abrir y leer directamente cualquier archivo en la carpeta.
Python
# importing os module import os # gives the path of demo.py path = os.path.realpath(__file__) # gives the directory where demo.py # exists dir = os.path.dirname(path) # replaces folder name of Sibling_1 to # Sibling_2 in directory dir = dir.replace('Sibling_1', 'Sibling_2') # changes the current directory to # Sibling_2 folder os.chdir(dir) # opening file.txt which is to read f = open('file.txt') # reading data from file.txt and storing # it in data data = f.read() # printing data print(data)
Producción:
This is the data that need to be read!!
Publicación traducida automáticamente
Artículo escrito por yashgupta0524 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA