Function args
Yermat
loic at fejoz.net
Fri Apr 9 05:10:57 EDT 2004
Michel Claveau/Hamster wrote:
> Bonjour !
>
>
>>>>En gros, tous les types primitifs de python sont "expansés", autrement
>
> dit quand on les affecte à une autre variable, c'est une copie. Tous les
> types complexes sont des références.
>
> Je comprend, mais, dans mon esprit, je préfère me dire qu'il y a copie de ce
> qui est pointé. Pour une variable simple (e.g. a=2) c'est l'objet '2' qui
> est pointé, et donc, copié. Dans le cas d'une liste, la liste pointe sur un
> ensemble de pointeurs vers différents objets, et donc, on copie ces
> pointeurs (qui sont pointés).
>
> Malheureusement, mon point de vue accroche sur les tuples (non modifiables).
> Je me dis alors que les tuples sont non modifiables par exception...
>
>
> Cela revient un peu au même que ce que tu as exprimé, avec une image mentale
> un peu différente.
>
>
> @-salutations
> --
> Michel Claveau
>
>
Oui je comprends bien mais si j'ai bien compris votre représentation que
devrait faire ceci :
>>> l = ['a','b','c']
>>>
>>> d = l
>>> d.append('d')
>>> d
['a', 'b', 'c', 'd']
Que devrait valoir l maintenant ? Python fait :
>>> l
['a', 'b', 'c', 'd']
votre représentation ferait :
['a','b','c']
Mais bon. L'important est d'avoir compris ;-)
Yermat
More information about the Python-list
mailing list