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