funktion für einen button in einem taschenrechner
Hallo,ich muss einen taschenrechner programmieren und ich würde gerne wissen wie die funktion für einen button wäre wenn man will das der button in ein oberes feld eine 1 reinschreibt und wie bringt man dieses feld dann in das fenster
Das hat euer Lehrer euch doch bestimmt schon erklaert, oder? Was hast du denn so ausprobiert, zeig doch mal deinen Code.
also Funktionen kann ich gar nicht deswegen brauche ich Hilfe also bisher habe ich das hier:
Code: Alles auswählen
from Tkinter import *
main=Tk()
a=Button(main,text=' * ',background='#B1B1B1',borderwidth='5')
a.place(x=5,y=90,height='30',width='40')
b=Button(main,text=' = ',background='#B1B1B1',borderwidth='5')
b.place(x=5,y=120,height='30',width='40')
c=Button(main,text=' 0 ',background='#B1B1B1',borderwidth='5')
c.place(x=5,y=150,height='30',width='40')
d=Button(main,text=' 1 ',background='#B1B1B1',borderwidth='5')
d.place(x=45,y=150,height='30',width='40')
e=Button(main,text=' 2 ',background='#B1B1B1',borderwidth='5')
e.place(x=85,y=150,height='30',width='40')
f=Button(main,text=' 3 ',background='#B1B1B1',borderwidth='5')
f.place(x=125,y=150,height='30',width='40')
g=Button(main,text=' 4 ',background='#B1B1B1',borderwidth='5')
g.place(x=45,y=120,height='30',width='40')
h=Button(main,text=' 5 ',background='#B1B1B1',borderwidth='5')
h.place(x=85,y=120,height='30',width='40')
i=Button(main,text=' 6 ',background='#B1B1B1',borderwidth='5')
i.place(x=125,y=120,height='30',width='40')
j=Button(main,text=' 7 ',background='#B1B1B1',borderwidth='5')
j.place(x=45,y=90,height='30',width='40')
k=Button(main,text=' 8 ',background='#B1B1B1',borderwidth='5')
k.place(x=85,y=90,height='30',width='40')
l=Button(main,text=' 9 ',background='#B1B1B1',borderwidth='5')
l.place(x=125,y=90,height='30',width='40')
m=Button(main,text=' - ',background='#B1B1B1',borderwidth='5')
m.place(x=165,y=150,height='30',width='40')
n=Button(main,text=' + ',background='#B1B1B1',borderwidth='5')
n.place(x=165,y=120,height='30',width='40')
o=Button(main,text=' : ',background='#B1B1B1',borderwidth='5')
o.place(x=165,y=90,height='30',width='40')
k=Button(main,text='delete',background='#B1B1B1',borderwidth='5')
k.place(x=5,y=180,height='30',width='200')
textfenster=Text(main)
textfenster.place(x='5',y='5',height='78',width='198')
main.geometry('500x500')
main.configure(background='navy')
main.mainloop()
Zuletzt geändert von Anonymous am Sonntag 10. Juni 2012, 11:12, insgesamt 1-mal geändert.
Grund: Quelltext in Python-Code-Tags gesetzt.
Grund: Quelltext in Python-Code-Tags gesetzt.
@denniss13: Wenn Du Funktionen nicht kennst, dann kannst Du die Aufgabe nicht lösen. Also musst Du Funktionen lernen. Such Dir ein Tutorial oder Buch und lerne die Grundlagen. Ein Einstiegspunkt wäre das Tutorial in der Python-Dokumentation. Abraten würde ich vom OpenBook von Galileo.
Da lernst Du dann auch etwas über die Grunddatenstrukturen die Python bietet und Kontrollstrukturen wie Schleifen. Ein Stück Quelltext immer wieder kopieren und geringfügig anpassen und dabei wie in diesem Fall auch noch unmengen von einbuchstabigen Namen erzeugen ist keine gute Idee.
Von `place()` solltest Du auch Abstand nehmen, dass ist so nicht wirklich portabel, da es bei anderen Systemen, Bildschirmauflösungen, und so weiter anders als bei Dir aussehen kann, bis hin zur unbenutzbarkeit wenn sich absolut platzierte GUI-Elemente überlappen.
Den Sternchen-Import könntest Du Dir auch gleich wieder abgewöhnen.
Da lernst Du dann auch etwas über die Grunddatenstrukturen die Python bietet und Kontrollstrukturen wie Schleifen. Ein Stück Quelltext immer wieder kopieren und geringfügig anpassen und dabei wie in diesem Fall auch noch unmengen von einbuchstabigen Namen erzeugen ist keine gute Idee.
Von `place()` solltest Du auch Abstand nehmen, dass ist so nicht wirklich portabel, da es bei anderen Systemen, Bildschirmauflösungen, und so weiter anders als bei Dir aussehen kann, bis hin zur unbenutzbarkeit wenn sich absolut platzierte GUI-Elemente überlappen.
Den Sternchen-Import könntest Du Dir auch gleich wieder abgewöhnen.
Das Problem ist nur ich hab mir Funktionen schon so oft angeguckt und ich kann die einfach nicht und das mit dem Sternchen import haben wir so gelernt
Könnt ihr mir nicht einfach die funktion für meine frage aufschreiben das wäre sehr sehr nett
Könnt ihr mir nicht einfach die funktion für meine frage aufschreiben das wäre sehr sehr nett

@denniss13
Wir sind hier nicht die kostenlose Hausaufgabenhilfe. Wenn ihr Funktionen hattet, dann musst du lernen damit zu arbeiten. Punkt. Dabei koennen wir dir gerne helfen. Aber deine Arbeit hier fuer dich zu erledigen - das wird nicht passieren.
Wir sind hier nicht die kostenlose Hausaufgabenhilfe. Wenn ihr Funktionen hattet, dann musst du lernen damit zu arbeiten. Punkt. Dabei koennen wir dir gerne helfen. Aber deine Arbeit hier fuer dich zu erledigen - das wird nicht passieren.
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Selbst wenn ihr Sternchen-Importe gelernt habt, sind diese schlecht! Wenn euer Lehrer euch dazu zwingt, dann musst Du das wohl akzeptieren; aber behalte es im Hinterkopf.
Sinnvoller wäre es wohl, wenn Du ihn mal darauf hinweisen würdest, dass Du von erfahrenen Python-Nutzern darauf angesprochen wurdest. Er kann sich hier gerne melden
Ich vermute mal, er weiß es eben selber nicht besser.
Zu den Funktionen: Was genau ist daran nicht zu verstehen? Also woran hakt es denn bei Dir? Hattet ihr in der Mathematik schon Funktionen? (Also z.B. Geradengleichungen, Parablen, usw. - Sinus, Cosinus?) Wenn ja sollte es Dir doch möglich sein, das eins zu eins auf Python zu übertragen...
Sinnvoller wäre es wohl, wenn Du ihn mal darauf hinweisen würdest, dass Du von erfahrenen Python-Nutzern darauf angesprochen wurdest. Er kann sich hier gerne melden

Zu den Funktionen: Was genau ist daran nicht zu verstehen? Also woran hakt es denn bei Dir? Hattet ihr in der Mathematik schon Funktionen? (Also z.B. Geradengleichungen, Parablen, usw. - Sinus, Cosinus?) Wenn ja sollte es Dir doch möglich sein, das eins zu eins auf Python zu übertragen...
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
assert encoding_kapiert
@Dennis13: Wie soll denn das gehen? Wie mache ich denn Python auf einen Taschenrechner?
Geht das auch mit einem graphikfähigen T.r.? Zum Bleistift TexasInstruments 84+ ?
@Hyperion: Ich finde *-Importe übrigends auch sch..., weil dann plötzlich alle Klassen- und Methodennamen belegt sind.
Geht das auch mit einem graphikfähigen T.r.? Zum Bleistift TexasInstruments 84+ ?
@Hyperion: Ich finde *-Importe übrigends auch sch..., weil dann plötzlich alle Klassen- und Methodennamen belegt sind.
PS: Die angebotene Summe ist beachtlich.
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Abgesehen davon, dass der Thread schon recht alt ist, hat der OP wenig Intertesse gezeigt. Da wird er auf Deine Frage eher nicht mehr antworten...Üpsilon hat geschrieben:@Dennis13: Wie soll denn das gehen? Wie mache ich denn Python auf einen Taschenrechner?
Geht das auch mit einem graphikfähigen T.r.? Zum Bleistift TexasInstruments 84+ ?

Hinzu kommt noch, dass ich Deine Nachfragen gar nicht kapiere...
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
assert encoding_kapiert
Ich versuche das mal zu übersetzen: Ich sehe es auch so, dass keine *-Importe verwendet werden sollen. Diese füllen den Namensraum mit einer Vielzahl von neuen Namen auf, so dass dies leicht zu versehentlichen und ungewollten Konflikten führen kann.Hyperion hat geschrieben:Hinzu kommt noch, dass ich Deine Nachfragen gar nicht kapiere...
Das Leben ist wie ein Tennisball.
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
@EyDu: Ich meinte den ersten Frageteil 

encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
assert encoding_kapiert
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Ok, dann sind wir uns da ja quasi einigEyDu hat geschrieben:@Hyperion: Ich habe so viel übersetzt wie ich konnte. Der erste Teil ist in einer mir unverständlichen Sprache. Ich hätte das besser kennzeichnen sollen!

encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
assert encoding_kapiert