Python: добавить строку в конец документа (.xlsx) - PullRequest
0 голосов
/ 13 ноября 2018

Цель: Присоединение строки к документу (.xlsx) с использованием python (3.7).

То, что я хочу добавить в последний ряд Document.xlsx. (разделитель ячеек: "|"):

(Last_Row): [Tom] | [Tablet] | [003332] | [Returned] | [PSEA]

Document.xlsx:

[] [  A  ] | [   B   ] | [   C   ] | [    D   ] | [    E   ]
1: [FIID:] | [Device:] | [Gov_ID:] | [ Status ] | [Project:]
2: [John ] | [Laptop ] | [002435 ] | [Resigned] | [  AWSD  ]
...
+4,000 rows

То, что у меня есть, добавляется из (.csv) документа.

Pulling_Data_CSV.py

import csv

df = pd.read_csv(r"C:\...\Test_Pandas.csv")

with open(r"C:\...\Test_Pandas.csv", "a",newline="") as 
csvfile:
    writer = csv.writer(csvfile)
    writer.writerow(["Tom", "Laptop", "003332", "Returned", "AWSD"])

Что эквивалентно редактированию (.xlsx) документа?

Если это невозможно, как мне преобразовать (.xlsx) в (.csv), добавить строку, а затем преобразовать ее обратно в (.xlsx) документ?

Ответы [ 2 ]

0 голосов
/ 13 ноября 2018

Вот пример использования openpyxl :

import openpyxl

filename = 'C:\\temp\\spreadsheet.xlsx'
wb = openpyxl.load_workbook(filename=filename)
sheet = wb['Sheet1']
new_row = ['column1', 'column2', 'column3']

sheet.append(new_row)
wb.save(filename)
0 голосов
/ 13 ноября 2018

xlsx - сложный формат контейнера, основанный на xml. Вы можете разобрать это самостоятельно, но, скорее всего, вы захотите проверить модуль типа openpyxl и перейти оттуда.

...