Понимание цикла с xlwt - PullRequest
       12

Понимание цикла с xlwt

0 голосов
/ 01 октября 2019

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

Пожалуйста, обратитесь к изображению, мне нужен цикл for, чтобы заполнить остальные столбцы, чтобы мне не приходилось набирать 'w_sheet.write (1,2, xlwt.Formula (')A2-B2 '))' несколько раз

import xlrd
import xlwt
from xlutils.copy import copy

wb = xlrd.open_workbook('Subtract.xls')
rb = copy(rb)
w_sheet = wb.get_sheet(0)
w_sheet.write(1,2,xlwt.Formula('A2-B2'))
w_sheet.write(2,2,xlwt.Formula('A3-B3'))
w_sheet.write(3,2,xlwt.Formula('A4-B4'))
w_sheet.write(4,2,xlwt.Formula('A4-B4'))

wb.save('Subtract.xls')

1 Ответ

0 голосов
/ 01 октября 2019

Привет, попробуй и пойми, что: D

import xlrd
import xlwt
from xlutils.copy import copy
import os

file_path = "test.xls"

rb = xlrd.open_workbook(file_path, formatting_info=True)
wb = copy(rb)
w_sheet = wb.get_sheet(0)
# For each sheet, do operation
for sheet in rb.sheets():
    # For each row in actual sheet, row += 1 at each operation
    for row in range(sheet.nrows - 1):
        # Set index for operation and result
        index = row + 2
        # Create operation
        operation = 'A' + str(index) + '-B' + str(index)
        # Use operation
        w_sheet.write(index-1, 2, xlwt.Formula(operation))
        # Print for you can understand what it do
        print ("index = " + str(index) + "  operation = " + operation)
# Save in file_path.out.xls
wb.save(file_path + '.out' + os.path.splitext(file_path)[-1])
...