diff --git a/papermill/tests/test_translators.py b/papermill/tests/test_translators.py index 0edc1f07..8ab4b560 100644 --- a/papermill/tests/test_translators.py +++ b/papermill/tests/test_translators.py @@ -82,6 +82,10 @@ def test_translate_comment_python(test_input, expected): "a: List[str] = ['this', 'is', 'a', 'string', 'list'] # Nice variable a", [Parameter("a", "List[str]", "['this', 'is', 'a', 'string', 'list']", "Nice variable a")], ), + ( + "a: datetime.date = '2024-01-01' # Nice variable a", + [Parameter("a", "datetime.date", "'2024-01-01'", "Nice variable a")], + ), ( "a: List[str] = [\n 'this', # First\n 'is',\n 'a',\n 'string',\n 'list' # Last\n] # Nice variable a", # noqa [Parameter("a", "List[str]", "['this','is','a','string','list']", "Nice variable a")], diff --git a/papermill/translators.py b/papermill/translators.py index 1cb43d89..ee0877f6 100644 --- a/papermill/translators.py +++ b/papermill/translators.py @@ -143,7 +143,7 @@ def inspect(cls, parameters_cell): class PythonTranslator(Translator): # Pattern to capture parameters within cell input PARAMETER_PATTERN = re.compile( - r"^(?P\w[\w_]*)\s*(:\s*[\"']?(?P\w[\w_\[\],\s]*)[\"']?\s*)?=\s*(?P.*?)(\s*#\s*(type:\s*(?P[^\s]*)\s*)?(?P.*))?$" + r"^(?P\w[\w_]*)\s*(:\s*[\"']?(?P\w[\w_\[\],\s\.]*)[\"']?\s*)?=\s*(?P.*?)(\s*#\s*(type:\s*(?P[^\s]*)\s*)?(?P.*))?$" ) @classmethod