我对编程比较陌生,而且我正在制作一个简单的扫描程序,只要它找到正斜杠(/)或反斜杠(\),就会运行命令,它会输出(i)认为它不应该输出。
这是代码:
loop = 0
a = 'm/es\s/a/ge'
while loop <= len(a)-1:
if a[loop] == '/' or '\\':
print ('found at: ' + str(loop))
loop += 1
输出:
found at: 0
found at: 1
found at: 2
found at: 3
found at: 4
found at: 5
found at: 6
found at: 7
found at: 8
found at: 9
found at: 10
它应该只打印任何4次(因为字符串中只有4个斜杠)
我尝试删除&#34;或&#34;以及其他可能的价值,并且它做了它应该做的事情,所以问题必须是&#34;或&#34;
我正在使用&#34;或&#34;错误?或者这是别的吗?编辑: 我尝试了How do I test one variable against multiple values?,但问题是如何针对单个值测试多个变量,而我需要知道如何针对多个可能的值测试单个变量
答案 0 :(得分:1)
您想要使用
if a[loop] == '/' or a[loop] == '\\'
否则'\\'
将始终返回true。
答案 1 :(得分:0)
您必须在条件声明中使用它:
如果[循环] ==&#39; /&#39;或[循环] ==&#39; \\&#39;: