2017-12-19 10 views
0

これを私のpython 3にコーディングし、毎回それを実行しようとしています。もちろん、それは機能を果たしますが、私が実行したいものは実行しません。それはあなたが "courses_list"であるリストに追加したいと思うコースをいくつか入れてもらうように頼みますが、問題は別の入力(コース)を入力するたびにコースリスト内のものだけを置き換えます。それは私が望むようにそれを保存しませんでした。pythonのリストに入力を保存する方法3

def courses(): 
    courses_list = [] 
    coursesInput = input("Insert the course you want") 
    courses_list.insert(0, coursesInput) 
    print (courses_list) 
    courses() 

courses() 

結果:実施例Iは、(CompScieと物理学)を入力

CompSci 
['CompScie'] 
Physics 
['Physics'] 

ので、どのように私は毎回、それは別のコースを与えるために、再び私に尋ねることcourses_listの結果を保存することができ、それはにそれを挿入しますコースリスト。私は起こるしたい何

:あなたは関数の内部でリストを作っているので、

CompScie 
['CompScie'] 
Physics 
['Physics', 'CompScie']  
+3

関数が呼び出されるたびに新しいリストを作成したくない場合は、関数が呼び出されるたびに新しいリストを作成するのはなぜですか? – jonrsharpe

答えて

0

この問題が発生しました。したがって、関数が呼び出されるたびに、新しいリストが作成され、入力が追加されます。あなたがする必要があるのは、関数の範囲外のリストを作成し、引数を使ってそれを変更することです。

def courses(c_list): 
    coursesInput = input("Insert the course you want") 
    c_list.insert(0, coursesInput) 
    print (c_list) 
    courses(c_list) 

courses_list = [] 
courses(course_list) 
関連する問題