Çözüldü listeye ürün ekleyip ürünü göster deyince boş liste gösteriyor

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

semihxq

Decapat
Katılım
16 Aralık 2022
Mesajlar
99
Çözümler
1
Daha fazla  
Cinsiyet
Erkek
Python:
import time as t

while True:

 ürünler = []

 print("---------------------------------------------------------------------------------------")
 print("---------------------------------------------------------------------------------------")
 print("[1]: Ürünleri göster\n[2]: Ürün ekle\n[3]: Ürün sil\n")
 sec = input("Hoşgeldiniz yapmak istediğiniz işlemin işlem numarasını giriniz: ")

 if sec == "1":
 print("Varolan ürünleriniz listeleniyor bekleyiniz...")
 t.sleep(0.75)
 print(ürünler)
 print("""Geri dönmek için "enter" tuşuna basınız.""")
 geri_don = input("")

 elif sec == "2":
 ürün_ad = input("Eklemek istediğiniz ürünün adını giriniz: ")
 ürün_adet = input("Eklemek istediğiniz ürünün stoğunu giriniz: ")
 ürün_barkod = input("Eklemek istediğiniz ürünün barkod numarasını giriniz: ")

 t.sleep(1)
 print("Ürün ekleniyor...")
 ürünler.append(" - Ad: " + ürün_ad + "Stok: " + ürün_adet + "Barkod: " + ürün_barkod + "\n")
 t.sleep(0.50)
 print(ürün_ad + " adlı ürün eklendi.")

 elif sec == "3":
 silinecek_urun = input("Silmek istediğiniz ürünün tam adını giriniz: ")
 if silinecek_urun == ürünler:
 ürünler.remove(ürün_ad)
 ürünler.remove(ürün_adet)
 ürünler.remove(ürün_barkod)

 else:
 print("HATA yanlış bir tuşlama yaptınız!")

Bu kodu çalıştırdığım zaman bir hata vermiyor fakat herhangi bir ürün ekledikten sonra, o ürünü göster dediğim zaman göstermiyor, boş liste gösteriyor tek. Neden olabilir?
 
Son düzenleyen: Moderatör:
Çözüm
Ürünler listesini while döngüsü önüne alır mısın? Her döngüde Ürünler listesini boşaltıyorsun yanlış görmüyorsam.
ürünler.append(" - Ad: " + ürün_ad + "Stok: " + ürün_adet + "Barkod: " + ürün_barkod + "\n")
Bunun yerine şunu deneyebilir misiniz?
ürünler.append(f'Ad: {ürün_ad} Stok: {ürün_adet} Barkod: {ürün_barkod}\n')
 
ürünler.append(" - Ad: " + ürün_ad + "Stok: " + ürün_adet + "Barkod: " + ürün_barkod + "\n")
Bunun yerine şunu deneyebilir misiniz?
ürünler.append(f'Ad: {ürün_ad} Stok: {ürün_adet} Barkod: {ürün_barkod}\n')

Olmadı, muhtemelen başka yerlerde de hata yaptım kontrol eder misiniz?
 
Ürünler listesini while döngüsü önüne alır mısın? Her döngüde Ürünler listesini boşaltıyorsun yanlış görmüyorsam.
Evet, doğru.
import time as t ürünler = [] while True: print("---------------------------------------------------------------------------------------") print("---------------------------------------------------------------------------------------") print("[1]: Ürünleri göster\n[2]: Ürün ekle\n[3]: Ürün sil\n") sec = input("Hoşgeldiniz yapmak istediğiniz işlemin işlem numarasını giriniz: ") if sec == "1": print("Varolan ürünleriniz listeleniyor bekleyiniz...") t.sleep(0.75) print(ürünler) print("""Geri dönmek için "enter" tuşuna basınız.""") geri_don = input("") elif sec == "2": ürün_ad = input("Eklemek istediğiniz ürünün adını giriniz: ") ürün_adet = input("Eklemek istediğiniz ürünün stoğunu giriniz: ") ürün_barkod = input("Eklemek istediğiniz ürünün barkod numarasını giriniz: ") t.sleep(1) print("Ürün ekleniyor...") ürünler.append(" - Ad: " + ürün_ad + "Stok: " + ürün_adet + "Barkod: " + ürün_barkod + "\n") t.sleep(0.50) print(ürün_ad + " adlı ürün eklendi.") elif sec == "3": silinecek_urun = input("Silmek istediğiniz ürünün tam adını giriniz: ") if silinecek_urun == ürünler: ürünler.remove(ürün_ad) ürünler.remove(ürün_adet) ürünler.remove(ürün_barkod) else: print("HATA yanlış bir tuşlama yaptınız!")
gibi.
 
Ürünler listesini while döngüsü önüne alır mısın? Her döngüde Ürünler listesini boşaltıyorsun yanlış görmüyorsam.
Tamamdır oldu teşekkürler

Ürünler listesini while döngüsü önüne alır mısın? Her döngüde Ürünler listesini boşaltıyorsun yanlış görmüyorsam.

Bir sorum daha var programı kapattığımda ürünler silinmesin istiyorum onu nasıl yaparım?
Evet, doğru.
import time as t ürünler = [] while True: print("---------------------------------------------------------------------------------------") print("---------------------------------------------------------------------------------------") print("[1]: Ürünleri göster\n[2]: Ürün ekle\n[3]: Ürün sil\n") sec = input("Hoşgeldiniz yapmak istediğiniz işlemin işlem numarasını giriniz: ") if sec == "1": print("Varolan ürünleriniz listeleniyor bekleyiniz...") t.sleep(0.75) print(ürünler) print("""Geri dönmek için "enter" tuşuna basınız.""") geri_don = input("") elif sec == "2": ürün_ad = input("Eklemek istediğiniz ürünün adını giriniz: ") ürün_adet = input("Eklemek istediğiniz ürünün stoğunu giriniz: ") ürün_barkod = input("Eklemek istediğiniz ürünün barkod numarasını giriniz: ") t.sleep(1) print("Ürün ekleniyor...") ürünler.append(" - Ad: " + ürün_ad + "Stok: " + ürün_adet + "Barkod: " + ürün_barkod + "\n") t.sleep(0.50) print(ürün_ad + " adlı ürün eklendi.") elif sec == "3": silinecek_urun = input("Silmek istediğiniz ürünün tam adını giriniz: ") if silinecek_urun == ürünler: ürünler.remove(ürün_ad) ürünler.remove(ürün_adet) ürünler.remove(ürün_barkod) else: print("HATA yanlış bir tuşlama yaptınız!")
gibi.
Oldu. Bir sorum daha var programı kapattığımda ürünler silinmesin istiyorum onu nasıl yaparım ?
 
Tamamdır oldu teşekkürler



Bir sorum daha var programı kapattığımda ürünler silinmesin istiyorum onu nasıl yaparım?

Oldu. Bir sorum daha var programı kapattığımda ürünler silinmesin istiyorum onu nasıl yaparım ?
Bir text dosyasına yazdırabilirsiniz. Yapabilirseniz text dosyası üzerinden okur ve oraya ekleme yapar.
 
Kod:
dosya = open("kayitlar.txt", "a+")
Bunu kodunuzun başına biryerine ekleyin.
ürünler.append(" - Ad: " + ürün_ad + "Stok: " + ürün_adet + "Barkod: " + ürün_barkod + "\n")

Bu kodu ise şunun ile yer değiştirin:
Kod:
dosya.write(f'Ad: {ürün_ad} Stok: {ürün_adet} Barkod: {ürün_barkod}\n')
Böylece dosyanıza yazdırmış olursunuz.

-------------
Ürünleri göstermek için de:
Kod:
print(ürünler)
yerine:
Kod:
print(open("kayitlar.txt").readlines())
değiştirebilirsiniz.
 

Technopat Haberler

Geri
Yukarı