diff --git a/mypy/stubgen.py b/mypy/stubgen.py index 032b48d1aa5ca..452dff5e34657 100755 --- a/mypy/stubgen.py +++ b/mypy/stubgen.py @@ -926,7 +926,7 @@ def process_namedtuple(self, lvalue: NameExpr, rvalue: CallExpr) -> None: if self._state != EMPTY: self.add('\n') if isinstance(rvalue.args[1], StrExpr): - items = rvalue.args[1].value.split(" ") + items = rvalue.args[1].value.replace(',', ' ').split() elif isinstance(rvalue.args[1], (ListExpr, TupleExpr)): list_items = cast(List[StrExpr], rvalue.args[1].items) items = [item.value for item in list_items] diff --git a/test-data/unit/stubgen.test b/test-data/unit/stubgen.test index b1995b57e7759..7d95072800dc5 100644 --- a/test-data/unit/stubgen.test +++ b/test-data/unit/stubgen.test @@ -590,6 +590,28 @@ xx [out] from typing import Any, NamedTuple +class X(NamedTuple): + a: Any + b: Any + +[case testNamedtupleAltSyntaxUsingComma] +from collections import namedtuple, xx +X = namedtuple('X', 'a, b') +xx +[out] +from typing import Any, NamedTuple + +class X(NamedTuple): + a: Any + b: Any + +[case testNamedtupleAltSyntaxUsingMultipleCommas] +from collections import namedtuple, xx +X = namedtuple('X', 'a,, b') +xx +[out] +from typing import Any, NamedTuple + class X(NamedTuple): a: Any b: Any