Уведомления

Группа в Telegram: @pythonsu

#1 Май 7, 2015 13:05:12

huawei
Зарегистрирован: 2015-05-07
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

import re

import re
path = input('Path: ')
number = re.sub('\d\.', '', path[:3])
number1 = path[3:]
number = number + number1
print(number)

вводные данные: 12. Tony Hawk
вывод: 1 Tony Hawk

Почему не удаляется единица?

Офлайн

#2 Май 7, 2015 14:13:42

giveback
Зарегистрирован: 2015-05-03
Сообщения: 36
Репутация: +  6  -
Профиль   Отправить e-mail  

import re

Потому что в регулярном выражении ты указал что будет только одна цифра.
Правильно будет вот так:

number = re.sub('\d+\.', '', path[:3])

А вообще, если твоя задача состоит в том что нужно убрать цифры и точку из вводимых данных, то можно сделать например так:
path = input('Path: ')
print(path.split('.')[1].strip())

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version