LineEdit'e nasıl text "ekleyebilirim"?

Bir hesap makinesi yapıyorum. Kafamda kurguladığım şeye göre sayılara basılınca QLineEdit’e o sayıyı ekleyecek.
Atıyorum butonlar arasından 1’e bastım. Linedit kısmında 1 yazacak.
self.LineEdit.setText() ile bunu yapabiliyorum.
Fakat başka bir butona bastığım zaman setText dediğim için o “1” yazısı gidiyor.
Yani text kurmak istemiyorum da text eklemek istiyorum.

Bunu nasıl yaparım ?

daha açık olabilirsen belki daha net bir şey derdim ama. Benim anladığıma göre kullanıcı QLineEdit seçili input olmasa da orda yazı yazsın ki bu evrensel yazılım kurallarına aykırı ve kullanıcının aklını karıştırabilir ancak bunu PyQt5 ile değil de başka kütüphanelerle yapabilirsin bir tane atym sana ama uyarıyım bu kütüphanede program seçili değilse bile klavyeyi dinleyecektir bu da hata olur daha iyisi için google’dan bak :
örnek bir makale https://python.yemreak.com/diger/klavye-yoenetimi

biraz daha detaylı anlatayım o halde.

şöyle bir arayüz görüyorsunuz. Hesap makinesi yapmaya çalışıyorum. (pencerenin başlığında başka bir uygulamanın başlığı kalmış bunu boşverin)

Ben mesela 1’e basıyorum.

line edit’e 1 geldi.
Fakat başka bir sayıya basmak istersem :

line editteki yazı siliniyor. Çünkü setText kullanıldı. En baştan kuruluyor.
Ben mesela buraya 13 ya da 213 gibi sayılar yazabilmek istiyorum.
Direkt yeni bir text kurmasın da yeni bir text eklesin yani.

def click1(self):
        self.lineEdit.setText("1 ")
def click2(self):
        self.lineEdit.setText("2 ")

1 ve 2 butonu mesela böyle. setText’ten başka, istediğim şeyi gerçekleştirebilecek bir kod olabileceğini düşünüyorum.

buradan sonra line editte yazacak şeylere göre işlemleri çalıştırmaya çalışacağım.
Açıkçası şimdi düşününce bu çok mu uzun olur diye düşünüyorum.
Yapmaya çalıştığım şeyi anlamış olmalısınız. Daha pratik bir yöntem var mıdır QLineEdit’ten başka ?

sanırım eğitimini bitirmeden bunu yapmaya çalışıyorsun ya da aklın şu an bombom
ama önerim eğitimin bitmişse baştan başla!
onun yerine şu kodu dene
yazı = self.lineEdit.text() + “1”
self.lineEdit.setText(yazı)
bu şu anda anlayacağın kod bir de buton atamalarını for döngüsünde verip mesela
def click(self,sayı) demen daha az koda mal olur ama gene de sen bilirsin.

oldu mu bi de bunu alıştırma olarak yapmıyosan söle sana bi iki video atym eğer öleyse yani zıplaya zıplaya gelmişin.

Haklısınız. Çünkü ben sadece bir 8. Sınıf öğrencisiyim.
Okulu ve hayalimi aynı anda yürütmeye çalışıyorum. Haliyle tamı tamına da ilgilenemiyorum yazılım ile. Ki zaten günümüz Türkiye’sinde de bunu yapabilmek çok zor.
Tüm bunların yanı sıra Pyqt’de de o kadar uzmanlaşmadım. Eğitim seti de henüz bitmedi.
Önerinizi yarın uygulayacağım teşekkür ederim.

benim önerim eğitimin bitmesi durumundaydı. Yani eğer bitmemişse eleştirilmesi gereken çözememen değil tabii ki de. Herkes duyduğu birkaç şeye göre projeler yapar ki bu olmalıdır da.
ancak dostum zaten öğreneceğin bir şeyi burda sorman biraz acaip. Neyse kişisel olarak değerlendirmek gerekirse de madem 8’sin kesinlikle derslerine dön derim.yazılımla uğraşan bir arkadaşım BİR PUANLA fen lisesini kaçırmıştı. bir soru sadece bir konu sadece bir saat. Yani yazılımı bu sene bırakman daha iyi olur. En kötü ihtimalle bu konuyu çok istiyosan bir yazılım lisesine git. saygılar

bir yazılım lisesi hedefim var. Ailem de yalnızca bu sene için tamamen derslerime dönmemden yana. Ancak tamamen de rafa kaldırmak istemiyorum yazılımı.
Benim izlediğim eğitim setindeki Pyqt5 bölümü biraz daha genel açıkçası.
Yani belki biliyorsundur Mustafa Murat Coşkun’un eğitim setini izliyorum.
Bu set biraz daha genel. Yani pyqt’yi öğreneceğim ama genel olarak mantığını kavrayacağım.
Django öğreneceğim ama genel olarak mantığını kavrayacağım.
Bunun dışında dili de kullanabilmeyi öğretiyor.
Yani şöyle söyleyeyim. “İngilizce’ye a’dan z’ye hakim değilim. Fakat bana kelimeleri ver 50 sayfa kitap bile yazarım.”
Gibi bir şey bu.

Ki zaten sadece udemy eğitimleri ile çok çok ileri düzey bir bilgi birikimine sahip olunmaz bence yazılım konusunda.
Kısacası daha çok her şeye maydonoz olma bazlı bir eğitim seti olduğu için bu tarz ince ayrıntıları bilmiyorum. Zaten öğreneceğimi bilsem buraya yazmam.

LineEdit'e nasıl text "ekleyebilirim"? Gönderisinden tartışılmaya devam ediliyor:

haklısın ben de o kurstan aldım PyQt5’i youtube’dan tamamladım. Çünkü bilgi yetmiyo.
Velhasıl kelam sonra gördüm ki her şeye boşaymış.Yani mobil tabanlı bir şey de yapamyon
sadece zevk için bir kaç yazılım veya ilerdeki bir projende kendine kolaylık olsun diye yapacağın bir şey olarak rafa kalkıyo. Ve senn de kurstaki seviyen de buysa yazılımı bırakmanın tam zamanı . çünkü oraya kadar hep algoritma anlatıyor. Bundan sonraysa biraz daha ezbere dayalı olacak olan kütüphaneleri öğrenmeye başlayacaksın. Ve aklından gidecekler. En iyisi şimdi yazılımı bırakman ayda bir açıp bir iki tekrar yapman ve derslere odaklanman. Ne görecen biliyon mu? Başka bir dil öğrendiğinde diyeceksin ki e zaten algoritma aynıymış sadece enter yerine ; kullanyom fln. Devam edersen de bir yerde her şey sıkışacak ve manası olmayan bir vakit boyunca ders çalışmak zorunda kalacaksın. Ve burda da algoritma hariç tüm kütüphanelerin yarısını unutacan. Ben olacak muhtemel şeyleri söyledim seçin sende knk.

evet şu sıralar bunu düşünüyordum. Söylediklerin de düşüncemi pekiştiriyor şuanda.

Yarım kalan Flask’ı da bitireceğim. Sonrasında tamamen derslere odaklı olacağım artık.
arada bir boş zaman olduğunda önceki projeleri geliştirmeye falan çalışırım. Ya da ihtiyacım olan programları yazmaya çalışırım. Tekrar olarak bunlar yeterli olur. Boş zamanlarda yaparım bunu da. Ki zaten boş zaman bulabilmek çok zor oluyor artık.
Bu daha doğru bir seçim olacak.
Önerilerin için teşekkür ederim. Görüşmek Üzere

yazdıracağın metin için başlangıçta bir değişken ata mesela x olsun. sonra ekleyeceğin bütün metinleri x’in üzerine ekle. her ekleme işleminde x’i yeniden setText(x) şeklinde yap. Böylelikle her bastığında bütün metini baştan yazarsın ve istediğini de eklersin. sayfalarca metnin olursa yeniden yazma işlemi performans sorunları oluşturabilir ama hesap makinesinde işini görür.

Teşekkür ederim fakat şuan herhangi bir şeye gerek kalmadı.
eval() diye bir şey buldum İngilizce kaynaklardan. Bu da asıl yapmak istediğim şeyi sağladı