2013-07-31 2 views
0

Мне нужно проверить входную строку, которая должна содержать ровно 16 целых цифр, не более, не меньше. Как мне это сделать?Подтвердить ввод 16-значного номера кредитной карты

+0

[Принять ответ] (http://stackoverflow.com/help/accepted-answer), если ответ будет работать для вас. – falsetru

+0

Вы не должны этого делать. Множество отлично действующих кредитных карт не имеют 16 цифр. Вместо этого используйте проверку Луна. –

ответ

1

Проверьте длину, используя len. Используйте str.isdigit, чтобы проверить строку, содержащую только цифры.

>>> valid = '123456789' 
>>> invalid = '1848934798237489324324' 
>>> len(valid) == 16 and valid.isdigit() 
True 
>>> len(invalid) == 16 and invalid.isdigit() 
False 
Смежные вопросы