ankon
-
Gesamte Inhalte
79 -
Benutzer seit
-
Letzter Besuch
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Beiträge von ankon
-
-
Hallo,
ich schreibe ein Python-Programm, wo zwei letzten Elemente der vorgegebenen Liste 'volunteer_datas' ausgegeben werden sollten.
Es muss auch die Vererbung eingesetzt werden (das ist schon realisiert):class Person: def __init__(self, name: str): self.name = name def __str__(self): return f'{self.name}' class Volunteer(Person): def __init__(self, name: str, place: str, status: str): super().__init__(name) # Обеспечивает доступ к оригиналам наследованных методов. Это полезно для доступа к унаследованным методам, которые были переопределены в классе. self.place = place self.status = status def __str__(self): return f'{self.name}, {self.place}, {self.status}' volunteer_datas = [ {"name": "Smith", "place": "Boston", "status": 'Consultant'}, {"name": "Elvin", "place": "Paris", "status": 'Mentor'}, {"name": "Schwarz", "place": "Viena", "status": 'Trainer'}] print('list of guests :') for volunteer_data in volunteer_datas: for i in volunteer_data: if i == 'name' and (volunteer_data['name'] == 'Elvin' or 'Schwarz'): obj_vol = Volunteer(volunteer_data['name'], volunteer_data['place'], volunteer_data['status']) print(obj_vol.__str__())
Das Programm gibt momentan aber alle Elementen der Liste, nicht die zwei letzten:
list of guests : Smith, Boston, Consultant Elvin, Paris, Mentor Schwarz, Viena, Trainer
Ich wollte zuerst die Ausgabe mittels -if- realisieren (ich weiss, es ginge auch mittel -for- aber das lieber danach).
Also, bei der Ausgabe wollte ich Angaben der zwei letzten Positionen aus der Liste (mit der 'name', place', Status') bekommen:{"name": "Elvin", "place": "Paris", "status": 'Mentor'}, {"name": "Schwarz", "place": "Viena", "status": 'Trainer'}
Hier bitte ich um Hilfe.
-
so funktioniert es
def __str__(self): return 'Rectangle({}, {}, {}, {})'.format(self.a, self.b, self.width, self.height)
-
vor 14 Stunden schrieb Whiz-zarD:
Und wo genau liegt jetzt nun dein Problem?
Problem liegt darin: meine jetzige Code-Variante gibt (als str) die Zeichenfolge Rectangle (5, 10, 50, 100) nicht zurück.
-
Hallo,
ich löse Aufgabe (Programmiersprache Python):
Erzeugen Sie eine Klasse beliebiger geometrischer Figure. Die Ausgabe der erzeugten Klasse soll die Attribute (als Argumente) der Figur zurückgeben. Jede Objekt (Figur) muss über Attribute verfügen, die von der ausgewählten Form abhängen. Bei einem Rechteck sind dies beispielsweise die Argumente x, y, width und height. Außerdem müssen Sie diese Attribute beim Erstellen eines Objekts der Klasse übergeben können. Erstellen Sie eine Methode, die die Attribute Ihrer Form als Zeichenfolge (str) zurückgibt. ------------------------ Verwenden Sie str für die Realisierung. Für ein "Rechteck"-Objekt mit den Attributwerten x = 5, y = 10, Breite = 50, Höhe = 100 sollte die Methode beispielsweise die Zeichenfolge Rectangle (5, 10, 50, 100) zurückgeben.
Ich habe es versucht, die Code zu schreiben, aber meine jetzige Variante gibt die Zeichenfolge Rectangle (5, 10, 50, 100) nicht zurück. Was ich jetzt geschrieben habe:
# Erzeugen Sie eine Klasse beliebiger geometrischer Figure. Die Ausgabe der erzeugten Klasse soll die Attribute (als Argumente) der Figur zurückgeben. # Jede Objekt (Figur) muss über Attribute verfügen, die von der ausgewählten Form abhängen. Bei einem Rechteck sind dies beispielsweise die Argumente x, y, width und height. class Rechtangle: def __init__(self, x, y, width, height): self.x = x self.y = y self.width = width self.height = height # Erzeugen Sie eine Methode, die die Attribute Ihrer Form als Zeichenfolge (str) zurückgibt. def atributs_as_string(self): return str(self.x, self.y, self.width, self.height) # Außerdem müssen Sie diese Attribute beim Erstellen eines Objekts der Klasse übergeben können. recht_1 = Rechtangle(5, 10, 50, 100) # wir erzeugen Objakt recht_1 print(recht_1.atributs_as_string)
Ich bitte um Hilfe und Korrektur.
-
Mit dem Ersetzen von \ durch / im Pfad zur Textdatei - scheint es besser funktioneren...
-
-
vor 9 Minuten schrieb Alaric:
dort wo du den Dateinamen angegeben hast, kannst du entweder den vollständigen Pfad oder den relativen Pfad zur Datei angeben.
Sprich C \ ……… \ AppData \ Local \ Programs \ Python \ Python38 \ exersices\my_hope.txt
(Bitte korrigiere den Pfad aber richtig)
Danke, gemacht, .... und was wäre jetzt falsch?:
Der Zeiger weisst auf Doppelpunkt hin:
-
Hallo,
ich arbeite das Thema Schreiben und Lesen von Informationen in eine Datei (Python).
Zuerst mit Hilfe der Methode read().
# Erstellen Sie eine Textdatei filename1.txt mit Ihrem Lieblingslied (manuell, via ?Explorer?) und # versuchen Sie, den Inhalt vollständig und Zeile für Zeile mit den Methoden auszugeben: # read() readline() readlines() for myFile1 = open('my_hope.txt') print(myFile1.read())
Ich habe eine Textdatei „my_hope.txt“ erstellt und wollte, damit das Programm Zeilen / Text zurückgibt.
Was mir nicht ganz klar ist:: wovon kennt Python: wo (Pfad, Ordner) ich die Datei 'my_hope.txt' gespreichert habe?: um die Texte von dort aus lesen zu können? Hier habe ich es hier gespeichert: C \ ……… \ AppData \ Local \ Programs \ Python \ Python38 \ exersices
Muss ich den Pfad in einer Form dem Python-Programm mitteilen? Wenn ja : dann wie?
Wenn ich den RUN-Befehl ausführe, erhalte ich eine Fehlermeldung.
-
vor 5 Stunden schrieb _n4p_:
nein, warum überhaupt?
nein, das geht nicht. age(i) wäre ein funktionsaufruf kein array. man braucht auch kein array. man kann die summe direkt in der schleife nach der eingabe bilden.
das ist zum einen falsch eingerückt und das musst du auch nicht selbst machen, die for schleife springt am ende selbst zum nächsten element.
das müsste eigentlich range(Nr_Tickets) sein und es fehlt ein doppelpunkt
wenn du dort hin kommst, ist das alter nicht unter 18, den ersten teil kannst du also weglassen
damit legst du dir selbst steine in den weg, du hast jetzt 3 variablen in denen ein preis stehen könnte, die aber andernfalls nicht existieren. Das wird schwieriger als nötig damit eine summe zu bilden.
wie schon gesagt wurde, schreib mal auf was deiner meinung nach das programm machen muss um die aufgabe zu erfüllen.
Herzlichen Dank, besonders fürs Wegstreichen von i += 1 und fürs : bei der Beingung
price_common = 0 Nr_Tickets = int(input("please enter which number of tickets do you need: ")) for i in range (Nr_Tickets): age_for_ticket = int(input("For which age is a needed Ticket №{i}? : ")) while True: if age_for_ticket < 18: print('entry free of cost') break elif 18 <= age_for_ticket < 25: print('your costs are 99 EU per Ticket') price_common += 99 break elif 25 < age_for_ticket: price_common += 139 print('your costs are 139 EU per Ticket') break continue if Nr_Tickets > 5: price_common = price_common - (price_common * (20 / 100)) print('zu zahlen ist die Summe mit Ermäßigung von 20% für Gruppen mit Personenzahl >5: ', price_common) else: print('Summe zu Zahlen, in EU: ', price_common)
Man kann hier prüfen ob bei der Eingabe von Personenzahl und vom Alter Datentyp == int ?
Aber dazu käme ich schon morgen. Ginge das irgendwie einfach ohne try-except ?
-
vor 4 Stunden schrieb Visar:
Eine Sache lässt sich in jedem Fall sagen:
Es ist mit ziemlicher Sicherheit schlechter Stil, zwischen Sprachen hin- und herzuwechseln.
Deutsch, Englisch, Englisch, Deutsch.Ansonsten kann ich meinen Vorrednern wenig hinzufügen.
Wirre Syntax, kein richtiger Ansatz erkennbar und zu allem Überfluss Namen, die PEP8 zum Weinen bringen.Ja, ich habe einige Kommentare auf Deutsch übersetzt.
-
vor 12 Stunden schrieb Rienne:
Genau das! Darum auch die Frage, wie die Ausgangslage beim TO ist und meine allgemeinen Hinweise. Da wurde sich keine konzeptionell Gedanken über einen möglichen Algorithmus gemacht. Da hilft es dann auch nichts, wenn man auf Python-spezifische Syntax eingeht, wenn der grundlegende Ablauf nicht einmal klar ist.
@ankon erläutere doch bitte erst einmal, wie du dir gedacht hast, die Aufgabe zu lösen. Befindest du dich in einer Ausbildung oder einer Umschulung? Ist das eine Schulaufgabe? Willst du dir einfach so das Programmieren beibringen?
ja, ich wollte gerade mich mit weiteren Ablauf weiter beschäftigen, jetzt ist mir nicht alles klar wie. Ich beginne, dann: Stück für Stück weiter. Fragen "wie" - gehört auch dazu, oder? Ja, ich stelle mir jetzt nur Fragmente klar, die ich weiter entwickeln und korrigieren muss.
-
vor 13 Stunden schrieb Whiz-zarD:
Ich bin jetzt auch kein Python-Experte aber ich wüsste nicht mal, was ich dazu schreiben sollte, da
- das Programm nicht mal fertig ist. Das meiste ist auskommentiert
- die Zeilen, die durchlaufen werden, voller Syntaxfehler sind
Ich nehme mal an, dass das Programm nicht mal gestartet wurde. Auf welcher Basis soll man denn nun Tipps geben?
Danke. Ja das Programm ist nicht fertig. Ich habe Teil_Eingabe geschrieben und Logik von Preis(vom Alter) und noch einige Stücke die aus das was ich durchgeschaut habe - nutzlich sein könnte. Und Syntaxfahler - klar gibt es: denn ich bin ganz frische Anfänger, welcher sowas noch nicht geschrieben hat.
Ich koche und erarbeite Gedanken, was ich in Richtung der Lösung mache.
-
vor 12 Stunden schrieb Rienne:
Hallo,
ich hätte ein paar Fragen, damit ich einschätzen kann, was für eine Hilfestellung man dir geben kann. Welche Vorkenntnisse hast du? In welchem Zusammenhang sollst du diese Aufgabe lösen?
Als kleiner Hinweis: Ich würde mir erst einmal abseits von irgendeiner Programmiersprache überlegen, wie der Ablauf von einer solchen Aufgabenstellung sein soll und darauf aufbauend überlegen, was für Variablen du benötigst und wann welche Kontrollstruktur zum Einsatz kommen sollte. Wenn man das für sich visualisiert hat und entsprechend programmiert, kann man sein Coding anschließend auch debuggen und prüfen, ob an den entsprechenden Stellen auch wirklich das passiert, was man möchte. Und wenn nicht, schaut man sich genauer an, ob man es falsch programmiert hat oder schon in der Planung ein Denkfehler war.
Ich kenne mich nicht mit Python aus, aber was mir direkt auffällt: Du lässt eine Zahl eingeben (int), behandelst diese aber dann wie eine Liste? Wofür brauchst du die Variablen first und count? Aus Sicht der Verständlichkeit: Du sollst je Ticket das Alter des Besuchers abfragen (der ja nicht automatisch derjenige ist, der die Tickets kauft), aber hast als Abfrage "Enter your age"?
Danke für die ausführliche Antwort. Ich bin ganz Anfänger. Ich habe das Thema Datentypen durchgearbeitet. Jetzt arbeite ich das Thema Schleifen und Bedingungen und habe einige Programmbeispiele durchgeschaut. Jetzt bin ich dran, selbst erste Programme zu schreiben: Lerning by Doing
-
Hallo,
ich beginne folgende Aufgabe zu lösen, nun benötige ich Ihre Hilfe/korrekturen auf dem Weg zur entgültigen Klarheit.
Man muss ein Programm (auf Python) zu schreiben, welches das gesammte/summare Tickets-Kosten berechnet. Das Programm muss wie folgt arbeiten:
1. Zuerst soll der Benutzer befragt werden: wie viel (Anzahl) der Tickets will er für die Konferenz kaufen.
2. Weiter, für jedes Ticket wird es nach Alter des Besuchers befragt. Gemäß dem Alter des Besuchers werden Preiskathegorien gewählt:
- Falls besucher jünger als 18 Jahre alt ist - dann kommt er zur Konferenz kostenlos
- Falls Alter des Besuchers vom 18 bis 25 Jahre Alt: - dann der Preis pro Ticket 99 EU
-Falls Beucher älter als 25 J.A.: - dann beträgt der Preis: 139 EU
Im Resultat am Ende soll die gesammte Summe (für alle bestellte Tickets) herausgegeben werden. Falls es kommen mehr als 5 Personen zusammen - dann soll die Gruppe 20% Ermäßigung bekommen.
Unten ist mein Anfang, Roh- Variante. Ich sammle Tipps, Korrekturen und Ideen für die weitere Code-Entwicklung:
Nr_Tickets = int(input("please enter which number of tickets do you need: ")) first = Nr_Tickets[0] # speichern vom ersten Ticket count = 0 # Zähler Setzen result = '' # resultierende Zeile for i in range Nr_Tickets # Idea: to go all Nr_Tickets through and to ask for age for each Ticket age(i) = int(input("please enter your age: ")) i += 1 # Then needed to count Tickets in each age-cathegory. # After it to add Prices in each AgeCathegory and in all Age-Cathegories. How to realise it? # if age < 18: # Preis_a18 = 0 # print('entry free of cost') # elif 18 <= age < 25: # Preis_18a25 = 99 # print('your costs are 99 EU per Ticket') # else: # Preis_a25 = 139 # print('your costs are 139 EU per Ticket')
-
vor 3 Stunden schrieb ankon:
Danke.
Ja, so funktioniert die Eingabe, aber in Roh-Variante (vom Aufgabensteller) steht es so: text = input()
......
Ah... danke. Jetzt scheint es zu funktionieren. Aber auch triviale Fehler/Pech muss man ab und zu hinter sich lassen.
-
vor 47 Minuten schrieb _n4p_:
Danke.
Ja, so funktioniert die Eingabe, aber in Roh-Variante (vom Aufgabensteller) steht es so: text = input()
......
-
ich mache eine Übung auf Python, aber es sind anscheinend Fehler drin.
# Schreiben Sie Programm, welches eine eingegebene Reihe von Symbolen komprimiert # An Eingang wird folgend aussehende Reihe von Symbolen eingegeben: # aaabbccccdaa # Zu ausgeben ist ein String. welches aus Symbolen (von eingegebenen String) # und von der Anzahl der Widerholungen dieser Symbolen besteht. wie z.B.: # a3b2c4d1a2 # -------------------------------------------------------------- text = input() # Wir erhalten eingegebenen Zeile/String <= ?!!! I think hier could be an error!!! # I expect hier a possibility for input an str., but there isn't any possibility... # with this kind of input() - it seems to not run !! # text = map(int, input().split()) # second option: Wir erhalten eingegebenen String first = text[0] # Speichern von ersten Symbol count = 0 # Zähler setzen result = '' # und resultierende String for symb in text: if symb == first: # Falls Symbol == gespeicherten Symbol count += 1 # Zähler wird um 1 größer else: result += first + str(count) # sonst - speichern Ergebnis first = symb # und erneuern das gespeicherte Symbol mit seinem Zähler count = 1 result += first + str(count) # und ergänzen ins Ergebnis das letzte Symbol print(result)
---------------------------------------------------------------------------------------------------
Vor allem in folgendem Fragment erwarte ich die Eingabe, aber es ist leider keine Eingabemöglichkeit von einer Reihe aus Zahlen.... und Programm scheint lange zu laufen
Ich habe das Fragment
text = input() # Erhalten String print(text)
als separates Programm ausprobiert, aber das Ergebnis ist ähnlich...
Was ist hier falsch? Bitte um Hilfe.
-
Danke. Ich stelle es so vor, dass z.B. ein Sensor (Temperatur- oder Entfernungsmess- Sensor o.a.) an Input-Pin vom Mikrokontroller die hex-Werte liefert.
Ein Mikrokontroller leisst das ein und wandelt in analogen Wert 0 - 5V um... und liefert das an seinen analogen Output.
Nach ungefähr solche C++ logik suche ich Beispiele.
-
Hallo,
ich suche ein Code-Beispiel auf C++ von D->A Wandler für einen abstrakten Mikrokontroller (egal welcher, egal welche Pinbelegung).
Ich wollte zuerst mit Programm-Logik kennenlernen: am Eingangspin kommen hexadezimale Zahlen und es sollte in eine analoge Spannung umgewandelt werden.
Meine Frage wäre: kennt Ihr solche Code-Muster? Oder Links im Internet auf solche?
-
Herzlichen Dank.
Ah so?: scheint geklappt zu sein....:
Aber... habe ich die Console/Eingabeaufforderung before anders aufgerufen? - Nein... nur mit Pfade habe ich versucht, dem Buch zu folgen...
Also, als Rezept ein Script über Eingabeaufforderung/Console auszuführen - kann ich mir merken:
Pfad auf python.exe (und python.exe am Ende) Pfad auf zeit_01.py (und zeit_01 am Ende)
Ehrlich gesagt erwartete ich ursprunglich, dass der Scripr Selbst indiziert sein wird, und vielleicht dann wird der Script ausgeführt. Jetzt klar: CodeText/Script soll nicht in dem Fall indiziert werden.
Nur noch Frage: Console = Eingabeaufforderung?
-
vor 6 Minuten schrieb el_pollo_diablo:
Wie von @Listener bereits geschrieben wurde, sollte sich Dein Skript aus der Windows-Eingabeaufforderung so aufrufen lassen.
Danke.
So: Start -> cmd ? So habe ich gemacht
-
vor 9 Stunden schrieb Whiz-zarD:
Was steht denn überhaupt in zeit_01.py?
Einfaches Programm;
import time
print("Die aktuelle Uhrzeit")
print(time.asctime()) -
-
vor 3 Stunden schrieb charmanta:
Du machst das auf einem Windows Rechner, nicht unter Linux. Hast Du denn ein Python für Windows installiert welches auch von der Eingabe lesen kann ?
Wenn ja dann fehlt Dir der Pfad zum Python
https://www.pythoncentral.io/execute-python-script-file-shell/
Danke.
Ja, ich habe Python für Windows installiert, welches auch von der Eingabe lesen kann - ich denke so.
Hier ist Pfad wo Python installiert wurde:
und hier ist weiterer Versuch, die Datei zeit_01.py zu öffnen:
Bitte um Hilfe.... was ist bei mir falsch in: >>> set PATH=C:\Python39\Übungsbeispiele_Programme_Projekte;%PATH% ?
gewählte Elemente der vorgegebenen Liste ausgegeben
in Skript- und Webserverprogrammierung
Geschrieben
Danke!