How to check if a variable is equal to one string or another string?
本问题已经有最佳答案,请猛点这里访问。
1 2 | if var is 'stringone' or 'stringtwo': dosomething() |
这不管用!我有一个变量,当它是其中一个值时,我需要它做一些事情,但是它不会进入if语句。在Java EDCOX1中,0工作。我如何用python编写这个?
This does not do what you expect:
1 2 | if var is 'stringone' or 'stringtwo': dosomething() |
It's the same as:
1 2 | if (var is 'stringone') or 'stringtwo': dosomething() |
自从
有两种备选办法:
1 2 | if var in ('stringone', 'stringtwo'): dosomething() |
或者你可以分别写平等测试
1 2 | if var == 'stringone' or var == 'stringtwo': dosomething() |
不要使用
1 2 3 4 5 6 | >>> 'a' + 'b' == 'ab' True >>> 'a' + 'b' is 'abc'[:2] False # but could be True >>> 'a' + 'b' is 'ab' True # but could be False |
ZZU1
或更多的Python,
1 2 | if var in ['string one', 'string two']: do_something() |
两个分开的检查同样,使用
1 2 | if var=='stringone' or var=='stringtwo': dosomething() |
1 2 | if var == 'stringone' or var == 'stringtwo': dosomething() |
如果两个参照点都被用于同一目的,则使用此方法。它比较了记忆地址。显而易见,弦乐和Var是不同的对象,它们只包含相同的弦乐,但它们是两个不同的结构。所以他们的课程有两个不同的记忆地址,而这将是错误的。
1 2 3 4 5 | for a in soup("p",{'id':'pagination'})[0]("a",{'href': True}): if createunicode(a.text) in ['<','<']: links.append(a.attrMap['href']) else: continue |
这是我的工作。