1

*人々はこの同じ問題について投稿しています (まったく同じケースのプログラムを書いています) が、ウェブサイトのどこにもコードがこのエラーを返した人を見たことがありません。注: 問題そのものではなく、エラーの修正方法を知りたいです。このエラーに関する別の質問は見つかりませんでした。これは重複した質問ではありません。*

注文した各アイテムの数をカウントする次のプログラムがあります。顧客が注文できるアイテムは、サラダ、ハンバーガー、水です。例: order = "hamburger water hamburger" の場合、関数は "salad:0 hamburger:2 water:1" を返します。

from collections import Counter

(meal) = raw_input("order= ")

def item_order(meal, items=('salad', 'hamburger', 'water')):
    counter = Counter(meal.split())
    return ' '.join(['{}: {}'.format(item, counter.get(item, 0)) for item in items])

print(item_order(meal))

PowerShell を介してプログラムを実行すると、プログラムは完全に機能し、必要なものを正確に出力しますが、オンライン コースで提出しようとすると、次のように返されました。

"Traceback (most recent call last):
  File "submission.py", line 3, in <module>
    (meal) = raw_input("order= ")
EOFError: EOF when reading a line"

私はこれに非常に慣れていないため、このエラーが発生した理由、その意味、または修正方法がわかりません。エラーをグーグルで検索してみましたが、非常に混乱しました。誰でも助けることができますか?

4

1 に答える 1

0

現在これをテストする方法はありませんが、二重引用符を使用してみてください。ちなみに、私の端末でも問題なく動作します。

例:

def item_order(meal, items=("salad", "hamburger", "water")): 

それ以外の:

def item_order(meal, items=('salad', 'hamburger', 'water')):
于 2016-01-26T00:01:51.110 に答える