Je ne comprends pas l'utilisation des [] dans l'instruction

Résolu
undertaker4000 Messages postés 11 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 14 février 2012 - 14 juil. 2011 à 13:26
undertaker4000 Messages postés 11 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 14 février 2012 - 23 juil. 2011 à 06:41
Bonjour,
Je suis en train d'essayer de comprendre le code Python d'une extension d'Inkscape .

J'ai ces lignes de code :
def numsegs(csp):
    return sum([len(p)-1 for p in csp])


Je comprends que cette fonction retourne le nombre de segments contenus dans "csp" qui est, il me semble, la référence vers le tracé qui a été sélectionné dans Inkscape juste avant l'appel à l'extension.

Mais ce qui me perturbe, c'est l'emploi des [] à l'intérieur des ().

Merci de m'expliquer le pourquoi de cela.

2 réponses

cs_laurent1024 Messages postés 987 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 30 août 2012 25
22 juil. 2011 à 18:18
Hello.
Je te conseil d'aller jeter un coup d’œil la bas ici..

Dans ton cas, la fonction pourrait être écrite de la manière suivante :
def numsegs(csp):
    thelist = []
    for p in csp:
        thelist.append(len(p)-1)
    return sum(thelist)
3
undertaker4000 Messages postés 11 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 14 février 2012
23 juil. 2011 à 06:41
Merci laurent1024,
Je débute un peu sous Python et parfois, la syntaxe me perturbe pas mal.

Listes, tableaux, tuple, dictionnaires, ... pas évident au début.

Merci encore pour ton aide .
A+
0
Rejoignez-nous