Как мне написать подсказки о типе переменной, если в Python принято несколько типов переменных или классов? [дубликат]Python

Программы на Python
Anonymous
Как мне написать подсказки о типе переменной, если в Python принято несколько типов переменных или классов? [дубликат]

Сообщение Anonymous »

Я хочу использовать подсказку (или, может быть, также называемую аннотацией?) Python, чтобы упростить мой код, получающий функции класса. Поэтому я использовал что-то вроде следующего:

Код: Выделить всё

def convert_to_string(my_integer_number: int) -> str:
return str(my_integer_number)
Но сейчас я работаю с селеном и у меня есть несколько классов, которые можно принять для одного и того же кода, например:

Код: Выделить всё

import webdriver

def get_driver(browser = DEFAULT_BROWSER, headless=False) -> \
webdriver.Chrome or webdriver.Firefox or webdriver.Edge:
"""
Returns a selenium webdriver:
* browser: Available options are 'chrome', 'edge' and 'firefox'
"""
if browser == 'chrome':
return webdriver.Chrome(
#....
)

if browser == 'firefox':
return webdriver.Firefox(
...
)

if browser == 'edge':
return webdriver.Edge(
...
)
И затем в функциях, где используется один из возвращенных драйверов:

Код: Выделить всё

def access_login_page(driver: webdriver.Chrome or webdriver.Firefox or webdriver.Edge) -> None:
"""
Access the login page using the header menu
"""
ELEMENT_ID = 'header-sign-in'
try:
element: WebElement = WebDriverWait(driver, timeout=30).until(
EC.element_to_be_clickable((By.ID, ELEMENT_ID))
)
Это выглядит как накладные расходы, но в то же время мне очень полезно иметь эту информацию. Это правильный подход?


Подробнее здесь: https://stackoverflow.com/questions/709 ... variable-t

Вернуться в «Python»