Δημοσιεύτηκε: 07 Ιουν 2009, 18:15
από medigeek
Ευχαριστώ, διορθώθηκε. :)

Γενικώς δεν είναι καλό να το εφαρμόσετε ακόμη, μιας και τα περισσότερα λειτουργικά συστήματα που θα αναπαράγουν τον κώδικα δεν έχουν python3 ακόμη. :)

Το θέμα είναι ότι θέλει να πει πως στην python3 (δεν ισχύει για παλαιότερες εκδόσεις python2.x!!) υποστηρίζονται utf-8 χαρακτήρες:

random_utf8_characters_Յժջ٣ㄆㄘㄩڨڪწჭⴠςεζਫשׁມຣߓ߆ପବଭ

Κώδικας: Επιλογή όλων
$ python3
Python 3.0.1+ (r301:69556, Apr 15 2009, 17:25:52)
[GCC 4.3.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> random_utf8_characters_Յժջ٣ㄆㄘㄩڨڪწჭⴠςεζਫשׁມຣߓ߆ପବଭ = 1
>>> print(random_utf8_characters_Յժջ٣ㄆㄘㄩڨڪწჭⴠςεζਫשׁມຣߓ߆ପବଭ)
1
>>>


Μπορείς να το εφαρμόσεις και χωρίς το "# -*- coding: utf-8 -*-" το οποίο σας είπα ότι είναι αναγκαίο, αλλά είναι καλό να το χρησιμοποιείς:
Κώδικας: Επιλογή όλων

#!/usr/bin/python3
# -*- coding: utf-8 -*-
random_utf8_characters_Յժջ٣ㄆㄘㄩڨڪწჭⴠςεζਫשׁມຣߓ߆ପବଭ = 1
print(random_utf8_characters_Յժջ٣ㄆㄘㄩڨڪწჭⴠςεζਫשׁມຣߓ߆ପବଭ)


Πηγή:
http://docs.python.org/3.0/reference/le ... dentifiers
έγραψε:Identifiers (also referred to as names) are described by the following lexical definitions.

The syntax of identifiers in Python is based on the Unicode standard annex UAX-31, with elaboration and changes as defined below; see also PEP 3131 for further details.

Within the ASCII range (U+0001..U+007F), the valid characters for identifiers are the same as in Python 2.x: the uppercase and lowercase letters A through Z, the underscore _ and, except for the first character, the digits 0 through 9.

Python 3.0 introduces additional characters from outside the ASCII range (see PEP 3131). For these characters, the classification uses the version of the Unicode Character Database as included in the unicodedata module.

Identifiers are unlimited in length. Case is significant.


Σύγκριση με python2.6
- δε δουλεύει:
Κώδικας: Επιλογή όλων
#!/usr/bin/python2.6
# -*- coding: utf-8 -*-
random_utf8_characters_Յժջ٣ㄆㄘㄩڨڪწჭⴠςεζਫשׁມຣߓ߆ପବଭ = 1
print(random_utf8_characters_Յժջ٣ㄆㄘㄩڨڪწჭⴠςεζਫשׁມຣߓ߆ପବଭ)


- δε δουλεύει:
Κώδικας: Επιλογή όλων

#!/usr/bin/python2.6
# -*- coding: utf-8 -*-
random_utf8_characters_Յժջ٣ㄆㄘㄩڨڪწჭⴠςεζਫשׁມຣߓ߆ପବଭ = "Յժջ٣ㄆㄘㄩڨڪწჭⴠςεζਫשׁມຣߓ߆ପବଭ"
print(random_utf8_characters_Յժջ٣ㄆㄘㄩڨڪწჭⴠςεζਫשׁມຣߓ߆ପବଭ)

- δε δουλεύει:
Κώδικας: Επιλογή όλων

#!/usr/bin/python2.6
random_utf8_characters = "Յασασδժջ٣ㄆㄘㄩڨڪწჭⴠςεζਫשׁມຣߓSDFSDFsdfdf߆ପବଭφγφδγρρdsfsd"
print(random_utf8_characters)


- δουλεύει:
Κώδικας: Επιλογή όλων

#!/usr/bin/python2.6
# -*- coding: utf-8 -*-
random_utf8_characters = "Յασασδժջ٣ㄆㄘㄩڨڪწჭⴠςεζਫשׁມຣߓSDFSDFsdfdf߆ପବଭφγφδγρρdsfsd"
print(random_utf8_characters)


Σε python3 (με "#!/usr/bin/python3" στην πρώτη γραμμή) όλα τα παραπάνω δουλεύουν χωρίς πρόβλημα. ;)