Я 99% пути там ...Написать один столбец файла XLSX в CSV с помощью питона xlrd
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()
с помощью wr.writerow(sh.row_values(rownum))
я могу написать целую строку из файла Excel в CSV, но есть как 150 столбцов, и мне нужен только один из них. Итак, я хватаю один столбец, который я хочу использовать part_number = sh.cell(rownum,1)
, но я не могу заставить синтаксис правильно просто написать эту переменную в файл CSV.
Вот отслеживающий:
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
Что случилось с тем, что у вас есть в настоящее время? Если вы столкнулись с ошибками, добавьте эти ошибки в свой вопрос. Кроме того, какой столбец (первый или второй) вы пытаетесь получить? – Abdou
Что-то примечание: один столбец csv-файл (или любой другой разделитель) - это просто текстовый файл. Нет необходимости в цитировании. Никакие разделители не будут использоваться. (Ну, одно предостережение. Это правда, если у вас нет многострочных строк.) –
@StevenRumbalski Это хороший момент ... Я планировал добавить второе поле, но у меня может быть ADD, прежде чем я тестирую вывод ... –