2016-11-28 21 views
-2

助けてくれてありがとう。 は、私は次のコードに問題が午前:ユーザーが入力された例えばevalを使用してユーザー入力をリストに入れるにはどうすればよいですか?

digitsList = input("Enter any list of 0 or more digits in the form [digit, digit, ...]:") 

if element == int(list[index]): 
    index += 1 
    return True 

else: 
    index += 1 
    return False 

を:[1,2,3]

その後、私は次のエラーを取得する:

ValueError: invalid literal for int() with base 10: '[' 

は、私は私ができることはすべてを試みたが、されていませんそれを解決することができます。

+0

申し訳ありません私は初心者ですが、問題はユーザーが[桁、桁、...]の形式で入力するようにしたいのですが、acutalリストに "["または "]" 0 == int(digitList [0])かどうかを知りたい場合、digitList [0]が "[" "["または "]"がリストに追加されないようにする方法はありますか? – litterbeach

答えて

0

あなたのコードをあなたが投稿したのと同じように読むのは少し難しいですが、ユーザー入力は.append機能を使ってリストに入れることができます。例えば

list = digitsList.append("what the user inputs goes here") 
+0

申し訳ありません私は初心者です。問題はユーザーが[桁、桁、...]の形式で入力したいのですが、私は0 == int(digitList [0])かどうかを知りたいので、acutalリストの "["または "]"は欲しくなく、digitList [0]が "[" "["または "]"がリストに追加されないようにする方法はありますか? – litterbeach

0

あなたは間違った入力を与えています。ユーザーが入力した入力は、1 2 3のように1行で入力する必要があります。あなたが入力としてリストを取ることになっている場合は、次の操作を行います。

digitslist = map(int, raw_input("Enter any list of 0 or more digits in the form [digit, digit, ...]:").split()) 

入力:1 2 3

出力:input()機能は以下のように一つだけintfloatまたはstring entered with quotesを取ることになっている[1, 2, 3]

入力。

+0

あなたの助けてくれてありがとう、自分のクラスの宿題をしているので、次のコードの制限があります。私が使用できるPython関数は、input()eval()とlen() – litterbeach

+0

です。ユーザに[digit、digit ...]という形式で入力するようにお願いします。 – litterbeach

+0

@litterbeach:もしあなたが'python 3.x'で作業している場合、' eval(input()) 'を実行し、' python 2.7'の場合は 'eval(raw_input())'と入力します。 、3]。 – Jarvis

関連する問題