Προς το περιεχόμενο

Πρόβλημα σε Python


ffl

Προτεινόμενες αναρτήσεις

Δηλώνω άσχετος σε python.

Έχω ένα script (δε το έχω φτιάξει εγώ) που το εκτελώ στο κινητό android. Παίρνει σαν είσοδο ένα αρχείο και βγάζει μια αναφορά. Δουλεύει μια χαρά.

Τo ίδιο script αν δοκιμάσω να το εκτελέσω σε win10 μου βγάζει αυτό:

Traceback (most recent call last):
  File "C:\Users\demi\Desktop\myscript.py", line 251, in <module>
    raw_attendance = read_data(logfile)
  File "C:\Users\demi\Desktop\myscript.py", line 142, in read_data
    for line in log:
  File "C:\Users\demi\AppData\Local\Programs\Python\Python39\lib\encodings\cp1253.py", line 23, in decode
    return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x9c in position 4184: character maps to <undefined>

Απ ότι καταλαβαίνω έχει να κάνει με την κωδικοποίηση λόγω των ελληνικών που έχει το αρχείο εισόδου. Αλλά δεν είμαι και σίγουρος.

Με μερικά αρχεία εισόδου που έχουν μόνο λατινικά δουλεύει όμως.

Φαντάζομαι θα είναι κάποια ρύθμιση. Μπορεί κάποιος να βοηθήσει;

Ο βασικός μου στόχος είναι να το εκτελέσω σε Linux αλλά εκεί έχω άλλο θέμα. Δε δουλεύει καθόλου, αλλά θα ανοίξω άλλο θέμα μάλλον. Ας το κάνουμε να δουλέψει σε win και βλέπουμε για το linux

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημοσ. (επεξεργασμένο)
raw_attendance = read_data(logfile, encoding='UTF-8')

Πρόσθεσε το encoding='UTF-8' στην εντολή που διαβάζει το αρχείο

To read_data μάλλον είναι κάποια function, οπότε ψάξε σε αυτή τη function ποια εντολή διαβάζει το αρχείο (read_csv, read_json, κλπ) και πρόσθεσε το encoding='UTF-8'

Επεξ/σία από archer100
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...