Page 1 of 3

Programmiersprache Python

Posted: Thu 12. Apr 2012, 21:40
by Optimus Prime
Moin,

Ich Arbeite grad mit der Programmierprache Python und hab eine kleine Aufgabe von meinem Anleiter bekommen, leider komme ich nicht weiter und zwar muss ich
Eine liste mit namen erstellen
wenn ich diese Liste erstellt hab, soll diese liste in eine Datei angezeigt werden
Wenn die namen in der Liste Angezeigt wurden sind soll sie überprüft werden, wenn man ein neuen namen einfügen will ob dieser name schon in dieser Datei existiert, wenn ja dann soll er etwas aus geben, wenn dieser name nicht in der Liste vorhanden ist, dann soll diese name ergänz werden.

Code: Select all

if (12 > 1):
    Datei = open("test.txt", "w")
    Datei.write("Hallo weltab")
    Datei.close()
    print("richtig")
else:
    print("falsch")


"listA" = ["Guten", "morgen", "Welt", "Hallo"]
print(listA)
wie soll ich das verbinden ich kann leider in dem befehl Datei.write("Hallo welt") eine sache eingeben, wie kann ich die liste verbinden


Falls jemand python kann dann bitte kurz die Aufgabe(n) angucken

Danke :D

Re: Programmiersprache Python

Posted: Thu 12. Apr 2012, 22:40
by FreundBlase
Bis wann hasten da Zeit? Hab mal vor ner Weile ne ganze Menge in Python gemacht, allerdings eher mathematisches Zeug und müsste mich jetzt nochmal reinarbeiten.

Hab noch die Vorlesungsunterlagen und Übungsaufgaben, da haben wir auch Datei-Lese-Vorgänge usw gemacht ... Komme vllt am Wochenende mal dazu ;)

Grüße,
Ali

Re: Programmiersprache Python

Posted: Fri 13. Apr 2012, 14:39
by HansDampf40
Hallo,
ich habe zwar keine Ahnung von Python, aber vom Grundaufbau sollte das fast überall gleich sein, daher mal mein grober Gedankengang.

Erst nochmal ob ich das richtig verstanden habe:

1. Eingabe Name:
- Donald
- Micky
- Goofy

2. Name in Textdatei schreiben

3. Eingabe Name
- Donald
- Pluto

4. Name überprüfen
- Donald --> Augabe "Tut mir leid, Name schon vorhanden"
- Pluto --> Name zur Liste hinzufügen

Soweit richtig verstanden ?

A) Eingabe Name
B) Textdatei erstellen (Datei.open)
C) Name in Datei eintragen --> Zeilenweise (writeline ?? )
D) Textdatei speichern
E) Eingabe Name
F) Textdatei laden
G) Name Zeilenweise auslesen (readline ?? )
H1) Direkt den neuen Namen mit jeder Zeile vergleichen
H2) Jeen Namen erstmal in ein Array speichern und diesen dann mit dem neuen Namen vergleichen
I1) Name an Datei anhängen
I2) Ausgabe "Name schon vorhanden"

Müsstet nur schauen, ob es dafür passende Befehle gibt ;-)

Vielleicht hilft das ja auch weiter:

http://openbook.galileocomputing.de/pyt ... 41f3bae93b" onclick="window.open(this.href);return false;

Gruß

HD

Re: Programmiersprache Python

Posted: Fri 13. Apr 2012, 18:54
by Optimus Prime
HansDampf40 wrote:Hallo,
ich habe zwar keine Ahnung von Python, aber vom Grundaufbau sollte das fast überall gleich sein, daher mal mein grober Gedankengang.

Erst nochmal ob ich das richtig verstanden habe:

1. Eingabe Name:
- Donald
- Micky
- Goofy

2. Name in Textdatei schreiben

3. Eingabe Name
- Donald
- Pluto

4. Name überprüfen
- Donald --> Augabe "Tut mir leid, Name schon vorhanden"
- Pluto --> Name zur Liste hinzufügen

Soweit richtig verstanden ?

A) Eingabe Name
B) Textdatei erstellen (Datei.open)
C) Name in Datei eintragen --> Zeilenweise (writeline ?? )
D) Textdatei speichern
E) Eingabe Name
F) Textdatei laden
G) Name Zeilenweise auslesen (readline ?? )
H1) Direkt den neuen Namen mit jeder Zeile vergleichen
H2) Jeen Namen erstmal in ein Array speichern und diesen dann mit dem neuen Namen vergleichen
I1) Name an Datei anhängen
I2) Ausgabe "Name schon vorhanden"

Müsstet nur schauen, ob es dafür passende Befehle gibt ;-)

Vielleicht hilft das ja auch weiter:

http://openbook.galileocomputing.de/pyt ... 41f3bae93b" onclick="window.open(this.href);return false;

Gruß

HD
Cool danke, doch genau diese Befehele brauch ich ja der Python interpreter nimmt das sehr genau, schon bei der kleinsten (falsch) einrückung gibt er eine Fehelermeldung aus.

Und wenn ich mich nicht Ihre dann waren das befehle aus Csharp sowie C++ :D

bin grad soweit

Code: Select all

fobj = open("woerterbuch.txt", "r") 
for line in fobj: 
    print (line) 
fobj.close()
hab eine datei namens woerterbuch.txt erstellt in der die Länder usw. stehen, wie kann ich diese datei erweitern oder eine abfrage erstellen, das wenn ich ein weiteres land eintrage das es mir sagt das dieses schon existiert.

hab dieses beispiel ausprobiert doch er sagt mir dann immer das das raw_ input oder das wort : wort nicht definiert ist.

Code: Select all

woerter = {}

fobj = open("woerterbuch.txt", "r") 
for line in fobj: 
    line = line.strip() 
    zuordnung = line.split(" ") 
    woerter[zuordnung[0]] = zuordnung[1] 
fobj.close()

while True: 
    wort = raw_input("Geben Sie ein Wort ein: ") 
    if wort in woerter: 
        print "Das deutsche Wort lautet:", woerter[wort] 
    else: 
        print "Das Wort ist unbekannt"
Danke HD, bräuchte sie bis sontag :) wenn es recht wäre FreundBlase

Re: Programmiersprache Python

Posted: Sat 14. Apr 2012, 08:54
by HansDampf40
Mach es doch wie in jeder Sprache, baue dir Zwischenergebnisse ein.

Sprich, du lässt dir die Inhalte aller Variablen anzeigen, nachdem sie erzeugt wurden.

Also erstmal schauen, was bekommst du am Anfang überhaupt als Objekt zurück, bzw. der was steckt in "zuordnung" drin.

Dann lass dir doch auch einfach mal wort ausgeben an verschiedenen Stellen.

Re: Programmiersprache Python

Posted: Sat 14. Apr 2012, 12:21
by Seko
Heyho!

Ich kann zwar auch kein Python, aber der grundaufbau ist, wie die vorgänger schon beschrieben, in der Regel gleich.
Warum nur so kompliziert? Wenn ich das richtig verstanden habe, geht es darum, dass eine Eingabe mit den Werten in einer Datei verglichen wird.

1. [INPUT]
2. Schauen ob Datei existiert -> Wenn nicht, anlegen
3. Datei zum lesen und schreiben öffnen
4. Schleife mit filepointer bis eof
5. Line mit Eingabe vergleichen
6. Wenn gefunden, Datei schließen und irgendwas machen
7. Wenn nichts gefunden, eingabe mit Append an´s dateiende schreiben -> Datei schließen

Hoffe, ich hab das richtig verstanden.

lg, Seko

Re: Programmiersprache Python

Posted: Sat 14. Apr 2012, 15:43
by Optimus Prime
HansDampf40 wrote:Mach es doch wie in jeder Sprache, baue dir Zwischenergebnisse ein.

Sprich, du lässt dir die Inhalte aller Variablen anzeigen, nachdem sie erzeugt wurden.

Also erstmal schauen, was bekommst du am Anfang überhaupt als Objekt zurück, bzw. der was steckt in "zuordnung" drin.

Dann lass dir doch auch einfach mal wort ausgeben an verschiedenen Stellen.
hab ein sogenanntes Wörterbuch erstellt in dem einige wörter stehen, es ausgeben lassen, schon geprüft ob die datei (beispiel.txt) überhaupt existiert und auch geschaft wörter reinzu schreiben, doch dieses inneinander packen, das klappt leider nicht. :(

Re: Programmiersprache Python

Posted: Sat 14. Apr 2012, 16:31
by Optimus Prime
so bin schon weiter gekommen

in diesem block schreibt er die wörter rein, so das sie schomal drin stehen

Code: Select all

import os


import pickle
mydict = {"house" : "Haus", "cat":"Katze", "black":"schwarz"}
Buch = open("BD.txt","bw")
pickle.dump(mydict,Buch)


in diesem block prüft er den abstand/zuordnung der Wörter, wie zum beispiel so, es sollte so aussehen "cat": "katze"

Code: Select all

Buch = open("BD.txt", "w") 
for line in mydict: 
    line = line.strip() 
    zuordnung = line.split(":") 
    mydict[zuordnung[0]] 
Buch.close()
Das ist dann die abfrage: ob das wort existiert und wie das Wort auf englisch heist

Code: Select all

while True: 
    wort = input("Geben Sie ein Wort ein: ") 
    if wort in mydict: 
        print ("Das deutsche Wort lautet:"), mydict[wort] 
    else: 
        print ("Das Wort ist unbekannt")

Die Wörter werden gespeichert, doch dann wenn ich die abfrage mache dann wird das wort nicht mehr erkannt.

Re: Programmiersprache Python

Posted: Wed 18. Apr 2012, 13:43
by Optimus Prime
bin momentan so weit

kann mir jemand helfen

Code: Select all

dict = {'key2':'Wert2', 'key1':'Wert1','key3':'Wert3', 'key4':'Wert4'}

import sys

def buchslesen (key,value):
    Buch = open("datei2.txt", "r")
    Buch.readlines()
    return Buch

def worteingeben (dict):
    key = input("Geben Sie ein Wort ein: ")
    if key in dict:
        print ("Das deutsche Wort dafür lautet:"), dict[key]
        print (dict[key]);
    else:
        print ("Das Wort existiert nicht in meinem Wörterbuch")
        "einfügen" == input("Möchten Sie das Wort einfügen") 
        buchschreiben(key,'value')
        dict.append = {'key5':'Wert5'}

print("Herzlich willkommen")
"begin" == input("Möchten Sie anfangen")
if ("ja"):
    print(" ")
    dict = buchslesen
    worteingeben(buchlesen)
else:("nein")
sys.exit()
ende(worteingabe)
print("schade... dann beim nächsten Mal")


def ende():
    sys.exit("message")
    os._exit()
 



def buchschreiben (key,value):
    Buch = open("datei2.txt", "w") 
    Buch.write(key + " " + value + "\n")




Re: Programmiersprache Python

Posted: Wed 18. Apr 2012, 14:34
by FreundBlase
Was haut denn nicht hin?
Und warum machst du das ganze eigentlich in Python? Würde sich nicht eher Delphi für sowas anbieten?!
Ich kenn Python eher für mathematische Sachen, DGL lösen, Integrale, Diagramm usw.

Tut mir echt leid, dass ich mich noch nicht weiter mit beschäftigt habe, aber ich muss echt zusehen, dass ich mit meiner DA zu Rande komme :(