0

私はExcelファイルにいくつかのデータを持っていました。ファイルを.csvファイルに変更し、ファイルを読み取るためのpythonコードを書き込もうとしました。

しかし、予測できない出力が得られます。私のコードは次のようなものです:

INPUT_DIR = os.path.join(os.getcwd(),"Input")
OUTPUT_DIR = os.path.join(os.getcwd(),"Output")
print INPUT_DIR, OUTPUT_DIR 

def read_csv():    
    files = os.listdir(INPUT_DIR)
    for file in files:
        file_full_name = os.path.join(INPUT_DIR,file)
        print file_full_name
        f = open(file_full_name,'r')
        for line in f.readlines():
            print "Line: ", line

def create_sql_file():
    print "Hi"


if __name__ == '__main__':
    read_csv()
    create_sql_file()

これにより、非常に独特な出力が得られます。

 C:\calcWorkspace\13.1.1.0\PythonTest\src\Input C:\calcWorkspace\13.1.1.0\PythonTest\src\Output
C:\calcWorkspace\13.1.1.0\PythonTest\src\Input\Country Risk System Priority Data_01232013 - Copy.csv
Line:  PK**

誰かがこの問題を知っていますか?

4

1 に答える 1

11

Save Asまず、Excel のメニューを使用して、ファイルを Excel から csv に変換したことを確認します。拡張子を変更するだけでは機能しません。表示されている出力は、Excel のネイティブ形式のデータです。

ファイルを変換したら、csvモジュールを使用します。

import csv

for filename in os.listdir(INPUT_DIR):
   with open(os.path.join(INPUT_DIR,filename), dialect='excel-tab') as infile:
      reader = csv.reader(infile)
      for row in reader:
          print row

生の Excel ファイルを読みたい場合は、xlrdモジュールを使用します。これは、Excel ファイルを読み取る方法を示すサンプルです。

于 2013-02-06T09:00:16.223 に答える