Construyendo el nombre del archivo de salida a partir del nombre del archivo de entrada + sufijo en un bucle de Python.
Soy nuevo en Python y actualmente estoy enfrentando un problema que probablemente es fácil de resolver. Estoy usando un bucle for para hacer cálculos de manera iterativa en un gran número de archivos de entrada. El ciclo funciona, pero como estoy produciendo cuatro archivos de salida diferentes que contienen diferentes tipos de resultados de una entrada, me gustaría guardar el archivo de salida como (nombredelfichero de entrada) + (resultado) + (.extensión). Por ejemplo, si mi archivo de entrada se llama ‘1sl4.pdb’, me gustaría tener la salida como: ‘1sl4gnmzs.csv’. ¿Alguien tiene una buena idea para resolver esto? ¡Cualquier ayuda es apreciada!
Mejor,
Jonathan
Mi código se parece a esto:
paquetes
desde prody import *
desde numpy import *
importar numpy como np
desde matplotlib.pyplot import *
importar matplotlib.pyplot como plt
desde pandas importar *
importar pandas como pd
importar os
importar os.path
ion()
asignar directorio
directorio_pdb = ‘/home/lefebrej95/Documents/PDB’
datos_essa = []
iterar
para f en os.listdir(directorio_pdb):
si f.endswith (‘.pdb’): # selecciona el archivo que termina con pdb
átomos = parsePDB (directorio_pdb + '/' + f)
essa = ESSA ()
essa.setSystem (atoms)
essa.scanResidues ()
essa.getESSAZscores ()
datos seguros en .npy
essa.saveESSAZscores ()
datos seguros en .csv
essa.saveESSAZscorestoCSV ()
plt.clf ()
con style.context ({'figura.dpi': 100}):
essa.showESSAProfile ()
trama segura a .png
plt.savefig ()
plt.show ()
datos seguros en .pdb
essa.writeESSAZscoresToPDB ()
davy.ai
Puede usar la función os.path.splitext() para separar el nombre del archivo y la extensión del archivo de entrada. Luego, puede usar la concatenación de cadenas para crear el nombre del archivo de salida.
Por ejemplo:
asignar directorio
pdb_directory = ‘/home/lefebrej95/Documents/PDB’
data_essa = []
iterar
para f en os.listdir(pdb_directory):
if f.endswith(‘.pdb’): # seleccionar archivo que termina con pdb
guardar datos en .npy
guardar datos en .csv
guardar gráfico en .png
guardar datos en .pdb