Heim >Backend-Entwicklung >Python-Tutorial >Wie drückt man die Anzahl der Narzissen im Python-Code aus?

Wie drückt man die Anzahl der Narzissen im Python-Code aus?

coldplay.xixi
coldplay.xixiOriginal
2020-06-23 16:22:3913533Durchsuche

Wie drückt man die Anzahl der Narzissen im Python-Code aus?

Wie drückt man die Anzahl der Narzissen im Python-Code aus?

Der Python-Code der Narzissenzahl lautet:

Die Narzissenzahl bezieht sich auf eine dreistellige positive Ganzzahl mit 3 Ziffern in jeder Ziffer. Die Summe der Kräfte ist sich selbst gleich. (Zum Beispiel: 1^3 + 5^3+ 3^3 = 153)

Der folgende Code wird verwendet, um die Anzahl aller Narzissen zu ermitteln:

>>> 
>>> 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]
>>>

Anleitung:

Der obige Code kann in drei Codezeilen zerlegt werden:

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))

Der erste Satz bedeutet, die Liste durchzugehen, alle drei Ziffern zu durchlaufen und jede Zahl zu markieren Wenn dies nicht der Fall ist, markieren Sie es als „Falsch“. Das Flag und die Zahl werden in einem Tupel platziert: (Flag, Wert) und alle Tupel werden in einer Listenstruktur platziert.

Der zweite Satz bedeutet, die als „True“ markierten Tupel herauszufiltern.

Der dritte Satz bedeutet, den zweiten Wert des vom ersten Satz herausgefilterten Tupels in die Listenstruktur einzufügen.

Fügen Sie die print-Anweisung hinzu und führen Sie die obigen drei Codezeilen aus, um es zu verstehen.

Empfohlenes Tutorial: „Python-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWie drückt man die Anzahl der Narzissen im Python-Code aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn