0

python 2.7.5から始めたばかりの学校向けの配送プログラミングの問題を解決し、米国またはカナダを選択しようとしています。現状では、これを機能させるには数値の選択をしなければなりませんでした。米国またはカナダとしてプロンプトを表示し、番号を割り当てない場合、何かを文字列として宣言する必要がありますか? カナダまたは米国を使用すると、グローバル変数に関するエラー メッセージが表示されます。番号選択付きの下書き:

def main ():
    user_ship_area = input('Are you shipping to the US or Canada? Type 1 for US, 2 for   Canada') 

    if user_ship_area != 2:
      print 'confirmed, we will ship to the United States '
    else:
      print "confirmed, we will ship to Canada" 

main() 

次の条件でカナダまたは米国を使用すると、エラー メッセージが表示されます

user_ship_area = input('Are you shipping to the US or Canada?') 
if user_ship_area != Canada:
    print 'confirmed, we will ship to the United States '
else:
    print "confirmed, we will ship to Canada" 
4

3 に答える 3

2

raw_inputの代わりに使用input

def main ():
    user_ship_area = raw_input('Are you shipping to the US or Canada?') 

    if user_ship_area != 'Canada':
        print 'confirmed, we will ship to the United States '
    else:
        print "confirmed, we will ship to Canada" 

main() 
于 2013-10-10T14:49:18.953 に答える
1

コードでCanadaは、変数として解析されますが、文字列である必要があります。また、Python 2.x を使用している場合は、raw_input代わりに を使用しinputます。これは、2 番目のものが入力された文字列を評価するためです。したがって、コードは次のようになります。

user_ship_area = raw_input('Are you shipping to the US or Canada?') 
if user_ship_area != 'Canada':
    print 'confirmed, we will ship to the United States '
else:
    print "confirmed, we will ship to Canada" 
于 2013-10-10T14:49:43.220 に答える
0

あなたは ' マークを逃しました

user_ship_area = input('Are you shipping to the US or Canada?') #<--- here 
  #<--an indent here.  v      v  quotes to indicate string here  
  if user_ship_area != 'Canada':
    print 'You picked Canada!'
于 2013-10-10T14:49:06.977 に答える