Ich spielte mit Iterablen und genauer dem Operator yield
in Python. Während Testgetriebene Entwicklung mit einem neuen iterable Schreiben zu beginnen, fragte ich mich, was der kürzeste Code, diesen einfachen Test für einen iterable passieren machen könnte:Was ist der einfachste Weg, um einen leeren Iterable mit Ausbeute in Python zu erstellen?
def test():
for x in my_iterable():
pass
Die kürzeste Version, die ich denken konnte, war:
def my_iterable():
for i in []:
yield i
Ist es möglich, eine einfachere, kürzere oder schönere (pythonische) Version zu schreiben?
Beachten Sie, dass wenn Ihr Test iterable leer ist und nichts produziert - wie gezeigt und in den meisten oder allen Antworten - Ihr Test keinen Code in der 'for' Schleife ausübt. – martineau