Como ler em um arquivo e saída do arquivo com o mesmo nome do arquivo para outra subpasta usando pathlib.Path (). Glob ()

Leockl:

Como faço para ler em arquivos e de saída os arquivos com os mesmos nomes de arquivos em outra subpasta usando pathlib.Path().glob()?

Meu diretório parecerá com isso:

New Folder 1

-> p1_a.csv

-> p1_b.csv

-> New Folder 2

Código:

from pathlib import Path
import pandas as pd

file_path = r'C:\Users\HP\Desktop\New Folder 1'

for fle in Path(file_path).glob('p1_*.csv'):
   df = pd.read_csv(fle)

   # do something with df

   df.to_excel(file_path + r'\New Folder 2' + 'p1_*.csv' + '_new.csv')

O bit do código que eu não estou certo sobre é 'p1_*.csv'.

Depois que o código é executado, o meu diretório deve ficar assim:

New Folder 1

-> p1_a.csv

-> p1_b.csv

-> New Folder 2

-> -> p1_a.csv_new.csv

-> -> p1_b.csv_new.csv

O que eu preciso para ter no 'p1_*.csv'bit para que os novos arquivos copiados em New Folder 2 tem parte dos mesmos nomes de arquivo como o arquivo original?

Muito obrigado antecipadamente.

Shubham Sharma:

Tente isto:

import os
import pandas as pd
from pathlib import Path

source_dir = r'C:/Users/HP/Desktop/New Folder 1'

for path in Path(source_dir).glob('p1_*.csv'):
   df = pd.read_csv(path)
   # TODO: do something with df

   filename = os.path.basename(path) #--> gets the file name
   dest_path = os.path.join(source_dir, "New Folder 2", f"{filename}_new.csv")

   df.to_csv(dest_path)

Agora sua estrutura de diretório será algo como:

New Folder 1
├── New Folder 2
│   ├── p1_a.csv_new.csv
│   └── p1_b.csv_new.csv
├── p1_a.csv
└── p1_b.csv

Acho que você gosta

Origin http://10.200.1.11:23101/article/api/json?id=387248&siteId=1
Recomendado
Clasificación