Guten Tag,Datei kopieren - für Schleife Python
Ich habe einige Code hier das gemeint ist, etwa 200 csv die aus dem Quellordner in den Zielordner auf dem „Sektor“ Basis zu kopieren, dass sie gehören. Der Sektor, zu dem sie gehören, wird über die "symbolslist" identifiziert, die csvs mit einer Liste von Tickern enthält. Der Code funktioniert für den meist Teil, außer dass es die Liste der Ticker in der endgültigen CSV in Symbolliste nimmt und alle diese CSVs in alle Zielordner kopiert. Grundsätzlich muss ich irgendwie die erste for-Schleife mit den 3 for-Schleifen darunter kombinieren, aber es fällt mir schwer, das zu tun. Alle Kommentare werden sehr geschätzt.
import os,sys,shutil
import glob
import pandas as pd
source_dir = 'C:\TS'
dest_dir = 'C:\TS\Combined\Groups\Cross Asset Class'
#dest_dir = 'C:\TS\Combined\copytest'
base = 'C:\TS\Combined\Groups'
dest_dirlist = (base +'/Cross Asset Class', base+'/Bonds', base + '/Commodities', \
base + '/Countries', base + '/Currencies', base + '/Industry Sectors', base + '/Segments and Styles', \
base + '/Us Sectors', base + '\Volatilities')
print(dest_dirlist)
symbolslist = (base+'/Cross Asset Class.csv', base+'/Bonds.csv',base+'/Commodities.csv' \
,base+'/Currencies.csv', base+'/Industry Sectors.csv', base+'/Segments and Styles.csv', \
base+'/US Sectors.csv')
for file in symbolslist:
print(file)
df_symbolslist = pd.read_csv(file)
print(df_symbolslist)
for ticker_file in glob.glob(os.path.join(source_dir, '*.csv*')):
for ticker in df_symbolslist['Ticker']:
print(ticker)
if ticker in ticker_file:
for path in dest_dirlist:
shutil.copy(ticker_file, path)
print(ticker + ' File Copied')
Vielen Dank für Ihre Zeit.
'df_symbolslist = pd.read_csv (Datei)' hält overwritting 'df_symobolslist'. Sie bearbeiten nur die letzte. Ich bin verwirrt über das Format hier ... Wie sehen die CSV-Symbole aus? Wie kodieren sie Sektor und Symbole? – tdelaney
Dies ist, was die symbollist csvs aussehen: http://prntscr.com/en97is – user7669093
Dies ist, was die csvs zu kopieren aussehen. http://prntscr.com/en98d2 – user7669093