2017-10-16 13 views
-1

たとえば、n = 3のようにこの関数を実行しようとすると、elemが結果に正しく追加されないのはなぜですか?新しい結果リストとして印刷を続けます。これは私のisPal関数のメッセージです。リストに追加する

答えて

3

forループの最初の行は、変数resultを新しいリストに置き換えます。

result= [] 

代わりにforループの前に実行する必要があります。

+0

これは今、もっと感謝します、ありがとう! – Miraclefruit

+0

問題はありません - それがあなたの問題を解決した場合は、この回答にチェックを入れることを忘れないでください:) – Shadow

2

問題は毎回結果を再定義することです。

def silly(n): 
    """requires: n is an int > 0 
    Gets n inputs from user 
    Prints 'Yes' if the inputs are a palindrome; 'No' otherwise""" 
    assert type(n) == int and n > 0 
    result= [] 
    for i in range(n): 
     elem = input('Enter something: ') 
     result.append(elem) 
    print(result) 
3

スワップこれらの行:

result = [] 
for i in range(n): 
    # ... 

それとも、すべての反復でresultを再割り当てされます。

関連する問題