diff --git a/python/pyspark/pandas/typedef/typehints.py b/python/pyspark/pandas/typedef/typehints.py index a98691efcb0da..8d76718349cfb 100644 --- a/python/pyspark/pandas/typedef/typehints.py +++ b/python/pyspark/pandas/typedef/typehints.py @@ -25,7 +25,7 @@ import typing from collections.abc import Iterable from inspect import isclass -from typing import Any, Callable, Generic, List, Tuple, Union, Type, get_type_hints +from typing import Any, Callable, Generic, List, Optional, Tuple, Union, Type, get_type_hints import numpy as np import pandas as pd @@ -127,15 +127,15 @@ def __repr__(self) -> str: class IndexNameTypeHolder: - name = None - tpe = None - short_name = "IndexNameType" + name: Optional[str] = None + tpe: Optional[Union[type, Dtype]] = None + short_name: str = "IndexNameType" class NameTypeHolder: - name = None - tpe = None - short_name = "NameType" + name: Optional[str] = None + tpe: Optional[Union[type, Dtype]] = None + short_name: str = "NameType" def as_spark_type( @@ -726,7 +726,7 @@ def create_type_for_series_type(param: Any) -> Type[SeriesType]: new_class: Type[NameTypeHolder] if isinstance(param, ExtensionDtype): new_class = type(NameTypeHolder.short_name, (NameTypeHolder,), {}) - new_class.tpe = param # type: ignore[assignment] + new_class.tpe = param else: if LooseVersion(pd.__version__) < "3.0.0": new_class = param.type if isinstance(param, np.dtype) else param @@ -893,13 +893,11 @@ def _new_type_holders( new_param.name = param.start if LooseVersion(pd.__version__) < "3.0.0": if isinstance(param.stop, ExtensionDtype): - new_param.tpe = param.stop # type: ignore[assignment] + new_param.tpe = param.stop else: # When the given argument is a numpy's dtype instance. new_param.tpe = ( - param.stop.type # type: ignore[assignment] - if isinstance(param.stop, np.dtype) - else param.stop + param.stop.type if isinstance(param.stop, np.dtype) else param.stop ) else: new_param.tpe = param.stop @@ -914,13 +912,9 @@ def _new_type_holders( ) if LooseVersion(pd.__version__) < "3.0.0": if isinstance(param, ExtensionDtype): - new_type.tpe = param # type: ignore[assignment] + new_type.tpe = param else: - new_type.tpe = ( - param.type # type: ignore[assignment] - if isinstance(param, np.dtype) - else param - ) + new_type.tpe = param.type if isinstance(param, np.dtype) else param else: new_type.tpe = param new_types.append(new_type)