Tupel Comprehensions in Python

Vaibhav Vaibhav 10 Oktober 2023
Tupel Comprehensions in Python

Die Programmiersprache Python hat eine einfache und leicht verständliche Syntax. Die Syntax ist so einfach, dass man mit Python schnell Einzeiler-Codes schreiben kann. Eine solche Funktion ist die Listeniteration oder das List Comprehensions. Wir können über eine Liste iterieren und schnell eine neue Liste mit Quadraten von Listenelementen zurückgeben, indem wir dies tun [i ** 2 for i in [1, 2, 3, 4, 5, 6, 7]]. Gleiches gilt für Wörterbücher; sie können auch in einer einzigen Zeile durchlaufen werden.

Python hat verschiedene lineare Datenstrukturen wie Listen, Tupel usw. Das oben gezeigte List Comprehensions gilt nicht für Tupel. Das bedeutet, dass wir (i ** 2 for i in (1, 2, 3, 4, 5, 6, 7)) nicht ausführen können. Dies wird einen Fehler auslösen. Wenn dies nicht möglich ist, wie führen wir das Tupelverständnis in einer einzigen Zeile in Python durch? In diesem Artikel wird darüber gesprochen.

Tupelverständnis in Python

Man kann Tupelverständnis in Python mit der folgenden Syntax durchführen.

x = tuple(i for i in (1, 2, 3, 4, 5, 6, 7))
print(x)
print(type(x))
y = tuple(i ** 2 for i in (1, 2, 3, 4, 5, 6, 7))
print(y)
print(type(y))

Ausgabe:

(1, 2, 3, 4, 5, 6, 7)
<class 'tuple'>
(1, 4, 9, 16, 25, 36, 49)
<class 'tuple'>

Python 3.5 hat eine neue Methode zum Tupelverständnis entwickelt. Es war der Prozess des Auspackens. Mit * können wir das Entpacken durchführen. Siehe den folgenden Code für dasselbe.

x = (*(i for i in [1, 2, 3, 4, 5, 6, 7]),)  # Notice the comma (,) at the end
print(x)
print(type(x))

Ausgabe:

(1, 2, 3, 4, 5, 6, 7)
<class 'tuple'>

Beachten Sie, dass diese Syntax dem Schreiben von x = tuple([i for i in [1, 2, 3, 4, 5, 6, 7]]) entspricht.

x = tuple([i for i in [1, 2, 3, 4, 5, 6, 7]])
print(x)
print(type(x))

Ausgabe:

(1, 2, 3, 4, 5, 6, 7)
<class 'tuple'>
Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.

Verwandter Artikel - Python Tuple