У меня есть exelfile, который я хочу преобразовать, но тип по умолчанию для чисел - float. Как я могу изменить его, так что xlwings явно использует строки, а не числа?Как я могу прочитать каждое поле в виде строки в xlwings?
Это, как я прочитал значение поля: xw.Range(sheet, fieldname).value
Проблема заключается в том, что номера, как 40
преобразуются в 40.0
если я создаю строку из этого. Я разбиваю его на: str(xw.Range(sheetFronius, fieldname).value).rstrip('0').rstrip('.')
, но это не очень полезно и приводит к ошибкам, потому что иногда одно и то же поле может содержать как число, так и строку. (Не в то же время, значение выбирается из списка)
Вы можете упаковать преобразование строки в параметры: 'xw.Range (sheet, fieldname) .options (numbers = lambda x: str (int (x))). Value' –
Спасибо за внимание, но могу 't использовать его таким образом, потому что в этом поле также может быть строка. – simonides
@simonides выражение lambda применяется только к номерам, строки остаются нетронутыми. –