Python 输入带有比较运算符的字符串,并对数组索引执行比较

Python 输入带有比较运算符的字符串,并对数组索引执行比较,python,python-3.x,Python,Python 3.x,这是我到目前为止的代码: # Function to search for possible matches for words: and chapters: def intSearch(term, row, index): """ Index of 6: Word search Index of 7: Chapter search """ rowValue = row[index] if

这是我到目前为止的代码:

# Function to search for possible matches for words: and chapters:
def intSearch(term, row, index):
    """
    Index of 6: Word search
    Index of 7: Chapter search
    """
    rowValue = row[index]
    if True:
        return True
    return False
“如果是真的”只是暂时的。所以我想要的是输入项是一个比较运算符,然后是一个整数,例如'>=334'。然后这个字符串可以被分解,并与我可以使用row[index]的行的特定索引进行比较。如果这个比较是正确的,它将返回True,如果不是,它将返回False。比较基本上适用于所有运算符,包括:==,!=,>,=是比较运算符,term是要在其上进行比较的数字

我可以使用很多if和else语句,尽管我不确定这会有多高效


希望我能说清楚。谢谢

对于这类问题,有两个非常有用的概念,标准
操作符
库和标准
字典

例如:

import operator as op

op_map = {
    "==": op.eq,
    "!=": op.ne,
    ">": op.gt,
    "<": op.lt,
    "<=": op.le,
    ">=": op.ge,
}

x = 10
y = 0

for op_str in op_map:
    print(f"{x} {op_str} {y}: {op_map[op_str](x, y)}")
导入运算符作为op
op_映射={
“=”:op.eq,
“!=”:op.ne,
“>”:op.gt,

“对于这类问题,有两个非常有用的概念,标准
运算符
库和标准
词典

例如:

import operator as op

op_map = {
    "==": op.eq,
    "!=": op.ne,
    ">": op.gt,
    "<": op.lt,
    "<=": op.le,
    ">=": op.ge,
}

x = 10
y = 0

for op_str in op_map:
    print(f"{x} {op_str} {y}: {op_map[op_str](x, y)}")
导入运算符作为op
op_映射={
“=”:op.eq,
“!=”:op.ne,
“>”:op.gt,

"如果您想管理多个条件,那么如果elif else是正确的选择。与其他语言不同,Python不支持更适合复杂的基于实例的执行的switch-case语句。只是不确定如果我必须测试每个运算符,那么效率会有多高。不要过早地优化代码,首先让它工作,t测试它,然后如果它很慢,找出问题。最好有一个慢的东西,而不是根本没有代码:)所以函数只是比较一个项目与给定的术语?你可以只做
返回行[index]>=term
。如果我理解错了,很抱歉,这就是您想要做的吗?如果您想管理多个条件,那么如果elif else是正确的选择。与其他语言不同,Python不支持更适合复杂的基于案例的执行的switch case语句。只是不确定如果我必须est针对每个运算符不要过早地优化代码,首先让它工作,然后测试它,如果它运行缓慢,则确定问题。最好有一个运行缓慢的代码,而不是根本没有代码:)因此函数只会将一项与给定项相比较?您只需执行
返回行[index]>=term
。如果我理解错了,很抱歉,这就是你想要做的吗?
10 == 0: False
10 != 0: True
10 > 0: True
10 < 0: False
10 <= 0: False
10 >= 0: True