をxlrdのpythonを使用してCSVファイルに...私はそこに道の99%だ
wr.writerow(sh.row_values(rownum))
を使用して
def xl_to_csv(xl_file):
wb = xlrd.open_workbook(xl_file)
sh = wb.sheet_by_index(0)
output = 'output.csv'
op = open(output, 'wb')
wr = csv.writer(op, quoting=csv.QUOTE_ALL)
for rownum in range(sh.nrows):
part_number = sh.cell(rownum,1)
#wr.writerow(sh.row_values(rownum)) #writes entire row
wr.writerow(part_number)
op.close()
をXLSXファイルの単一の列を書く私は、ExcelファイルからCSVへの行全体を書き込むことができますしかし150列のようなものがあり、私はそれらのうちの1つだけを必要とします。だから、私はpart_number = sh.cell(rownum,1)
を使ってほしい1つの列をつかんでいますが、この変数をCSVファイルに書き出すのに正しい構文を得ることができません。ここで
は、トレースバックです:引数がリストのようなオブジェクトでなければなりません
wr.writerow([part_number.value])
:
Traceback (most recent call last):
File "test.py", line 61, in <module>
xl_to_csv(latest_file)
File "test.py", line 32, in xl_to_csv
wr.writerow(part_number)
_csv.Error: sequence expected
あなたは現在何を持っていますか?エラーが発生した場合は、そのエラーを質問に追加してください。また、どの列(1番目または2番目)を取得しようとしていますか? – Abdou
注意事項:単一の列のcsvファイル(またはその他の区切り文字)は単なるテキストファイルです。引用は必要ありません。デリミタは使用されません。 –
@StevenRumbalskiそれは良い点です...私は2番目のフィールドを追加するつもりですが、出力をテストする前に最初のフィールドを追加している可能性があります(複数行の文字列がない限り、これは真です)。 ... –