code: def columns(
      names_or_number,  # type: Union[int, Sequence[str]]
      dtype=None,  # type: Any
      elements=None,  # type: st.SearchStrategy[Ex]
      fill=None,  # type: st.SearchStrategy[Ex]
      unique=False,  # type: bool
  ):
      # type: (...) -> List[column]
      """A convenience function for producing a list of :class:`column` objects
      of the same general shape.
  
      The names_or_number argument is either a sequence of values, the
      elements of which will be used as the name for individual column
      objects, or a number, in which case that many unnamed columns will
      be created. All other arguments are passed through verbatim to
      create the columns.
      """
      if isinstance(names_or_number, (int, float)):
          names = [None] * names_or_number  # type: list
      else:
          names = list(names_or_number)
      return [
          column(
              name=n,
              dtype=dtype,
              elements=elements,
              fill=fill,
              unique=unique,
          )
          for n in names
      ]
  
imports: from __future__ import absolute_import, division, print_function
  from collections import OrderedDict
  from copy import copy
  import attr
  import numpy
  import pandas
  import hypothesis.extra.numpy
  import hypothesis.internal.conjecture.utils
  import hypothesis.strategies._internal.core
  from hypothesis.control import reject
  from hypothesis.errors import InvalidArgument
  from hypothesis.internal.compat import abc, hrange
  from hypothesis.internal.coverage import check, check_function
  from hypothesis.internal.validation import check_type, check_valid_interval, check_valid_size, try_convert
label_desc: Use image node_id 7 for calling a global function with example usage: columns(names_or_number, dtype, elements, fill, unique) and returns: unknown