Ατιμετωπίζω δυσκολία σε ένα πρόβλημα

...ασύγχρονα μαθήματα python

Ατιμετωπίζω δυσκολία σε ένα πρόβλημα

Δημοσίευσηαπό petrosser » 05 Μάιος 2020, 23:28

Το πρόβλημα λέει:

Γράψτε πρόγραμμα το οποίο να διαβάζει το αρχείο inputdata.txt (τα δεδομένα του να είναι της μορφής μέσα στο txt):
1.5
2
3.78
4.1
5.28
6.5
7.2
8.89
9.23
10.5

και το output.txt (να έχει τη μορφή):
Μέσος όρος:
Τυπική απόκλιση:


και στη συνέχεια:
Α) να υπολογίζει τον μέσο όρο και την τυπική απόκλιση της κατανομής των τιμών που διαβάστηκαν από το αρχείο inputdata.txt, και
Β) να δημιουργεί το αρχείο outputdata.txt όπου να αποθηκεύει τις τιμές του μέσου όρου και της τυπικής απόκλισης (επίσης όπως φαίνεται στην εικόνα).

ΠΡΟΣΟΧΗ στα ΟΝΟΜΑΤΑ
Χρησιμοποιείστε ΟΠΩΣΔΗΠΟΤΕ τα παρακάτω ονόματα αλλιώς ο κώδικάς σας δεν θα βαθμολογηθεί:
Ονομάστε inputdata.txt το αρχείο με τα δεδομένα εισόδου που διαβάζονται από το πρόγραμμά σας.
Ονομάστε outputdata.txt το αρχείο με τα δεδομένα εξόδου που γράφει το πρόγραμμά σας σε αυτό το αρχείο.

ΥΠΟΔΕΙΞΕΙΣ
Αρχικά, και για να εκτελεστεί ο κώδικάς σας, δημιουργείτε εσείς το αρχείο inputdata.txt με απλό τρόπο με κάποιο πρόγραμμα, πχ. με το notepad, ώστε να έχει τις τιμές που φαίνονται στην εικόνα.
Οι τιμές μέσου όρου και τυπικής απόκλισης να αποθηκευθούν με ακρίβεια τρίτου δεκαδικού.
petrosser
babeTUX
babeTUX
 
Δημοσιεύσεις: 11
Εγγραφή: 05 Μάιος 2020, 23:12
Εκτύπωση

Re: Ατιμετωπίζω δυσκολία σε ένα πρόβλημα

Δημοσίευσηαπό Maras » 06 Μάιος 2020, 02:59

Σε ποιο σημείο κόλλησες?
“Long is the way, and hard, that out of hell leads up to light.”
Άβαταρ μέλους
Maras
saintTUX
saintTUX
 
Δημοσιεύσεις: 1460
Εγγραφή: 25 Ιούλ 2017, 12:49
Εκτύπωση

Re: Ατιμετωπίζω δυσκολία σε ένα πρόβλημα

Δημοσίευσηαπό petrosser » 06 Μάιος 2020, 21:54

Maras έγραψε:Σε ποιο σημείο κόλλησες?


Δε μου τρέχει, μου βγάζει error. Μου έχουν πει ότι είναι λάθος το ότι γράφω τη map, γιατί στη python 3 δε γυρνάει σε list, αλλά δε ξέρω τι χρειάζεται να κάνω για να το αλλάξω. Είμαι σχετικά νέος στη python. Έχω γράψει αυτό:


import statistics

with open('inputdata.txt', 'r') as f:
data = f.read().splitlines()

data = list(map(float, data))

rc1 = str(statistics.mean(data))
rc2 = str(statistics.stdev(data))

output = ['Μέσος όρος = ', rc1, '\n', 'Τυπικη απόκλιση = ', rc2, '\n']

file = open('outputdata.txt', 'w')
file.writelines(output)
petrosser
babeTUX
babeTUX
 
Δημοσιεύσεις: 11
Εγγραφή: 05 Μάιος 2020, 23:12
Εκτύπωση

Re: Ατιμετωπίζω δυσκολία σε ένα πρόβλημα

Δημοσίευσηαπό Maras » 06 Μάιος 2020, 22:04

Δεν έχεις σωστά identation μετά την άνω και κάτω τελεία θέλει κενό απόσταση ενός tab.
Δοκίμασε έτσι :
Κώδικας: Επιλογή όλων
import statistics

with open('inputdata.txt', 'r') as f:
   data = f.read().splitlines()
data = list(map(float, data))
rc1 = str(statistics.mean(data))
rc2 = str(statistics.stdev(data))
output = ['Μέσος όρος = ', rc1, '\n', 'Τυπικη απόκλιση = ', rc2, '\n']
file = open('outputdata.txt', 'w')
file.writelines(output)
“Long is the way, and hard, that out of hell leads up to light.”
Άβαταρ μέλους
Maras
saintTUX
saintTUX
 
Δημοσιεύσεις: 1460
Εγγραφή: 25 Ιούλ 2017, 12:49
Εκτύπωση

Re: Ατιμετωπίζω δυσκολία σε ένα πρόβλημα

Δημοσίευσηαπό petrosser » 06 Μάιος 2020, 22:40

Maras έγραψε:Δεν έχεις σωστά identation μετά την άνω και κάτω τελεία θέλει κενό απόσταση ενός tab.
Δοκίμασε έτσι :
Κώδικας: Επιλογή όλων
import statistics

with open('inputdata.txt', 'r') as f:
   data = f.read().splitlines()
data = list(map(float, data))
rc1 = str(statistics.mean(data))
rc2 = str(statistics.stdev(data))
output = ['Μέσος όρος = ', rc1, '\n', 'Τυπικη απόκλιση = ', rc2, '\n']
file = open('outputdata.txt', 'w')
file.writelines(output)


και πάλι μου βγάζει αυτο το error:

Traceback (most recent call last):
File "C:\Users\pe\Desktop\ask\ask.py", line 24, in <module>
file.writelines(output)
File "C:\Users\pe\AppData\Local\Programs\Python\Python38\lib\encodings\cp1252.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode characters in position 0-4: character maps to <undefined>
petrosser
babeTUX
babeTUX
 
Δημοσιεύσεις: 11
Εγγραφή: 05 Μάιος 2020, 23:12
Εκτύπωση

Re: Ατιμετωπίζω δυσκολία σε ένα πρόβλημα

Δημοσίευσηαπό Maras » 06 Μάιος 2020, 22:59

Δοκίμασε έτσι :
Κώδικας: Επιλογή όλων
import statistics

with open('inputdata.txt', 'r',encoding="utf-8") as f:
   data = f.read().splitlines()
data = list(map(float, data))
rc1 = str(statistics.mean(data))
rc2 = str(statistics.stdev(data))
output = ['Μέσος όρος = ', rc1, '\n', 'Τυπικη απόκλιση = ', rc2, '\n']
file = open('outputdata.txt', 'w',encoding="utf-8")
file.writelines(output)
“Long is the way, and hard, that out of hell leads up to light.”
Άβαταρ μέλους
Maras
saintTUX
saintTUX
 
Δημοσιεύσεις: 1460
Εγγραφή: 25 Ιούλ 2017, 12:49
Εκτύπωση

Re: Ατιμετωπίζω δυσκολία σε ένα πρόβλημα

Δημοσίευσηαπό petrosser » 06 Μάιος 2020, 23:07

Maras έγραψε:Δοκίμασε έτσι :
Κώδικας: Επιλογή όλων
import statistics

with open('inputdata.txt', 'r',encoding="utf-8") as f:
   data = f.read().splitlines()
data = list(map(float, data))
rc1 = str(statistics.mean(data))
rc2 = str(statistics.stdev(data))
output = ['Μέσος όρος = ', rc1, '\n', 'Τυπικη απόκλιση = ', rc2, '\n']
file = open('outputdata.txt', 'w',encoding="utf-8")
file.writelines(output)


Μου βγάζει αυτό:

Traceback (most recent call last):
File "C:\Users\pe\Desktop\ask\ask.py", line 12, in <module>
file.writelines(output)
File "C:\Users\pe\AppData\Local\Programs\Python\Python38\lib\encodings\cp1252.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode characters in position 0-4: character maps to <undefined>

από ότι έχω καταλάβει, δε πρέπει να βλέπει τη data ως list γιατί χρησιμοποιώ τη map. προσπαθω να τη βγάλω τη map και να το φτιάξω αλλιώς, αλλά πάλι δε τα καταφέρνω
petrosser
babeTUX
babeTUX
 
Δημοσιεύσεις: 11
Εγγραφή: 05 Μάιος 2020, 23:12
Εκτύπωση

Re: Ατιμετωπίζω δυσκολία σε ένα πρόβλημα

Δημοσίευσηαπό Maras » 06 Μάιος 2020, 23:18

Βλέπω χρησιμοποιείς windows αλλά σε Linux τρέχει ο κώδικας κανονικά.
“Long is the way, and hard, that out of hell leads up to light.”
Άβαταρ μέλους
Maras
saintTUX
saintTUX
 
Δημοσιεύσεις: 1460
Εγγραφή: 25 Ιούλ 2017, 12:49
Εκτύπωση

Re: Ατιμετωπίζω δυσκολία σε ένα πρόβλημα

Δημοσίευσηαπό petrosser » 06 Μάιος 2020, 23:22

Maras έγραψε:Βλέπω χρησιμοποιείς windows αλλά σε Linux τρέχει ο κώδικας κανονικά.


???
να αλλάξω το encoding?
Ευχαριστώ εκ τον προτέρων για τη βοήθεια
petrosser
babeTUX
babeTUX
 
Δημοσιεύσεις: 11
Εγγραφή: 05 Μάιος 2020, 23:12
Εκτύπωση

Re: Ατιμετωπίζω δυσκολία σε ένα πρόβλημα

Δημοσίευσηαπό Maras » 06 Μάιος 2020, 23:25

Αυτό ήθελα να κάνω στον 2ο κώδικα που σου έστειλα, για δοκίμασε.
“Long is the way, and hard, that out of hell leads up to light.”
Άβαταρ μέλους
Maras
saintTUX
saintTUX
 
Δημοσιεύσεις: 1460
Εγγραφή: 25 Ιούλ 2017, 12:49
Εκτύπωση

Επόμενο

  • ΣΧΕΤΙΚΑ ΘΕΜΑΤΑ
    ΑΠΑΝΤΗΣΕΙΣ
    ΠΡΟΒΟΛΕΣ
    ΣΥΓΓΡΑΦΕΑΣ

Επιστροφή στο Μαθήματα python