Код: Выделить всё
def my_plot_function(ax=None):
if ax is None:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
# plot someting...
return ax
Код: Выделить всё
from matplotlib.axes import Axes
def my_plot_function(ax : None | Axes = None) -> Axes:
if ax is None:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
# plot someting...
return ax
Код: Выделить всё
try:
from matplotlib.axes import Axes
except ModuleNotFoundError:
class Axes:
pass
Импортировать классы только для ввода на Python? не имеет избранных ответов. Этот вопрос не касается кругового импорта. Речь идет о типах из необязательных зависимостей. Есть ли какой-либо другой (более новый) способ, кроме аннотации типа в кавычках, как это предложено в разделе «Импорт классов, только для ввода в Python»??
Подробнее здесь: https://stackoverflow.com/questions/790 ... -in-python