手记

Python报错:ImportError:cannot import name 'KafkaConsumer'

在Django的项目中安装了kafka-python,但是不能正常运行,直接就报错了。

import sys
from kafka import KafkaConsumer

def kafkatest():
    print "Step 1 complete"
    consumer=KafkaConsumer('test',bootstrap_servers=['localhost:9092'])
    for message in consumer:
        print "Next message"
        print message


if __name__=="__main__":
    kafkatest()

然后在使用时,报错提示:ImportError: cannot import name 'KafkaConsumer'

找了半天没有找到解决方案,最后发现自己创建的文件名叫做:kafka.py,突然意识到问题出在哪里了。

原因:
简单说就是因为,创建的文件名是kafka.py,这会导致代码运行时,python解释器查找kafka的模块时,就找到自身(kafka.py)了,所以就报错。

解决办法:

修改文件名字为其他名字,比如:com_kafka.py,在运行就可以运行了。

本文首发于BigYoung小站

0人推荐
随时随地看视频
慕课网APP