kafkaconsumer类的用法?

y0u0uwnf  于 2021-06-07  发布在  Kafka
关注(0)|答案(1)|浏览(335)

我正在学习Kafka消费语,第三行有个问题

1.from kafka import KafkaConsumer
2.consumer = KafkaConsumer(arglist)
3.for message in consumer

我知道“为了。。。在…陈述中。这个for循环用于解析集合的元素。所以这里的消费者对象可以是一个集合??我抬头看了看https://github.com/dpkp/kafka-python. 然而,在Kafka的实现中没有“收集”的东西

8mmmxcuj

8mmmxcuj1#

在python中,只要对象实现/定义 __iter__ 方法。这不限于收藏!下面是一个关于如何创建iterable对象的基本示例:

class SimpleExample():

    def __iter__(self):
        i = 0
        while i < 10:
            yield i*2 
            i+=1

se = SimpleExample()
for i in se:
    print(i)

这将打印 0 2 4 6 8 10 12 14 16 18 然后退出循环。
回到Kafka的消费者那里, SimpleConsumer 在中定义这样的方法 simple.py ,第346行。这就是为什么你可以使用 for .. in 语法在上面。

相关问题