我不能保持在 1 秒内

I can not keep within 1 second

我的代码适合 1014,而不是 1000 毫秒 请帮我优化

条件:

在 Excel 办公程序(或其类似物)中,您始终可以将 table 保存为 csv 格式。 假设此功能已损坏。 使用适当的库编写您自己的 excel -> csv 转码器。 您的程序应该打开包含任意数据的 data.xlsx 文件并将结果保存在 output.csv

输入格式: 不是

输出格式: 在 output.csv 文件中,以 csv 格式从源文件中输出数据。 分隔符 - "semicolon" 引号 - 引号

备注: 使用 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)

不能省略

link 测试 xlsx 文件: https://yadi.sk/i/bF-5kOMTuyuMMg

浮动转换可以稍微快一些:

w = map(lambda x: float(x) if type(x) is int else x, row)