<div>To  # -*- coding: iso8859-7 -*- αφορά το encoding που χρησιμοποιείς μέσα στο source σου. Για αρχεία, θα πρέπει αρχικά να ξέρεις το encoding του αρχείου. Αν υποθέσουμε ότι είναι και αυτό iso 8859-7 μπορείς να χρησιμοποιήσεις:</div>
<div><br></div><div><div>import codecs</div><div>reyma = codecs.open( "input", "r", "iso8859-7" )</div><div>line = reyma.readline()[:-1]</div><div>reyma.close()</div><div>print line</div><div>
<br></div><div>Αντίστοιχα αν το αρχείο είναι σε utf μπορείς να χρησιμοποιήσεις reyma = codecs.open( "input", "r", "utf-8" ) κτλ</div><div><br></div><div><div class="gmail_quote">2011/5/9 Thanasis Priftis <span dir="ltr"><<a href="mailto:thanasis.priftis@gmail.com">thanasis.priftis@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Καλησπέρα Νίκο,<br>
<br>
περνώ το μήυνμα σου στην λίστα και σε ανθρώπους που έχουν ήδη<br>
ασχοληθεί με κάτι ανάλογο<br>
<br>
Θανάσης<br>
<br>
2011/5/8 Νίκος Παχής <<a href="mailto:nikosokin@gmail.com">nikosokin@gmail.com</a>>:<br>
> Καλησπέρα σας.<br>
> Ετοιμάζω μια εφαρμογή για το olpc η οποία μου έχει ανατεθεί ως πτυχιακή<br>
> εργασία.<br>
> Υπάρχει κάποιο σημείο στο οποίο δεν μπορώ να βρω κάποια λύση και σας το<br>
> περιγράφω παρακάτω μήπως μπορεί κάποιος από<br>
> την κοινότητα να με βοηθήσει.<br>
> Στην εφαρμογή που 'στήνω' είχα κάποτε πρόβλημα με το να αναγνωρίζει τα<br>
> Ελληνικά (iso8859-7) και να μου τα εμφανίζει στο<br>
> Interface.<br>
> Αυτό το έλυσα χρησιμοποιώντας τη γραμμή :    # -*- coding: iso8859-7 -*-<br>
> στην αρχή του κώδικα και όταν ήθελα να δώσω σε μια μεταβλητή κάποια τιμή στα<br>
> Ελληνικά έδινα :<br>
> variable = u"ελληνική_λέξη"<br>
> και μου εμφάνιζε το 'ελληνική_λέξη' κανονικά στο interface σε κάποιο<br>
> gtk.Entry ή σε κάποιο gtk.Label.<br>
> Τώρα θέλω να τραβήξω κάποια λέξη από ένα αρχείο.<br>
> τα περιεχόμενα του αρχείου είναι έτσι:<br>
> ΝΙΚΟΣ<br>
> ΠΑΥΛΟΣ<br>
> ΧΡΗΣΤΟΣ<br>
> ΜΑΡΙΑ<br>
> ...<br>
> και το αρχείο είναι .txt<br>
> χρησιμοποιώντας λοιπόν αυτές τις εντολές :<br>
>         self.tempo=" "<br>
>         reyma = file("dictionary/doc.txt", "r")<br>
>         self.tempo = reyma.readline()[:-1]<br>
>         reyma.close()<br>
> διαπιστώνω ότι η μεταβλητή self.tempo έχει πάρει κανονικά τη λέξη, με την<br>
> εντολή len(self.tempo) που μου βγάζει το μήκος σωστό,<br>
> αλλά όταν πάω να την εμφανίσω στο interface σε ένα gtk.Entry για παράδειγμα,<br>
> δεν την εμφανίζει.<br>
> Αυτό συμβαίνει επειδή δεν κάνει unicode (δεν ξέρω αν χρησιμοποιώ τον<br>
> κατάλληλο όρο)<br>
> Εννοώ ότι αν ήθελα να περάσω μια λέξη στη μεταβλητή self.tempo μέσα στον<br>
> κώδικα, θα έγραφα :<br>
> self.tempo = u"Ελληνική_λέξη"<br>
> Τώρα στη περίπτωση που τραβάει Ελληνικά από το αρχείο τι μπορώ να κάνω?<br>
> Σας Ευχαριστώ.<br>
> Με εκτίμηση,<br>
> --<br>
> Νίκος Παχής<br>
> N. Pahis<br>
> <a href="mailto:nikosokin@gmail.com">nikosokin@gmail.com</a><br>
><br>
</blockquote></div><br></div></div>