**Apache Airflow version**: 2.1.1

**What happened**:

The rendered templates screen doesn't show the operator arguments for TaskFlow API operators.
![image](https://user-images.githubusercontent.com/72943478/125486179-f6dde0be-9f60-4aca-831a-5cfd16e7f006.png)

**What you expected to happen**:

Should show the arguments after any templates have been rendered.

**How to reproduce it**:

Will happen for any `@task` decorated operator.

**Anything else we need to know**:

This issue appears on a number of operators.  Possible solution is to modify the "get_python_source" in utils/code_utils.py to handle list and dict. This would cause any operator that using py as the renderer to handle lists and dicts.  Possibly something like:
```
    if isinstance(x, list):
        return [str(v) for v in x]

    if isinstance(x, dict):
        return {k: str(v) for k, v in x.items()}
```
The converting values to strings seems necessary in order to avoid errors when this is passed to the pygments lexer.
![image](https://user-images.githubusercontent.com/72943478/125494716-01cf0c11-9e5f-45fa-afe2-4f99409edefc.png)

airflow/www/views.py
nodes = []
        edges = []
        for dag, dependencies in SerializedDagModel.get_dag_dependencies().items():
            dag_node_id = f"dag:{dag}"
            nodes.append(self._node_dict(dag_node_id, dag, "dag"))
            for dep in dependencies:
                nodes.append(self._node_dict(dep.node_id, dep.dependency_id, dep.dependency_type))
                edges.extend(
                    [
                        {"u": f"dag:{dep.source}", "v": dep.node_id},
                        {"u": dep.node_id, "v": f"dag:{dep.target}"},
                    ]
                )
        self.nodes = nodes
        self.edges = edges
    @staticmethod
    def _node_dict(node_id, label, node_class):
        return {
            "id": node_id,
            "value": {"label": label, "rx": 5, "ry": 5, "class": node_class},
        }
class CustomPermissionModelView(PermissionModelView):