list型の扱いを練習するためにinput関数と組み合わせたプログラムを作っています。
こんにちは。
上の通りです。
ゲームが好きなので、入力したキル数を記録して、それまで記録してあったキル数と同じリストに入れます。(キル数は一試合ごとに記録)
そのリストから一試合当たりの平均キル数を計算,表示しようと思っています。
その時にエラーが出てしまいます。
下記コードです。
python3
1while True: 2 kill_count=input("キル数は: ") 3 if kill_count: 4 kill=[1,2,5,6] 5 kill.append(kill_count) 6 list(map(int,kill)) 7 x=len(kill) 8 y=sum(kill) 9 print(y/x) 10 else: 11 print("入力してください")
エラーコードです。
キル数は: 3 #3は入力
[1,2,5,6,3]
Traceback (most recent call last):
File "<stdin>", line8, in <module>
TypeError: unsupported operand type(s) for +: 'int' and 'str'
試したこと
if文の条件式に'==True'追加してみました。
しばらくは、ifの条件式が実行されなくてelseの処理になっていましたが、map関数の使い方がpython2対応であったことを知り、python3対応に修正したらなぜかif文が実行されるようになりました。
sumやlenは本に書かれた方法で記述しています。
思ったこと
また、ATOMで書いたコードをファイルではなくコピペをして実行しているのですが、それもこの不具合に関係ありますか?
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/08/15 01:28