Seite 1 von 1

Programm liest nicht aus

Verfasst: Donnerstag 4. März 2021, 11:47
von Acid700
]Hallo,

ich habe ein Programm für die uni fertig gestellt, welches einen Datensatz alysieren und auf drei Hythothesen testen soll.
Es läuft und wirkte aud mich auch richtig. Jedoch als ich zur Kontrolle die Variablen, welche ich definiert habe überprüfen wollte indem ich mir sie über print anzeigen ließ, stellte ich fest das alle nur Null waren. Das Programm hat die Daten also nicht richtig eingelesen.
Die liste ist eine CSV Datei mit kopfzeile, welche ich als txt datei gespeicher habe

Das ist der Code:

Code: Alles auswählen

completeFile = open("Datensatz1.1.txt", "r")

print(completeFile.read())

print("Deine Hypothsen lauten:")
print("1. Personen, welche als Parteipräferenz die Linke gewählt haben machen sich weniger Sorgen über die Zuwanderung von Flüchtlingen, als Personen die die AfD gewählt haben")
print("2. Männer machen sich mehr Sorgen über die Zuwanderung von Flüchtlingen als Frauen")
print("3. Männer verdienen mehr Geld als Frauen")

i = 0 # Linke
j = 0 # Rechte
k = 0 # Sorgen Linke
l = 0 # Sorgen Rechte
m = 0 # Männer
n = 0 # Frauen
o = 0 # Sorgen Männer
p = 0 # Sorgen Frauen
q = 0 # Verdienst Männer
r = 0 # Verdienst Frauen 

with open("Datensatz1.1.txt") as completeFile:
    # Linke machen sich mehr Sorgen als Rechte
    lines = []
    for line in completeFile:
        if line[4] == '15':
            i = i + 1
            k = k + line[5]
        if line[4] == '25':
            j = j + 1
            l = l + line[5]
    if k >= l:
        print("Hypothese 1 widerlegt!")
    else:
        print("Hypothese 1 trifft zu!")
    #Männer machen sich mehr Sorgen als Frauen & Männer verdienen mehr Geld als Frauen 
    for line in completeFile:
        if line[0] == '1':
            m = m + 1
            o = o + line[5]
            q = q + line[6]
        if line[0] == '2':
            n = n + 1
            p = p + line[5]
            r = r + line[6]
    if o >= p:
        print("Hypothese 2 trifft zu!")
    else:
        print("Hypothese 2 widerlegt!")
    if q >= r:
        print("Hypothese 3 trifft zu!")
    else:
        print("Hypothese 3 widerlegt!")
Ich bin blutiger anfänger und musste mir alles zusammensuchen damit es klappt also nicht wundern, dass es nicht so gut ist :D
Hat jemand eine Idee warum er die Liste nicht richtig liest?

Re: Programm liest nicht aus

Verfasst: Donnerstag 4. März 2021, 11:59
von Dennis89
Hallo,

wieso hast du die Verbesserungen, die man dir in deinem anderen Thema aufgezeigt hat nicht umgesetzt?
viewtopic.php?f=1&t=51456&p=383992#p383992

Grüße
Dennis

Re: Programm liest nicht aus

Verfasst: Donnerstag 4. März 2021, 12:28
von Acid700
Stimmt das habe ich vergessen. Hatte probleme die Tipps umzusetzen und dann erstmal so Probiert.
Danke für den Hinweis :)