1

私はPythonにはかなり慣れていませんが、かなりの量を知っています。買い物リストに商品を追加する簡単なプログラムを作成しました。アイテムが印刷されるとすぐに閉じてしまうという問題があったので、それを修正する作業をしていました。これがプログラム全体です。

grocery_list = open('list.txt', 'a')
print 'This is your python grocery list project.'
newitems = raw_input('Add items (seperate with commas):')
grocery_list.write(newitems)
grocery_list = open('list.txt', 'r')
list = grocery_list.readlines()
print list
choice = raw_input('Do you want to close your grocery list? (y/n)')
if choice == 'y'
  exit()
elif
  raw_input("We're waiting, please enter y to close")

私の問題は、9行目の後のスペースがすべて無効な構文であることです! アイテムを印刷するとすぐに閉じるという問題を解決するより良い方法はありますか?

4

2 に答える 2

4

コロンを忘れました:

if choice == 'y'

する必要があります

if choice == 'y':

また、の後に条件(およびコロン)が必要ですelif

ETA:また、プログラムは終了に達すると自動的に終了します。呼び出す必要はありませんexit()(特に、入力した場合に発生するのnは、とにかく終了することだけなので)。プログラムが終了する前にユーザーがキーを入力するのをプログラムで待機させたい場合は、次のようにします。

raw_input("Press enter to exit")

(入力が何であったかを確認する必要はありません)。

于 2012-05-31T04:22:04.233 に答える
3

:ifとelifステートメントの後に必要です

構文は次のようになります。

    if condition:
        do..something..
    elif condition:
        do..something..
    else:
        do..something..

詳細については、こちらをご覧ください

于 2012-05-31T04:21:52.597 に答える