CommunityList
*************

class praw.models.CommunityList(reddit, _data)

   Class to represent a Related Communities widget.

   Find an existing one:

      community_list = None
      widgets = reddit.subreddit("redditdev").widgets
      for widget in widgets.sidebar:
          if isinstance(widget, praw.models.CommunityList):
              community_list = widget
              break

      print(community_list)

   Create one (requires proper moderator permissions):

      widgets = reddit.subreddit("redditdev").widgets
      styles = {"backgroundColor": "#FFFF66", "headerColor": "#3333EE"}
      subreddits = ["learnpython", reddit.subreddit("announcements")]
      community_list = widgets.mod.add_community_list(
          "Related subreddits", subreddits, styles, "description"
      )

   For more information on creation, see "add_community_list()".

   Update one (requires proper moderator permissions):

      new_styles = {"backgroundColor": "#FFFFFF", "headerColor": "#FF9900"}
      community_list = community_list.mod.update(shortName="My fav subs", styles=new_styles)

   Delete one (requires proper moderator permissions):

      community_list.mod.delete()

   **Typical Attributes**

   This table describes attributes that typically belong to objects of
   this class. Since attributes are dynamically provided (see
   Determine Available Attributes of an Object), there is not a
   guarantee that these attributes will always be present, nor is this
   list necessarily complete.

   +-------------------------+--------------------------------------------------------------+
   | Attribute               | Description                                                  |
   |=========================|==============================================================|
   | "data"                  | A "list" of "Subreddit"s. These can also be iterated over by |
   |                         | iterating over the "CommunityList" (e.g. "for sub in         |
   |                         | community_list").                                            |
   +-------------------------+--------------------------------------------------------------+
   | "id"                    | The widget ID.                                               |
   +-------------------------+--------------------------------------------------------------+
   | "kind"                  | The widget kind (always ""community-list"").                 |
   +-------------------------+--------------------------------------------------------------+
   | "shortName"             | The short name of the widget.                                |
   +-------------------------+--------------------------------------------------------------+
   | "styles"                | A "dict" with the keys ""backgroundColor"" and               |
   |                         | ""headerColor"".                                             |
   +-------------------------+--------------------------------------------------------------+
   | "subreddit"             | The "Subreddit" the button widget belongs to.                |
   +-------------------------+--------------------------------------------------------------+

   __contains__(item: Any) -> bool

      Test if item exists in the list.

   __getitem__(index: int) -> Any

      Return the item at position index in the list.

   __init__(reddit, _data)

      Initialize an instance of the class.

   __iter__() -> Iterator[Any]

      Return an iterator to the list.

   __len__() -> int

      Return the number of items in the list.

   mod()

      Get an instance of "WidgetModeration" for this widget.

      Note:

        Using any of the methods of "WidgetModeration" will likely
        make the data in the "SubredditWidgets" that this widget
        belongs to outdated. To remedy this, call "refresh()".

   classmethod parse(data: Dict[str, Any], reddit: Reddit) -> Any

      Return an instance of "cls" from "data".

      Parameters:
         * **data** -- The structured data.

         * **reddit** -- An instance of "Reddit".
