Введите проверку для cx_Oracle. OracleCursor

Это могло быть очень простым вопросом. Я хотел бы проверить переменную, тип cx_Oracle. OracleCursor, таким образом, я попробовал несколько пробных версий, но все отказавшие:

import cx_Oracle

def execute_sql(cursor):
    """Execute a SQL using cursor(cx_Oracle.OracleCursor)."""
    if not cursor:
        logging.error('cursor is null.')
        return None  # TODO: raise some exception.
    # elif isinstance(cursor, OracleCursor): # failed
    # elif isinstance(cursor, cx_Oracle.OracleCursor): # failed
        logging.error('cursor is not OracleCursor.')
        return None  # TODO: raise some exception.
# ...

Как я могу проверить тип cursor?

И дополнительный вопрос - то, какое исключение/ошибка подходит для недопустимой ошибки типа?

Спасибо за любую справку!

1
задан philipjkim 9 June 2010 в 05:21
поделиться

1 ответ

Вы можете проверить тип переменной, используя тип (переменная) :

if str(type(cursor)) == "<type 'OracleCursor'>":
       ...

PS Я знаю, что рекомендуется использовать isinstance () .

1
ответ дан 2 September 2019 в 23:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: