Python中有整数通配符吗?
我有一个语句:
if self.rank == self.cube.Get_cart_rank([x, y, 0])
我想用通配符,这样它就可以接受任何值作为x和y。我在考虑使用(True, True, 0),但是这样对点[0,0,0]有效吗?有没有什么建议可以做到这一点?
2 个回答
0
我会用 None, None, 0
来表示通配符,然后在 Get_cart_rank
函数里检查这个通配符,比如用 if x is None
来判断。其实还有更好的方法,就是使用默认参数,不过我需要更多的信息才能给出建议。
1
如果我理解你的问题没错的话,你想知道是否存在一些值可以让你的 if
条件变成 True
。你需要明确地去寻找这样的一对值:
found_pair = False
# MAX_X and MAX_Y would be have to be supplied by you
for x in range(0, MAX_X+1):
for y in range(0, MAX_Y+1):
if self.rank == self.cube.Get_cart_rank([x,y,0]):
found_pair = True
break
if found_pair:
...
有些编程语言(比如 Prolog)可以让你写代码来询问这些问题,然后它们会帮你组织和执行搜索。不过,Python 不是这样的语言。