2017-01-18 8 views
0

私はリストと入力を持っています。Pythonはelif文の中にあってもコードを実行します

findgtin=input("Enter code to find:") 
ProductGtin=[] 
ProductGtin.append(56231878) 
#list is appended three more times but i cut this bit out# 

##IF GTIN CODE EXISTS IN LIST##  
    for word in ProductGtin: 
       ##IF GTIN CODE EXISTS:## 
       if word==findgtin: 
       ##MAIN CODE HERE## 
     ##IF GTIN CODE DOES NOT EXIST:## 
       if word!=findgtin: 
       print ("PRODUCT NOT FOUND") 

findgtinは、ユーザから入力されるとProductGtinは、いくつかの8桁の数字を含むリストである:私はこのようなコードを実行しています。 私はプログラムを実行するたびに、最初の入力を入力し、「PRODUCT NOT FOUND」を3回印刷します。リストには4つの項目があります。入力、56231878はProductGtinリストの最初のものです。

ここで何が起こっているのかよくわかっているので、プログラムは入力を見つけてメインプログラムを実行し、リスト内の他の項目と同じ入力をチェックしてPRODUCT NOT FOUNDを返します。私はif文とelif文を再注文しようとしましたが、これはうまくいきませんでした。 私はどんな助けもありがとう、ありがとう! :)

答えて

0

はい、あなたが言ったとおりです。

この

ProductGtin = [56231878, ... ] 
# no need to do 4 individual appends, make the list with all 4 numbers at once 

findgtin = int(input("Enter code to find:")) 
#transform the input to int, or store the ProductGtin as strings 

if findgtin in ProductGtin: 
    # the in operator will tell you if that element is in the list 
    ##MAIN CODE HERE## 
else: 
    print ("PRODUCT NOT FOUND") 
てみてください
関連する問題