2014-02-11 4 views
0

У меня возникла проблема с тем, что моя программа не может обрабатывать объекты валюты, которые я извлекаю из таблиц Excel. Код работает и делает то, что я хочу, кроме этой ошибки, при изменении валют. Вот ошибка, которая появляется при выполнении кода. Есть ли рекомендации для этого?Денежные объекты изменяются на десятичные числа. Используется экземпляр класса

FutureWarning: объекты валюты скоро будут изменены так, что будет использоваться десятичный символ. (. Комплект PythonCOM future_currency, чтобы получить эти объекты в настоящее время.)

Вот код, который я бегу: значит

import sys, os, win32com.client, glob 
from win32com.client import constants 
xl = Excel_Document() 

headerlist = ['STUDYDES','STUDYDES2','EVENTTYPE','AssessmentSOLUTIONTYPE','AssessmenFDNS-TERMINATION','SOLUTIONTYPE','FDNS-TERMINATION','GROUP','SCENARIO','ProviderOASISReservation','CustomerName','RequestedStart_Date'] 

ListofData = [] 
Data = [] 
counter = 1 
xlslist = glob.glob('*tblFacilityLog*.xls') 



for xls in xlslist: 
    headers = {} 
    sortedvalues = [] 
    output = {} 
    print 'Opening Workbook: ',xls 
    xl.openWorkbook(xls) 

    sheetdata = xl.getSheetData('tblAllFacilityLog') 
    xl.closeWorkbook() 

    for row in sheetdata: 
     sortedvalues = [] 
     for header in headerlist: 
      if header in sheetdata[0]: 
       output[header] = row[sheetdata[0].index(header)] 
      else: 
       output[header] = "'None'" 

     for header in headerlist: 
      sortedvalues.append(output[header]) 

     Data.append(sortedvalues) 

    ListofData.append(Data) 

print 'Building Workbook' 
print len(Data) 
print len(ListofData) 

xl.addWorkbook() 
xl.addWorksheet("tblFacilityLog9") 
xl.selectSheet("tblFacilityLog9") 


beginrow = 1 
lastrow = beginrow + len(Data) 
#xl.pasteData(headerlist, startcol = beginrow, startrow = beginrow, endcol = len(headerlist), endrow = 1) 

for Data in ListofData: 
    xl.pasteData(Data, startcol = 1, startrow = 1, endcol = len(headerlist), endrow = lastrow) 

xl.saveWorkbook("CombinedLog") 
xl.closeWorkbook() 
xl.closeApp() 
+0

Какая часть этого кода имеет дело с валютными объектами? –

+0

Возможно, что он читает из таблицы Excel. – KodyVanRy

+0

use xlrd ... thats my two cents ... если вам не нужно «xlsm» или какой-либо другой тип, кроме 'xls' –

ответ

0

Эта ошибка: если он работает в настоящее время игнорировать предупреждение. Если он не обновит модуль pythoncom, тогда у вас нет проблем. Если вы хотите использовать более новую версию PythonCOM вскоре после этого вы можете попробовать новую функциональность, делая

import pythoncom 
pythoncom.__future_currency__ = True # I guess it is True 

Это мое понимание ошибки.

 Смежные вопросы

  • Нет связанных вопросов^_^