Как скопировать строку листа Excel на другой лист с помощью Python

Я хочу сравнить значение данного столбца в каждой строке с другим значением, и если значения равны, я хочу скопировать всю строку в другую электронную таблицу.

Как я могу сделать это с помощью Python?

СПАСИБО!

2 ответа

Решение

Пожалуйста, обратитесь к библиотеке Python Excel xlrd(для чтения Excel) /xlwt(для написания Excel) http://www.python-excel.org/

например (чтение)( из этого):

import xlrd

fname = "sample.xls"
bk = xlrd.open_workbook(fname)
shxrange = range(bk.nsheets)
try:
    sh = bk.sheet_by_name("Sheet1")
except:
    print "no sheet in %s named Sheet1" % fname
    return None
nrows = sh.nrows
ncols = sh.ncols
print "nrows %d, ncols %d" % (nrows,ncols)

cell_value = sh.cell_value(1,1)
print cell_value

row_list = []
for i in range(1,nrows):
    row_data = sh.row_values(i)
    row_list.append(row_data)

если вы работаете с Excel 2007, то используйте openpyxl: http://packages.python.org/openpyxl/

Для файлов "xls" можно использовать пакет xlutils. В настоящее время невозможно копировать объекты между книгами в openpyxl из-за структуры формата Excel: существует множество зависимостей повсюду, которыми нужно управлять. Поэтому ответственность за копирование всего необходимого вручную лежит на клиентском коде. Если позволяет время, мы можем попытаться перенести некоторые функции xlutils на openpyxl.

Другие вопросы по тегам