f=open("numbers.txt")
L=f.readlines()
result=0
if 1<=N<=len(L):
for x in L[0:N-1]:
result += x
else:
for x in L:
result += x
f.close()
ποιο είναι το λάθος και μου βγάζει σφάλμα;
f=open("numbers.txt")
L=f.readlines()
result=0
if 1<=N<=len(L):
for x in L[0:N-1]:
result += x
else:
for x in L:
result += x
f.close()
ποιο είναι το λάθος και μου βγάζει σφάλμα;
f=open("numbers.txt")
L=f.readlines()
result=0
if 1<=N<=len(L):
for x in L[0:N-1]:
result += x
else:
for x in L:
result += x
f.close()
Συγγνώμη δεν κατάλαβα ακόμα το λάθος μου. Νομίζω πως το λάθος είναι ότι διαβάζει τα στοιχεία της λίστας ως strings και για αυτό δεν υπολογίζει το άθροισμα. Όμως δεν καταλαβαίνω πως μπορώ να το διορθώσω.
Ναι, και αυτό είναι λάθος, αλλά δεν το είδα πριν. Αν έχεις ένα string, το "123.4" για να το κάνεις πραγματικό αριθμό (float) λες απλά:
x = float("123.4")
και η μεταβλητή σου x έχει πάρει τιμή 123.4 (αριθμός, όχι string).
Το λάθος που σου σημείωσα είναι ότι αφήνεις την τελευταία θέση της λίστας χωρίς να την επεξεργαστείς.