Вместо 1000 мс мой код соответствует 1014. Пожалуйста, помогите мне с оптимизацией
Условие:
В офисной программе Excel (или ее аналогов), вы всегда можете сохранить таблицу в формате csv. Представьте, что эта функциональность нарушена. Напишите свой собственный транскодер excel -> csv, используя соответствующие библиотеки. Ваша программа должна открыть файл data.xlsx, содержащий произвольные данные, и сохранить результат в файле output.csv
Формат ввода: Не
Формат вывода : В файле output.csv выведите данные из исходного файла в формате csv. Разделитель - «точка с запятой» Кавычки - кавычки
Примечания: Используйте модуль CSV
Мой код
import csv
import openpyxl
from openpyxl import Workbook
wb = openpyxl.load_workbook(filename='data.xlsx', data_only=True)
with open('output.csv', 'w', newline='', encoding="utf8") as csvfile:
writer = csv.writer(csvfile, delimiter=';', quotechar='"')
ws = wb.active
rows = []
for row in ws.values:
w = map(lambda x: float(x) if x is not None and type(x) != str else x, row)
rows.append(w)
writer.writerows(rows)
вам нужно оптимизировать код, но чтобы все функциональные возможности оставались
Примеры тестов:
Примечание: эти строки кода отвечают за сохранение десятичных разрядов чисел с плавающей запятой, преобразованных в целые числа для записи в файл
w = map(lambda x: float(x) if x is not None and type(x) != str else x, row)
их нельзя опускать
ссылка на тестовый файл xlsx : https://yadi.sk/i/bF-5kOMTuyuMMg