Чтение и запись в определенную ячейку файла - PullRequest
0 голосов
/ 25 октября 2018

Я пишу программу, в которой она читает из листа Excel, она случайным образом выбирает строку (100 строк, 2 столбца).

with open("file1.csv") as f:
     reader = csv.reader(f)
     for index, row in enumerate(reader):
         if index == 0:
            chosen_row = row
         else:
            r = random.randint(0, index)
            if r == 0:
                chosen_row = row

Я хочу записать в определенную строку / столбец.Например;если он случайным образом выбирает строку 4, столбец А. Он записывает ответ в строку 4, столбец B.

Вот что у меня есть (это неправильно, и оно не записывает в конкретную ячейку)

    x = input(chosen_row[0])
    srcfile = openpyxl.load_workbook("file1.csv",read_only=False, 
    keep_vba= True)
    sheetname = srcfile.get_sheet_by_name('Sheet1')
    sheetname.cell(row=chosen_index,column=2).value = x 
    srcfile.save('file1.csv')

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

1 Ответ

0 голосов
/ 25 октября 2018

Из примера кода на openpyxl:

from openpyxl import Workbook
wb = Workbook()

# grab the active worksheet
ws = wb.active

# Data can be assigned directly to cells
ws['A1'] = 42

Учитывая это, вы сможете увидеть присвоенное значение данной ячейки с помощью

ws['A1']

и назначить случайное другое с помощью:

ws['A1']=ws[random[row]+random[cell]]

ramdom [строка / ячейка] является псевдокодом.Вы бы выбрали способ определения случайных данных [строка / ячейка].

Не забудьте сохранить, кстати.

# Save the file
wb.save("sample.xlsx")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...