[gull] python2.5 et type(x)
Daniel Cordey
dc at mjt.ch
Mon Aug 4 16:41:27 CEST 2008
On Friday 01 August 2008 03:36:12 Philippe Strauss wrote:
> c'est plûtot particulier l'idée de ne pas distinguer une notion
> de typage avec une notion de classe d'objet,
Le cas de Python est peut-etre un peu particulier dans le sens ou tout est un
objet (classe) en Python. La maniere dont ces objets sont concus est assez
logique et cela permet de faire beaucoup de choses, tout en restant tres
"propre". C'est donc assez different de l'infame bricolage de certains langages
:-)
En Python, une classe est definie dans un dictionnaire (qui est une classe...).
Toutefois, il existe bien une separation entre 'type' et 'class'. Entre autre,
cela concerne les deux "built-in types" que sont les listes et les
dictionnaires. De meme, une classe en definit pas un nouveau 'type'. C'est aussi
pour pouvoir gerer les "heritages" de classes que la notion de "isinstance" a
ete introduite. Ceci permet donc de determiner l'appatenance a une classe ou a
ses derives. Il est donc possible de determiner l'appartenance a une classe de
base pour une classe derivee; chose que l'on ne pourrait faire avec la notion de
"type" qui est trop restrictive.
> mais bon, ca doit être cela un scripting langage.
Non, pas forcement. Un langage de "scripting" offre toutefois plus de
"dynamisme" dans la gestion des objets, tout en conservant une certaine
simplicite d'implementation. Un langage compile va etre nettement plus rapide,
mais il imposera des contraintes de definitions specifiques. C'est le cas entre
autre de la necessite de declarer les fonctions virtuelles en C++; chose qui
n'est pas necessaire en Python.
> Doit pas aider les projets tentant de compiler du python
> vers c/c++.
Non, pas vraiment... SWIG permet deja de generer du code python et C/C++
permettant d'interfacer du code relogeable (*.o, *.so...) avec Python, et cela
ne pose pas de problemes particuliers. La partie de C/C++ est ensuite compilee
et permet d'etre chargee comme un module Python.
dc
More information about the gull
mailing list