nodes: 0, module; 1, function_definition; 2, function_name:Columns; 3, parameters; 4, block; 5, identifier:iterable; 6, expression_statement; 7, expression_statement; 8, return_statement; 9, comment:"""Returns a string of column names for MySQL INSERTs.
  
    To account for Iterables with undefined order (dicts before Python 3.6),
    this function sorts column names.
  
    Examples:
      >>> Columns({"password": "foo", "name": "bar"})
      u'(`name`, `password`)'
  
    Args:
      iterable: The iterable of strings to be used as column names.
    Returns: A string containing a tuple of sorted comma-separated column names.
    """; 10, assignment; 11, call; 12, identifier:columns; 13, call; 14, attribute; 15, argument_list; 16, identifier:sorted; 17, argument_list; 18, string:"({})"; 19, identifier:format; 20, call; 21, identifier:iterable; 22, attribute; 23, generator_expression; 24, string:", "; 25, identifier:join; 26, call; 27, for_in_clause; 28, attribute; 29, argument_list; 30, identifier:col; 31, identifier:columns; 32, string:"`{}`"; 33, identifier:format; 34, identifier:col
code: def Columns(iterable):
    """Returns a string of column names for MySQL INSERTs.
  
    To account for Iterables with undefined order (dicts before Python 3.6),
    this function sorts column names.
  
    Examples:
      >>> Columns({"password": "foo", "name": "bar"})
      u'(`name`, `password`)'
  
    Args:
      iterable: The iterable of strings to be used as column names.
    Returns: A string containing a tuple of sorted comma-separated column names.
    """
    columns = sorted(iterable)
    return "({})".format(", ".join("`{}`".format(col) for col in columns))