2017-06-28 11 views
-3

N個のユーザ提供文字列を含むリストが与えられた場合、タスクは各文字列が回文かどうかを出力します。 (PYTHON)リストとループのチェック対象の文字列

私はすでにこのコードを持っています。そして私にトレースバック(最新の呼び出しの最後)」というエラーを伝える続ける:。

File "C:\Users\jpsam\Desktop\fuckmylife.py", line 20, in <module> 
    palindrome_checker(q) 
    File "C:\Users\jpsam\Desktop\fuckmylife.py", line 4, in palindrome_checker 
    while y <len(inputlist()): 
TypeError: 'list' object is not callable" 

def palindrome_checker(q): 

    y = 0 
    while y <len(inputlist()): 
     if inputlist == inputlist[::-1]: 
      print(q, " is a panlindrome") 
      len(inputlist()-1) 
     else: 
      print (q, "not a palindrome") 
      len(inputlist()-1) 
     return (q) 

x = 1 
inputlist = [] 
while x == 1: 
    q = input("Input string: ") 
    inputlist.append(q) 
    x = int(input("Do you want to add more? [1]YES [0]NO ====>")) 

palindrome_checker(q) 
+2

を*正確な*エラーメッセージとトレースバックを貼り付けてください。 "私にエラーを伝える"有用なエラーメッセージではありません! –

+0

トレースバック(最新の呼び出しの最後): ファイル "C:\ Users \ユーザーjpsam \デスクトップ\のfuckmylife.py"、9行目は、 Sに= inputlist() はTypeError: 'リスト' オブジェクトが –

+0

編集してください呼び出すことはできませんあなたの質問にすべての関連情報を含めるには、見つけにくく読みにくいコメントには入れないでください。 –

答えて

0

まず、あなたのインデントが間違っているあなたがリストに従っているので、

第二に、声明len(inputlist()-1)inputlist、例外を与えているが。、関数としてinputlistを呼び出すために通訳を頼む()、と残念ながら、私はこの文が実現することになっているものは考えていません(ないifブランチ内の他のものを - あなたのコードはあまりにもリファクタリングすることができる)。

Aより単純なp次のようにalindrome機能が読むかもしれない:

def palindrome(s): 
    return s == s[::-1] 

を次のようにあなたがそれを使用する可能性があります:

if palindrome("able I was ere I saw elba"): 
    print("The phrase is palindromic") 
関連する問題