使用Spyder Python 3.6此代碼不會執行,表示ispal方法未定義。但是,當我運行它並首先放入一個整數(比如我的字符串輸入= 0)時,它會在運行之後識別該方法。似乎我必須先通過一個分支,而不是首先調用該方法。感謝批評。Python代碼不會在第一次運行時執行
s = input('enter a string: ')
s1 = s
s1 = s1.lower()
s1 = s1.replace(',', '')
s1 = s1.replace(' ', '')
if s1.isalpha():
if ispal(s1) == True:
print(s,' is a palindrome')
else:
print(s,' is not a palindrome')
else:
print('you entered illegal chars')
def ispal(s1):
if len(s1) <= 1:
return True
else:
#if the first and last char are the same
#and if all
return s1[0] == s1[-1] and ispal(s1[1:])
您在調用它之後定義了該功能 – TGKL
感謝您的幫助! – femmebot