Maison  >  Article  >  développement back-end  >  Comment exprimer le nombre de jonquilles en code python ?

Comment exprimer le nombre de jonquilles en code python ?

coldplay.xixi
coldplay.xixioriginal
2020-06-23 16:22:3913491parcourir

Comment exprimer le nombre de jonquilles en code python ?

Comment exprimer le nombre de jonquilles en code python ?

Le code python du numéro de la jonquille est :

Le numéro de la jonquille fait référence à un entier positif à 3 chiffres avec 3 des chiffres dans chaque chiffre. La somme des puissances est égale à elle-même. (Par exemple : 1^3 + 5^3+ 3^3 = 153)

Le code suivant est utilisé pour trouver le nombre de toutes les jonquilles :

>>> 
>>> a = list(map(lambda x: x[1], filter(lambda x: x[0], [(i*100+j*10+k == i**3+j**3+k**3, i**3+j**3+k**3) for i in range(1, 10) for j in range(0, 10) for k in range(0, 10)])))
>>> print(a)
[153, 370, 371, 407]
>>>

Instructions :

Le code ci-dessus peut être décomposé en trois lignes de code :

a = [(i*100+j*10+k == i**3+j**3+k**3, i**3+j**3+k**3) for i in range(1, 10) for j in range(0, 10) for k in range(0, 10)]
b = filter(lambda x: x[0], a)
c = list(map(lambda x: x[1], b))

La première phrase signifie parcourir la liste pour parcourir les trois chiffres et marquer chaque numéro. S'il s'agit d'une jonquille, marquez-le comme. True, si ce n'est pas le cas, marquez-le comme True, le drapeau et le numéro sont placés dans un tuple : (drapeau, valeur), et tous les tuples sont placés dans une structure de liste.

La deuxième phrase signifie filtrer les tuples marqués comme True.

La troisième phrase signifie mettre la deuxième valeur du tuple filtré par la première phrase dans la structure de liste.

Ajoutez l'instruction print et exécutez les trois lignes de code ci-dessus pour comprendre.

Tutoriel recommandé : "Tutoriel vidéo Python"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn