I know that we can do this to list queue in a rabbitmq:
rabbitmqctl list_queues
but how can I do this via pika?
No.
Pika is an AMQP library.
If you want to manage an MQ Broker, then you need an MQ Broker management tool. Fortunately, RabbitMQ comes with such a tool if you install a recent version of RabbitMQ such as 2.7.1 and you install the RabbitMQ management plugins. That gives you a web GUI as well as a RESTful API that you can use in your scripts.
But it's all outside of the scope of AMQP itself.
http://www.rabbitmq.com/management.html for the management plugin with a web GUI and http://www.rabbitmq.com/management-cli.html for a CLI type of interface.