首页 > 解决方案 > 面临问题,同时在 re.compile python regex 中创建 List

问题描述

我正在尝试在 Python shell 中使用正则表达式创建一个列表。在列表中,我有 3 个值 topic-1、topic-2、topic-3。我正在创建一个具有主题的消费者对象,主题应包含 3 个值 [topic1、topic2、topic3]。所以每当我想指出topic-1、topic-2、topic-3中的任何一个。所以它应该从正确的主题中获取消息。我正在关注下面的代码,但它给出了一个问题:

import pulsar
import re

client = pulsar.Client('pulsar://localhost:6650')
topic = 'my-topic'
topic = ['topic-1', 'topic-2', 'topic-3']
topic = re.compile('topic-.*')
print(topic)
# <_sre.SRE_Pattern object at 0x7f13314e7210> 
consumer = client.subscribe(topic, "my-subscription")
2019-04-26 07:05:02.956 INFO  ConnectionPool:72 | Created connection for 
pulsar://localhost:6650
2019-04-26 07:05:02.957 INFO  ClientConnection:300 | [127.0.0.1:55874 -> 
127.0.0.1:6650] Connected to broker

在这里我可以创建消费者对象,但它没有创建正确的值,[topic-1, topic-2, topic-3] 因为在下一步中我无法接收消息。语法问题是什么?

标签: python

解决方案


我在你的语法中找不到任何明显的错误。你确定你的命名空间中有这些主题吗?尝试使用 pulsar 的命令行工具,例如:

pulsar-admin 租户列表

pulsar-admin 命名空间列表 <>

pulsar-admin 主题列表租户/集群/命名空间

有关更多选项,请参见此处:https ://pulsar.apache.org/docs/latest/reference/CliTools/


推荐阅读