2016-04-05 10 views
0

Adı yazdığınız bir giriş etiketim var. Ben csv dosyasının sütun 0 üzerinden aramak istiyorum. Bu ad varsa, o zaman zaten oluşturulmuş bir liste kutusunda görüntülenecektir (bu iyi çalışıyor) ama isim yoksa, zamanlanmış bir etiket (elif bölümü) oluşturmak istiyorum. Ancak, yazdığım kod, ad AND olmadığında etiketi görüntüler.Girdi yoksa zamanlanmış etiket oluştur

with open('CLASSES.csv', 'rt')as f: 
    reader=csv.reader(f) 
    people=[] 
    for column in reader: 
     if column[0]==entry: 
      people.append(column[0:8]) 

      namebox.delete(0,END) 

      nameslist=[x[0] for x in people] 
      for names in (nameslist): 
       namebox.insert(END, names) 

     elif column[0]!=entry: 
       INC=Label(master,text='User Does Not Exist',bg='#800000',fg='white') 
       INC.grid(row=2,column=3,columnspan=5,sticky='s') 
       def af(): 
        INC.configure(fg='#800000')    
       INC.after(1000, af) 

if column[0] == entry: bölüm çalışıyor ama ben daha kolay programın nasıl çalıştığını anlamak için yapmak dahil düşündüm.

Herhangi bir yardım harika olurdu!

+0

var "okuyucu" birden fazla kayıt, bu nedenle bazı kayıtlar eşit giriş ve bazı kayıtlar yok, bu yüzden hem eğer elif farklı kayıtlarına yürütülür. Burada ve burada daha iyi çalışıp çalışmadığınızı unutmayın, aksi takdirde == girişi olmayan her şeyi kapsar. –

+0

Başkaları için değiştirdim ancak hala aynı listeden arama yapabilmem için aynı sorunu yaşıyorum ve bu yüzden sonuçlanan sonuçlarla karşılaşıyorum ve sonuç yok ama yine de teşekkürler - @CurlyJoe –

cevap

1

Her giriş için kaydı görüntülüyorsunuz.

Girdiyse, saklamak için boolean yazım değişkenini kullanın. Döngü başlamadan önce false ile başlatın. Bir giriş eşitse, true olarak ayarlayın. Döngüden sonra bu değeri kontrol edin ve eğer dalınızı şuna uygulayın.

sözde kod

search = "SomeEntryValue" 
found = False 
for line in open("csv-file", "r"): 
    if line[0] == search: 
     found = True 
     # Optional Tasks to be done here for each entry 
if found: 
    # Display the Data 
else: 
    # display the "User does not exist" message 
+0

Önerdiğinizi kullanarak kodumu değiştirdim, şimdi çalışıyor , Teşekkürler!! :) –

+0

Öyleyse, lütfen cevap olarak da kabul edin – R4PH43L

İlgili konular