列表和集合 / 迭代器和生成器

def reverse(data):
    current = len(data)
    while current >= 1:
        current -= 1
        yield data[current]


for c in reverse("string"):
    print(c)
# printed: g, n, i, r, t, s

for i in reverse([123]):
    print(i)
# printed: 3, 2, 1