Могу я узнать другой подход к извлечению int из строки.

str_int='S1'

int ( "".join ( [xx for xx in list ( str_int) if xx.isdigit ()] ) )

Я считаю, что мой нынешний подход - излишний. Если это сообщение будет сочтено дублированным, пожалуйста, свяжите меня с соответствующим OP.

2
balandongiv 16 Фев 2021 в 13:25

2 ответа

Лучший ответ

"проблема состоит из более чем одной цифры (например, S1 S11 S111 и т. д.)"

Просто удалите первый символ и преобразуйте остальные в целое число: int(s[1:])

1
kol 16 Фев 2021 в 10:38

Используйте Regex:

import re
str_int='S1'
my_digits = re.findall(r'\d+', str_int)
print(my_digits)


## output
['1']

0
Hossein Heydari 16 Фев 2021 в 10:34
66222601