以下是我迄今爲止的工作,雖然它沒有正常工作。任何改變建議表示讚賞。Python程序來驗證輸入的電話號碼是否正確
def get_telephone_number(areacode, prefix, number):
set1 = areacode[0:3]
set2 = prefix[0:3]
set3 = number[-3:]
telephone_number=set1 + '-' + set2 + '-' + set3
return get_telephone_number
def valid_telephone_number(telephone_number):
correct_length = False
proper_hyphens = False
has_digits = False
if len(telephone_number) == 12:
correct_length = True
for ch in telephone_number:
if ch [3, 7] == '-':
proper_hypens = True
if ch.isdigit():
has_digits = True
if correct_length and proper_hypens and has_digits:
is_valid = True
else:
is_valid = False
return is_valid
###########
import telephone_number
def main():
phone_number = input('Enter your telephone number: ')
while not phone_number.valid_telephone_number(telephone_number):
print('That number is invalid.')
phone_number = input('Enter your telephone number: ')
print('That is a valid entry.')
main()
你可能會更好過使用谷歌的['libphonenumber'](https://github.com/ googlei18n/libphonenumber)比嘗試自己做這個。還有一個Python端口:['python-phonenumbers'](https://github.com/daviddrysdale/python-phonenumbers) – 2015-04-05 00:03:56
它是操作字符串的Python任務的一部分,所以我現在僅限於此。感謝您的意見並花時間發表評論。 – Treece 2015-04-05 14:12:21