+ 1
Проверка телефонных номеров. Не работает.
Проверяю. Всё работает, а программа пишет что ошибка. import re #введите код сюда number=input() patern=r'^(^1|^8|^9)([0-9]{7,7})
#x27; if re.search(patern,number): print('Valid') else: print('No valid')10 Réponses
+ 11
Скопировал и запустил ваш код. Всё работает без программных ошибок.
Ввёл 25555555 — ответ "No valid".
Ввёл 15555566 — ответ "Valid".
Какое у вас устройство?
+ 11
Речь про урок в Sololearn? Какой курс и номер урока?
+ 11
Попробуйте следующий код. Он короче и проходит тесты:
if re.match(r"^[189]\d{7}quot;, input()):
print('Valid')
else:
print('Invalid')
+ 1
Да, а почему-то в уроке не выдаёт её как правильную.
+ 1
В качестве вводных данных вам даны числа. Вы должны проверить, являются ли эти числа действующим номером телефона.
Действующий номер телефона состоит ровно из 8 чисел и начинается с 1, 8 или 9.
Выведите в результат «Действующий», если номер работает, в противном случае - «Не действующий».
Пример вводных данных
81239870
Пример результата
Valid
+ 1
Да. Python core. Регулярные выражения.
+ 1
Спасибо.
+ 1
И нашёл ошибку. Надо было мне написать"Invalid" вместо "No valid".
+ 1
Так красивее и короче
pattern = r"[189]([0-9]{7}$)"
if re.match(pattern,input()):
print("Valid")
else:
print("Invalid")
0
import re
#введите код сюда
num = input()
pattern = r"[1|8|9](\d{7}$)"
if re.search(pattern,num):
print("Valid")
else:
print("Invalid")
Попробуйте этот код, поможет