Конвертировать список в целое число или число с плавающей точкой - PullRequest
0 голосов
/ 09 июля 2019

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

newList = ['2.0G']

Я хочу, чтобы это преобразовать в

numFloat = 2.0

или

numInt = 2

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

firstVariable = re.findall(r"[-+]?\d*\.\d+|\d+", newList[0])

я должен продолжать вызывать индекс в firstVariable для доступа к 2.0 или 2

1 Ответ

1 голос
/ 09 июля 2019

Это работает?

newList = ['2.0G']
numFloat = ''.join([i for i in newList[0] if i.isdigit() or i == '.'])
print(numFloat)

Приведенный выше код выведет 2.0 на консоль.

Что я здесь делаю, так это то, что я прохожу все пунктыв первом пункте списка, а затем проверяет, является ли его digit или ..Если это не один из них, я перехожу к следующему персонажу.

Обратите внимание, что я делаю newList[0], потому что вы упомянули, что в вашем списке только один элемент.

Пожалуйста, дайте мне знать, если это работает для вас.

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...