Je programme depuis quelque temps en Python mais je ne parviens toujours
pas à comprendre à koi sert une classe, comment les utilisés (même avec
mon bouquoi de oreilly) et comment les réutiliser ! Bref je recherche un
coup de main:
-class...
-_self, ça veut dire koi?
-_init_ c'est koi ?
-_main_ c'est koi ?
-_repr_ c'est koi ?
-_print_ ça marcherai ?
- Classe doit retourner quelque chose ?
- Vous aurez des exemples/exercices afin de crée des classes ? ça
pourrait servir à faire koi comme programme ?
Rien que de très normal... Dans les deux appels, python va chercher la fonction dans le dictionnaire de la classe. La première fois, il cherche dans C, la seconde fois il cherche dans A. Ce n'est pas la surcharge qui est en cause. C'est la classe C qui surcharge, pas l'objet c !
-- Amaury
Bonjour,
J'ai un blème. Regarde le code ci-dessous. Le changement de classe annule la
surcharge de f()
C'est normal, ça ?
...
Rien que de très normal...
Dans les deux appels, python va chercher la fonction dans le
dictionnaire de la classe. La première fois, il cherche dans C, la
seconde fois il cherche dans A.
Ce n'est pas la surcharge qui est en cause. C'est la classe C qui
surcharge, pas l'objet c !
Rien que de très normal... Dans les deux appels, python va chercher la fonction dans le dictionnaire de la classe. La première fois, il cherche dans C, la seconde fois il cherche dans A. Ce n'est pas la surcharge qui est en cause. C'est la classe C qui surcharge, pas l'objet c !
-- Amaury
Bruno Desthuilliers
Peut-on comparer des classes a un oeuf ? La coquille emballe tout le système interne et propre a un oeuf !
Bravo, tu viens de découvrir l'encapsulation !-)
Mais en fait, c'est un poil plus compliqué...
Avant toute autre chose, une classe sert à: - créer des objets (on dit des 'instances' de la classe) - déterminer les propriétés des objets qu'elle crée.
Les valeurs de certaines de ces propriétés (les attributs de classe et les méthodes) seront communes à tous les objets instances de la classe (via l'attribut '__class__' de l'instance, qui pointe sur la classe). Pour les autres propriétés (attributs d'instance, généralement initialisés dans la méthode '__init__'), les valeurs seront propres à chaque instance.
Donc, la classe serait plutôt une poule, et les instances de la classe (les objets) les oeufs !-)
Mais en fait, c'est encore un poil plus compliqué...
Parce qu'en Python, *tout* est objet en fait. Donc, les classes aussi sont des objets - donc des instances d'une autre classe, qu'on appelle métaclasse (classe de la classe). Laquelle metaclasse est elle-même un objet... (pour éviter de boucler à l'infini, une métaclasse est une instance d'elle-même). Je m'arrête là avant que tu ne chopes le tournis, mais on n'a pas évoqué non plus l'héritage...
Peut-on comparer des classes a un oeuf ? La coquille emballe tout le
système interne et propre a un oeuf !
Bravo, tu viens de découvrir l'encapsulation !-)
Mais en fait, c'est un poil plus compliqué...
Avant toute autre chose, une classe sert à:
- créer des objets (on dit des 'instances' de la classe)
- déterminer les propriétés des objets qu'elle crée.
Les valeurs de certaines de ces propriétés (les attributs de classe et
les méthodes) seront communes à tous les objets instances de la classe
(via l'attribut '__class__' de l'instance, qui pointe sur la classe).
Pour les autres propriétés (attributs d'instance, généralement
initialisés dans la méthode '__init__'), les valeurs seront propres à
chaque instance.
Donc, la classe serait plutôt une poule, et les instances de la classe
(les objets) les oeufs !-)
Mais en fait, c'est encore un poil plus compliqué...
Parce qu'en Python, *tout* est objet en fait. Donc, les classes aussi
sont des objets - donc des instances d'une autre classe, qu'on appelle
métaclasse (classe de la classe). Laquelle metaclasse est elle-même un
objet... (pour éviter de boucler à l'infini, une métaclasse est une
instance d'elle-même). Je m'arrête là avant que tu ne chopes le tournis,
mais on n'a pas évoqué non plus l'héritage...
Peut-on comparer des classes a un oeuf ? La coquille emballe tout le système interne et propre a un oeuf !
Bravo, tu viens de découvrir l'encapsulation !-)
Mais en fait, c'est un poil plus compliqué...
Avant toute autre chose, une classe sert à: - créer des objets (on dit des 'instances' de la classe) - déterminer les propriétés des objets qu'elle crée.
Les valeurs de certaines de ces propriétés (les attributs de classe et les méthodes) seront communes à tous les objets instances de la classe (via l'attribut '__class__' de l'instance, qui pointe sur la classe). Pour les autres propriétés (attributs d'instance, généralement initialisés dans la méthode '__init__'), les valeurs seront propres à chaque instance.
Donc, la classe serait plutôt une poule, et les instances de la classe (les objets) les oeufs !-)
Mais en fait, c'est encore un poil plus compliqué...
Parce qu'en Python, *tout* est objet en fait. Donc, les classes aussi sont des objets - donc des instances d'une autre classe, qu'on appelle métaclasse (classe de la classe). Laquelle metaclasse est elle-même un objet... (pour éviter de boucler à l'infini, une métaclasse est une instance d'elle-même). Je m'arrête là avant que tu ne chopes le tournis, mais on n'a pas évoqué non plus l'héritage...
Pierre Barbier de Reuille
Des petites précisions par ci par là ...
Yves Lange wrote:
Je programme depuis quelque temps en Python mais je ne parviens toujours pas à comprendre à koi sert une classe, comment les utilisés (même avec mon bouquoi de oreilly) et comment les réutiliser ! Bref je recherche un coup de main:
Ce n'est pas un cours de Python qu'il te faut, c'est une intro à la programmation objet.
-class... -_self, ça veut dire koi?
s/_self/self/ (pas d'underscore devant)
littéralement : "moi-même"
'self' est (par convention) le nom donné à la référence sur l'instance courante dans une méthode.
-_init_ c'est koi ?
s/_init_/__init__/
Lequel ? le __init__.py d'un package, ou la methode __init__() d'une classe ?
Enfin, dans les deux cas, il s'agit d'initialiser... Le fichier __init__.py est ce qui fait d'un répertoire un package Python. Il peut être vide, ou contenir du code d'initialisation du package.
La methode __init__ est l'initialisateur (improprement appelé constructeur) d'une classe, c'est à dire la méthode qui est appelée lors de l'instanciation d'un objet, et qui permet d'initialiser l'objet.
Attention ! __init__ n'est certainement pas le constructeur ! En Python le constructeur est __new__, mais attention à ces arguments qui sont inhabituels !
-_main_ c'est koi ?
Rien que je connaisse. Par contre, '__main__' (note les quotes) est la valeur de la variable __name__ lor de l'exécution d'un script python - c'est à dire quand le fichier .py est exécuté, par opposition au cas où il est importé depuis un autre module, auquel cas __name__ est valorisé avec le nom du module.
Dans la pratique, ça permet de savoir si un fichier donné est utilisé comme programme principal ou comme module importé. Un idiome courant est:
def main(argv): # point d'entrée du programme (...) return 0
if __name__ == '__main__': import sys sys.exit(main(sys.argv))
Et bah t'aurais pu deviner ce qu'est __main__ dans ce cas ;)
En effet, __main__ est le nom du module créé par l'intepréteur au démarrage. Toutes les variables créées depuis l'interpréteur se retrouvent dans ce module __main__.
Pour tester, rien de plus simple :
import __main__ dir(__main__)
... (toutes les variables qui existent depuis l'interpréteur)
-_repr_ c'est koi ?
__repr__ est la méthode appelée sur unObjet par la fonction repr(unObjet). Elle est supposée retourner une représentation de cet objet?
-_print_ ça marcherai ?
Si tu lui mets des jambes.... (maman les ptis batos...)
- Classe doit retourner quelque chose ?
C'est quoi "Classe" ?
- Vous aurez des exemples/exercices afin de crée des classes ?
80% de la bibliothèque standard, à vue de nez.
ça pourrait servir à faire koi comme programme ?
Tout. Une classe est un objet qui sert de "moule" pour créer d'autres objets. Or en Python, *tout* est objet. Même les fonctions (si si). Tu ne *peux pas* faire un programme Python sans manipuler des objets - qui sont des instances de classes. Certaines de ces classes sont "builtins" (chaines, dicts, listes, numériques, fonctions, modules etc), et il existe des "raccourcis" syntaxiques pour les créer (ie : [] pour une liste, "" pour une chaine, def ... pour une fonction etc) - mais on pourrait (et on le fait parfois) les instancier explicitement. Pour le reste, une classe sert à définir un type de donnée.
Des petites précisions par ci par là ...
Yves Lange wrote:
Je programme depuis quelque temps en Python mais je ne parviens toujours
pas à comprendre à koi sert une classe, comment les utilisés (même avec
mon bouquoi de oreilly) et comment les réutiliser ! Bref je recherche un
coup de main:
Ce n'est pas un cours de Python qu'il te faut, c'est une intro à la
programmation objet.
-class...
-_self, ça veut dire koi?
s/_self/self/ (pas d'underscore devant)
littéralement : "moi-même"
'self' est (par convention) le nom donné à la référence sur l'instance
courante dans une méthode.
-_init_ c'est koi ?
s/_init_/__init__/
Lequel ? le __init__.py d'un package, ou la methode __init__() d'une
classe ?
Enfin, dans les deux cas, il s'agit d'initialiser... Le fichier
__init__.py est ce qui fait d'un répertoire un package Python. Il peut
être vide, ou contenir du code d'initialisation du package.
La methode __init__ est l'initialisateur (improprement appelé
constructeur) d'une classe, c'est à dire la méthode qui est appelée lors
de l'instanciation d'un objet, et qui permet d'initialiser l'objet.
Attention ! __init__ n'est certainement pas le constructeur ! En Python
le constructeur est __new__, mais attention à ces arguments qui sont
inhabituels !
-_main_ c'est koi ?
Rien que je connaisse. Par contre, '__main__' (note les quotes) est la
valeur de la variable __name__ lor de l'exécution d'un script python -
c'est à dire quand le fichier .py est exécuté, par opposition au cas où
il est importé depuis un autre module, auquel cas __name__ est valorisé
avec le nom du module.
Dans la pratique, ça permet de savoir si un fichier donné est utilisé
comme programme principal ou comme module importé. Un idiome courant est:
def main(argv):
# point d'entrée du programme
(...)
return 0
if __name__ == '__main__':
import sys
sys.exit(main(sys.argv))
Et bah t'aurais pu deviner ce qu'est __main__ dans ce cas ;)
En effet, __main__ est le nom du module créé par l'intepréteur au
démarrage. Toutes les variables créées depuis l'interpréteur se
retrouvent dans ce module __main__.
Pour tester, rien de plus simple :
import __main__
dir(__main__)
... (toutes les variables qui existent depuis l'interpréteur)
-_repr_ c'est koi ?
__repr__ est la méthode appelée sur unObjet par la fonction
repr(unObjet). Elle est supposée retourner une représentation de cet objet?
-_print_ ça marcherai ?
Si tu lui mets des jambes.... (maman les ptis batos...)
- Classe doit retourner quelque chose ?
C'est quoi "Classe" ?
- Vous aurez des exemples/exercices afin de crée des classes ?
80% de la bibliothèque standard, à vue de nez.
ça
pourrait servir à faire koi comme programme ?
Tout. Une classe est un objet qui sert de "moule" pour créer d'autres
objets. Or en Python, *tout* est objet. Même les fonctions (si si). Tu
ne *peux pas* faire un programme Python sans manipuler des objets - qui
sont des instances de classes. Certaines de ces classes sont "builtins"
(chaines, dicts, listes, numériques, fonctions, modules etc), et il
existe des "raccourcis" syntaxiques pour les créer (ie : [] pour une
liste, "" pour une chaine, def ... pour une fonction etc) - mais on
pourrait (et on le fait parfois) les instancier explicitement. Pour le
reste, une classe sert à définir un type de donnée.
Je programme depuis quelque temps en Python mais je ne parviens toujours pas à comprendre à koi sert une classe, comment les utilisés (même avec mon bouquoi de oreilly) et comment les réutiliser ! Bref je recherche un coup de main:
Ce n'est pas un cours de Python qu'il te faut, c'est une intro à la programmation objet.
-class... -_self, ça veut dire koi?
s/_self/self/ (pas d'underscore devant)
littéralement : "moi-même"
'self' est (par convention) le nom donné à la référence sur l'instance courante dans une méthode.
-_init_ c'est koi ?
s/_init_/__init__/
Lequel ? le __init__.py d'un package, ou la methode __init__() d'une classe ?
Enfin, dans les deux cas, il s'agit d'initialiser... Le fichier __init__.py est ce qui fait d'un répertoire un package Python. Il peut être vide, ou contenir du code d'initialisation du package.
La methode __init__ est l'initialisateur (improprement appelé constructeur) d'une classe, c'est à dire la méthode qui est appelée lors de l'instanciation d'un objet, et qui permet d'initialiser l'objet.
Attention ! __init__ n'est certainement pas le constructeur ! En Python le constructeur est __new__, mais attention à ces arguments qui sont inhabituels !
-_main_ c'est koi ?
Rien que je connaisse. Par contre, '__main__' (note les quotes) est la valeur de la variable __name__ lor de l'exécution d'un script python - c'est à dire quand le fichier .py est exécuté, par opposition au cas où il est importé depuis un autre module, auquel cas __name__ est valorisé avec le nom du module.
Dans la pratique, ça permet de savoir si un fichier donné est utilisé comme programme principal ou comme module importé. Un idiome courant est:
def main(argv): # point d'entrée du programme (...) return 0
if __name__ == '__main__': import sys sys.exit(main(sys.argv))
Et bah t'aurais pu deviner ce qu'est __main__ dans ce cas ;)
En effet, __main__ est le nom du module créé par l'intepréteur au démarrage. Toutes les variables créées depuis l'interpréteur se retrouvent dans ce module __main__.
Pour tester, rien de plus simple :
import __main__ dir(__main__)
... (toutes les variables qui existent depuis l'interpréteur)
-_repr_ c'est koi ?
__repr__ est la méthode appelée sur unObjet par la fonction repr(unObjet). Elle est supposée retourner une représentation de cet objet?
-_print_ ça marcherai ?
Si tu lui mets des jambes.... (maman les ptis batos...)
- Classe doit retourner quelque chose ?
C'est quoi "Classe" ?
- Vous aurez des exemples/exercices afin de crée des classes ?
80% de la bibliothèque standard, à vue de nez.
ça pourrait servir à faire koi comme programme ?
Tout. Une classe est un objet qui sert de "moule" pour créer d'autres objets. Or en Python, *tout* est objet. Même les fonctions (si si). Tu ne *peux pas* faire un programme Python sans manipuler des objets - qui sont des instances de classes. Certaines de ces classes sont "builtins" (chaines, dicts, listes, numériques, fonctions, modules etc), et il existe des "raccourcis" syntaxiques pour les créer (ie : [] pour une liste, "" pour une chaine, def ... pour une fonction etc) - mais on pourrait (et on le fait parfois) les instancier explicitement. Pour le reste, une classe sert à définir un type de donnée.
Alex Marandon
On 2005-10-31, Do Re Mi chel La Si Do wrote:
Tu as raison, en XML, les accents, dans les tags, ne passent pas. Mais je n'ai pas précisé qu'il s'agissait de XML.
L'encodage par défaut de XML est Unicode, on peut donc bien entendu mettre des caractères accentués. On peut aussi utiliser iso-8859-{1,15} si on veut, mais alors il faut le préciser dans la déclaration XML.
On 2005-10-31, Do Re Mi chel La Si Do <enleverlesO.OmcO@OmclaveauO.com> wrote:
Tu as raison, en XML, les accents, dans les tags, ne passent pas. Mais je
n'ai pas précisé qu'il s'agissait de XML.
L'encodage par défaut de XML est Unicode, on peut donc bien entendu
mettre des caractères accentués. On peut aussi utiliser iso-8859-{1,15}
si on veut, mais alors il faut le préciser dans la déclaration XML.
Tu as raison, en XML, les accents, dans les tags, ne passent pas. Mais je n'ai pas précisé qu'il s'agissait de XML.
L'encodage par défaut de XML est Unicode, on peut donc bien entendu mettre des caractères accentués. On peut aussi utiliser iso-8859-{1,15} si on veut, mais alors il faut le préciser dans la déclaration XML.
Do Re Mi chel La Si Do
Bonjour !
Il se pourrait pour que tu fasses une (grosse) confusion entre les tags et le contenu.
Dans les tags XML, seuls les caractères ASCII "purs" (inférieurs à 128) sont acceptés. En plus, il faut se limiter aux lettres, aux chiffres, et aux seuls caractères - (trait d'union), _ (souligné), . (point) et : (deux points).
Unicode n'est possible que dans le contenu.
On pourrait aussi préciser les caractères accentués "supportés par Unicode". Il y a de nombreux caractères non supportés par Unicode, ou en attente de définition/validation. Mais le consortium Unicode est déchiré par des querelles internes (voir l'histoire du syriaque moderne), et ça bloque pas mal, en ce moment.
Il ne faut pas oublier qu'XML est d'origine américaine, et est prévu pour que les américains puissent gérer des informations autres (qu'américaines) ; et non pour que d'autres cultures puissent gérer/échanger des informations entre elles.
Et la même phrase pourrait se conjuguer à Unicode / ASCII, avec strictement la même valeur.
C'est pour ça que, finalement, tout reste construit autour de l'ASCII.
@-salutations
Michel Claveau
Bonjour !
Il se pourrait pour que tu fasses une (grosse) confusion entre les tags et
le contenu.
Dans les tags XML, seuls les caractères ASCII "purs" (inférieurs à 128) sont
acceptés. En plus, il faut se limiter aux lettres, aux chiffres, et aux
seuls caractères - (trait d'union), _ (souligné), . (point) et : (deux
points).
Unicode n'est possible que dans le contenu.
On pourrait aussi préciser les caractères accentués "supportés par Unicode".
Il y a de nombreux caractères non supportés par Unicode, ou en attente de
définition/validation. Mais le consortium Unicode est déchiré par des
querelles internes (voir l'histoire du syriaque moderne), et ça bloque pas
mal, en ce moment.
Il ne faut pas oublier qu'XML est d'origine américaine, et est prévu pour
que les américains puissent gérer des informations autres (qu'américaines) ;
et non pour que d'autres cultures puissent gérer/échanger des informations
entre elles.
Et la même phrase pourrait se conjuguer à Unicode / ASCII, avec strictement
la même valeur.
C'est pour ça que, finalement, tout reste construit autour de l'ASCII.
Il se pourrait pour que tu fasses une (grosse) confusion entre les tags et le contenu.
Dans les tags XML, seuls les caractères ASCII "purs" (inférieurs à 128) sont acceptés. En plus, il faut se limiter aux lettres, aux chiffres, et aux seuls caractères - (trait d'union), _ (souligné), . (point) et : (deux points).
Unicode n'est possible que dans le contenu.
On pourrait aussi préciser les caractères accentués "supportés par Unicode". Il y a de nombreux caractères non supportés par Unicode, ou en attente de définition/validation. Mais le consortium Unicode est déchiré par des querelles internes (voir l'histoire du syriaque moderne), et ça bloque pas mal, en ce moment.
Il ne faut pas oublier qu'XML est d'origine américaine, et est prévu pour que les américains puissent gérer des informations autres (qu'américaines) ; et non pour que d'autres cultures puissent gérer/échanger des informations entre elles.
Et la même phrase pourrait se conjuguer à Unicode / ASCII, avec strictement la même valeur.
C'est pour ça que, finalement, tout reste construit autour de l'ASCII.
@-salutations
Michel Claveau
Alex Marandon
On 2005-11-19, Do Re Mi chel La Si Do wrote:
Il se pourrait pour que tu fasses une (grosse) confusion entre les tags et le contenu.
Non non, je parle bien des éléments.
Dans les tags XML, seuls les caractères ASCII "purs" (inférieurs à 128) sont acceptés. En plus, il faut se limiter aux lettres, aux chiffres, et aux seuls caractères - (trait d'union), _ (souligné), . (point) et : (deux points).
Unicode n'est possible que dans le contenu.
Mes outils n'ont pas de problèmes avec les caractères accentués dans les éléments. Que ce soit xmlwf (commande basée sur Expat qui teste si du XML est bien formé), Gecko ou encore Python, ça n'a pas l'air de les déranger. D'ailleurs w3schools.com me dit que "Non-English letters like éòá are perfectly legal in XML element names".
C'est aussi ce que je comprends en lisant la spec <http://www.w3.org/TR/REC-xml/#sec-starttags>. En suivant les liens dans les indication de syntaxe, on arrive à la liste des "BaseChar" <http://www.w3.org/TR/REC-xml/#NT-BaseChar>, il me semble bien qu'il y en a plus que 128. Cela dit je ne saisis pas bien les remarques en dessous de ces listes.
xpost et fu2 chez les spécialistes
On 2005-11-19, Do Re Mi chel La Si Do <enleverlesO.OmcO@OmclaveauO.com> wrote:
Il se pourrait pour que tu fasses une (grosse) confusion entre les tags et
le contenu.
Non non, je parle bien des éléments.
Dans les tags XML, seuls les caractères ASCII "purs" (inférieurs à 128) sont
acceptés. En plus, il faut se limiter aux lettres, aux chiffres, et aux
seuls caractères - (trait d'union), _ (souligné), . (point) et : (deux
points).
Unicode n'est possible que dans le contenu.
Mes outils n'ont pas de problèmes avec les caractères accentués dans les
éléments. Que ce soit xmlwf (commande basée sur Expat qui teste si du
XML est bien formé), Gecko ou encore Python, ça n'a pas l'air de les
déranger. D'ailleurs w3schools.com me dit que "Non-English letters like
éòá are perfectly legal in XML element names".
C'est aussi ce que je comprends en lisant la spec
<http://www.w3.org/TR/REC-xml/#sec-starttags>. En suivant les liens
dans les indication de syntaxe, on arrive à la liste des "BaseChar"
<http://www.w3.org/TR/REC-xml/#NT-BaseChar>, il me semble bien qu'il y
en a plus que 128. Cela dit je ne saisis pas bien les remarques en
dessous de ces listes.
Il se pourrait pour que tu fasses une (grosse) confusion entre les tags et le contenu.
Non non, je parle bien des éléments.
Dans les tags XML, seuls les caractères ASCII "purs" (inférieurs à 128) sont acceptés. En plus, il faut se limiter aux lettres, aux chiffres, et aux seuls caractères - (trait d'union), _ (souligné), . (point) et : (deux points).
Unicode n'est possible que dans le contenu.
Mes outils n'ont pas de problèmes avec les caractères accentués dans les éléments. Que ce soit xmlwf (commande basée sur Expat qui teste si du XML est bien formé), Gecko ou encore Python, ça n'a pas l'air de les déranger. D'ailleurs w3schools.com me dit que "Non-English letters like éòá are perfectly legal in XML element names".
C'est aussi ce que je comprends en lisant la spec <http://www.w3.org/TR/REC-xml/#sec-starttags>. En suivant les liens dans les indication de syntaxe, on arrive à la liste des "BaseChar" <http://www.w3.org/TR/REC-xml/#NT-BaseChar>, il me semble bien qu'il y en a plus que 128. Cela dit je ne saisis pas bien les remarques en dessous de ces listes.
xpost et fu2 chez les spécialistes
drkm
Do Re Mi chel La Si Do writes:
Dans les tags XML, seuls les caractères ASCII "purs" (inférieurs à 128) sont acceptés.
D'où tires-tu cela ?
PS: Je n'ai pas lu tout le fil. Je l'ai découvert au moyen d'un cross-post dans f.c.t.xml, vers lequel je cross-poste moi-même, et vers lequel je fu2.
--drkm
Do Re Mi chel La Si Do writes:
Dans les tags XML, seuls les caractères ASCII "purs"
(inférieurs à 128) sont acceptés.
D'où tires-tu cela ?
PS: Je n'ai pas lu tout le fil. Je l'ai découvert au moyen
d'un cross-post dans f.c.t.xml, vers lequel je cross-poste
moi-même, et vers lequel je fu2.
Dans les tags XML, seuls les caractères ASCII "purs" (inférieurs à 128) sont acceptés.
D'où tires-tu cela ?
PS: Je n'ai pas lu tout le fil. Je l'ai découvert au moyen d'un cross-post dans f.c.t.xml, vers lequel je cross-poste moi-même, et vers lequel je fu2.
--drkm
Alex Marandon
On 2005-11-19, Do Re Mi chel La Si Do wrote:
De là : http://www.infini-fr.com/Sciences/Informatique/Reseaux/Internet/WorldWideWeb/Xml/syntaxe.html#Tags
"Si vous ne spécifiez rien, l'outil manipulant vos données (dans notre cas Internet Explorer) considérera que votre fichier utilise la norme ASCII."
Tiens donc, ce serait donc un défaut propre à un logiciel (par ailleurs connu pour ses interprétation parfois originales des standards) ?
A vrai dire, il me parait tout même plus probable que l'auteur de l'article se trompe. Il a édité un fichier en ISO-8859-1, et le soumet sans spécifier l'encodage à son navigateur, qui considère donc qu'il s'agit d'Unicode, d'où le problème.
Si je prends Firefox par exemple, il se conforme à la norme en considérant qu'en l'absence de précisions l'encodage est en Unicode. Par ailleurs les accents dans les noms d'éléments ne le dérangent pas.
Ta source n'est pas très fiable sur ce point, il vaut mieux se référer aux documents du w3c. Si tu regardes les plages de caractères autorisés (par exemple [#x00D8-#x00F6]) tu y trouveras bien nos caractères accentués. Tu avais raison sur un point, tout Unicode n'est pas autorisé, seul un sous ensemble l'est. En revanche ce sous ensemble va bien au délà des 128 caractères ASCII.
Désolé pour le refus du fu2 de A.M. mais c'est le seul moyen de répondre, l'autre serveur n'étant pas supporté par mon proxy de news.
Quel autre serveur ? Le fu2 était vers un autre _newsgroup_ de la hiérarchie fr de Usenet.
On 2005-11-19, Do Re Mi chel La Si Do <enleverlesO.OmcO@OmclaveauO.com> wrote:
De là :
http://www.infini-fr.com/Sciences/Informatique/Reseaux/Internet/WorldWideWeb/Xml/syntaxe.html#Tags
"Si vous ne spécifiez rien, l'outil manipulant vos données (dans notre
cas Internet Explorer) considérera que votre fichier utilise la norme
ASCII."
Tiens donc, ce serait donc un défaut propre à un logiciel (par ailleurs
connu pour ses interprétation parfois originales des standards) ?
A vrai dire, il me parait tout même plus probable que l'auteur de
l'article se trompe. Il a édité un fichier en ISO-8859-1, et le soumet
sans spécifier l'encodage à son navigateur, qui considère donc qu'il
s'agit d'Unicode, d'où le problème.
Si je prends Firefox par exemple, il se conforme à la norme en
considérant qu'en l'absence de précisions l'encodage est en Unicode. Par
ailleurs les accents dans les noms d'éléments ne le dérangent pas.
Ta source n'est pas très fiable sur ce point, il vaut mieux se référer
aux documents du w3c. Si tu regardes les plages de caractères autorisés
(par exemple [#x00D8-#x00F6]) tu y trouveras bien nos caractères
accentués. Tu avais raison sur un point, tout Unicode n'est pas
autorisé, seul un sous ensemble l'est. En revanche ce sous ensemble va
bien au délà des 128 caractères ASCII.
Désolé pour le refus du fu2 de A.M. mais c'est le seul moyen de répondre,
l'autre serveur n'étant pas supporté par mon proxy de news.
Quel autre serveur ? Le fu2 était vers un autre _newsgroup_ de la
hiérarchie fr de Usenet.
De là : http://www.infini-fr.com/Sciences/Informatique/Reseaux/Internet/WorldWideWeb/Xml/syntaxe.html#Tags
"Si vous ne spécifiez rien, l'outil manipulant vos données (dans notre cas Internet Explorer) considérera que votre fichier utilise la norme ASCII."
Tiens donc, ce serait donc un défaut propre à un logiciel (par ailleurs connu pour ses interprétation parfois originales des standards) ?
A vrai dire, il me parait tout même plus probable que l'auteur de l'article se trompe. Il a édité un fichier en ISO-8859-1, et le soumet sans spécifier l'encodage à son navigateur, qui considère donc qu'il s'agit d'Unicode, d'où le problème.
Si je prends Firefox par exemple, il se conforme à la norme en considérant qu'en l'absence de précisions l'encodage est en Unicode. Par ailleurs les accents dans les noms d'éléments ne le dérangent pas.
Ta source n'est pas très fiable sur ce point, il vaut mieux se référer aux documents du w3c. Si tu regardes les plages de caractères autorisés (par exemple [#x00D8-#x00F6]) tu y trouveras bien nos caractères accentués. Tu avais raison sur un point, tout Unicode n'est pas autorisé, seul un sous ensemble l'est. En revanche ce sous ensemble va bien au délà des 128 caractères ASCII.
Désolé pour le refus du fu2 de A.M. mais c'est le seul moyen de répondre, l'autre serveur n'étant pas supporté par mon proxy de news.
Quel autre serveur ? Le fu2 était vers un autre _newsgroup_ de la hiérarchie fr de Usenet.
Amaury
Bonjour,
Si je prends Firefox par exemple, il se conforme à la norme en considérant qu'en l'absence de précisions l'encodage est en Unicode. Par ailleurs les accents dans les noms d'éléments ne le dérangent pas.
Attention, Unicode n'est pas un encodage. C'est juste une numérotation des caractères, qui ne dit rien sur la manière de représenter ces numéros dans une suite d'octets. Je suis alors curieux de voir ce que dit exactement la norme.
-- Amaury
Bonjour,
Si je prends Firefox par exemple, il se conforme à la norme en
considérant qu'en l'absence de précisions l'encodage est en Unicode. Par
ailleurs les accents dans les noms d'éléments ne le dérangent pas.
Attention, Unicode n'est pas un encodage. C'est juste une numérotation
des caractères, qui ne dit rien sur la manière de représenter ces
numéros dans une suite d'octets.
Je suis alors curieux de voir ce que dit exactement la norme.
Si je prends Firefox par exemple, il se conforme à la norme en considérant qu'en l'absence de précisions l'encodage est en Unicode. Par ailleurs les accents dans les noms d'éléments ne le dérangent pas.
Attention, Unicode n'est pas un encodage. C'est juste une numérotation des caractères, qui ne dit rien sur la manière de représenter ces numéros dans une suite d'octets. Je suis alors curieux de voir ce que dit exactement la norme.