def isPhoneNumber(text):
if len(text) != 12:
return False
for i in range(0, 3):
if not text[i].isdecimal():
return False
if text[3] != '-' or text[3] != '':
return False
for i in range(4, 7):
if not text[i].isdecimal():
return False
if text[7] != '-':
return False
for i in range(8, 12):
if not text[i].isdecimal():
return False
return True
print('444-444-4444 is a phone number: ')
print(isPhoneNumber('473-927-2847'))
print('Moshi moshi is a phone number:')
print(isPhoneNumber('Moshi moshi'))
print('8478473948 is a phone number:')
print(isPhoneNumber('847847-3948'))
現在他們都返回false。怎麼來的?爲什麼第三個「if」語句沒有返回適當的值?它應該對第一個函數調用和第三個函數調用都返回true。我將如何去做這個工作?檢查數字0到7之間的非空格,並檢查連字符,如果未找到,則返回false。未返回預期結果python
縮進似乎關閉了錯誤的空間? –