We can use python’s subprocess module for this, however using docker python-sdk would be more convenient way.

You can install it via pip:

$ pip install docker

Then we can use a module like below:

from typing import Optional

import docker


def is_container_running(container_name: str) -> Optional[bool]:
    """Verify the status of a container by it's name

    :param container_name: the name of the container
    :return: boolean or None
    """
    RUNNING = "running"
    # Connect to Docker using the default socket or the configuration
    # in your environment
    docker_client = docker.from_env()
    # Or give configuration
    # docker_socket = "unix://var/run/docker.sock"
    # docker_client = docker.DockerClient(docker_socket)

    try:
        container = docker_client.containers.get(container_name)
    except docker.errors.NotFound as exc:
        print(f"Check container name!\n{exc.explanation}")
    else:
        container_state = container.attrs["State"]
        return container_state["Status"] == RUNNING


if __name__ == "__main__":
    container_name = "localredis"
    result = is_container_running(container_name)
    print(result)

After you run you will get:

$ python check_container.py
True

If you use it with not-existing container name it will give:

$ python check_container.py
Check container name!
No such container: redislocal
None

All done!