Python: преобразование строки в оператор – методы и примеры

Фраза «строка Python в оператор» относится к задаче преобразования строкового представления оператора в соответствующий оператор Python. Вот несколько способов добиться этого:

  1. Использование операторов if-else или switch-case. Вы можете использовать условные операторы для сопоставления строкового представления с соответствующим оператором. Например:
def string_to_operator(operator_str):
    if operator_str == '+':
        return operator.add
    elif operator_str == '-':
        return operator.sub
    elif operator_str == '*':
        return operator.mul
    elif operator_str == '/':
        return operator.truediv
    # Add more cases for other operators
  1. Использование словаря. Вы можете создать словарь, который сопоставляет строковое представление соответствующему оператору. Вот пример:
import operator
operator_dict = {
    '+': operator.add,
    '-': operator.sub,
    '*': operator.mul,
    '/': operator.truediv,
    # Add more entries for other operators
}
def string_to_operator(operator_str):
    return operator_dict.get(operator_str)
  1. Использование модуля operator. Модуль operatorв Python предоставляет функции, соответствующие встроенным операторам. Вы можете использовать функцию getattrдля динамического получения оператора на основе строкового представления. Вот пример:
import operator
def string_to_operator(operator_str):
    return getattr(operator, operator_str)

Это несколько методов преобразования строкового представления оператора в соответствующий ему оператор в Python.