2016-04-07 22 views
0

Her gün bir program çalıştırıyorum ve C sürücüsündeki bir klasöre .csv'nin yazılmasını istiyorum. Bir sebepten dolayı, klasör oluşturabilir ve 1 dosya yazabilirim, ancak başkaları yazılmayabilirim. Herhangi bir hata almamak, sadece bu klasöre başka hiçbir dosya yazılmıyor. İşte kod. TeşekkürBelirli bir dosya yoluna günlük .csv nasıl yazılır

Kodu:

CSVdir = r"C:\Users\Maurice\Desktop\Python\New_Project\OptionsData\\OptionsData-{}.csv" 
realCSVdir = os.path.realpath(CSVdir) 

if not os.path.exists(CSVdir): 
    os.makedirs(CSVdir) 
    str1 = "\n".join(data) 
    now = datetime.datetime.now() #+ datetime.timedelta(days=1) 
    now_str = now.strftime("%Y-%m-%d") 

    new_file_name = os.path.join(realCSVdir,'OptionsData-{}.csv'.format(now_str)) 
    new_file = open(new_file_name, 'wb') 

    for item in money_list: 
     if len(item) != 0 : 
      for other_item in item : 
       new_file.write(other_item + str1 + new_file) 

       new_file.close() 

      print("Eureka!") 

cevap

2
CSVdir = r"C:\Users\Maurice\Desktop\Python\New_Project\OptionsData\\OptionsData-{}.csv" 

olmalıdır

CSVdir = r"C:\Users\Maurice\Desktop\Python\New_Project\OptionsData" 

if not os.path.exists(CSVdir): 
    os.makedirs(CSVdir) 

# The following lines should be out of if statement. 

str1 = "\n".join(data) 
now = datetime.datetime.now() #+ datetime.timedelta(days=1) 
now_str = now.strftime("%Y-%m-%d") 

new_file_name = os.path.join(realCSVdir,'OptionsData-{}.csv'.format(now_str)) 
new_file = open(new_file_name, 'wb') 


for item in money_list: 
    if len(item) != 0 : 
     for other_item in item : 
      new_file.write(other_item + str1 + new_file) 

      new_file.close() 

     print("Eureka!") 
+0

i değişiklikleri yapılmış ama yine Doesent çalışır. bir klasör oluşturur ve gün içinde dosyanın içine koyar, ancak tarihi yarına değiştirdiğimde (şimdi = datetime.datetime.now() + datetime.timedelta (gün = 1)) klasöre sonraki dosyayı eklemez. ... – RageAgainstheMachine

+0

Bu, birden fazla hata yaptığınız anlamına gelir. – Hun

+0

onun bir hata olduğunu söylemiyor ... – RageAgainstheMachine