当前位置: 首页 > 面试题库 >

如何检查一个变量是否等于一个字符串或另一个字符串?

耿联
2023-03-14
问题内容

if var is ‘stringone’ or ‘stringtwo’:
dosomething()

这行不通!我有一个变量,当它是两个值中的一个时,我需要它执行某些操作,但它不会输入if语句。在Java中if (var == "stringone" ||"stringtwo")工作。如何用Python编写?


问题答案:

这不能满足您的期望:

if var is 'stringone' or 'stringtwo':
    dosomething()

它与:

if (var is 'stringone') or 'stringtwo':
    dosomething()

始终为真,因为它'stringtwo'被认为是“真”值。

有两种选择:

if var in ('stringone', 'stringtwo'):
    dosomething()

或者您可以编写单独的相等性测试,

if var == 'stringone' or var == 'stringtwo':
    dosomething()

不要使用is,因为is比较对象标识。有时您可能会因为Python实习生很多字符串而无法使用它,就像您可能在Java中因为Java实习生很多字符串而放弃它一样。但是is除非真正想要对象标识,否则不要使用。

>>> 'a' + 'b' == 'ab'
True
>>> 'a' + 'b' is 'abc'[:2]
False # but could be True
>>> 'a' + 'b' is 'ab'
True  # but could be False


 类似资料:
  • 例如: 字符串1=helloworld字符串2=asdfuvjerhelloworld 这应该是真的。 另一个例子:字符串1=helloworld字符串2=lshewodxzr 这也应该是真的。 所以我正在研究如何创建一个方法,它将返回一个布尔值,检查第二个字符串是否包含第一个字符串中的字母。在第二个示例中,string2只有一次字母l,尽管字母l在string1中出现了三次,但仍然返回true。

  • rank ▲ ✰ vote url 41 487 108 705 url 检查一个字符串是否是一个数字 如果一个字符串可以被看做一个数字那么有什么好的方法可以检测出来? 我能想到的方法: def is_number(s): try: float(s) return True except ValueError: return Fals

  • 问题内容: 在代码中检查的子字符串是: 但是我该如何在Swift中做到这一点? 问题答案: 您可以使用Swift进行完全相同的调用: Swift 4和Swift 5 在Swift 4中,String是值的集合,在Swift 2和3中并不是这样,因此您可以使用以下更简洁的代码1: 迅捷3.0+ 较早的斯威夫特 我希望这是一个有用的解决方案,因为包括我在内的某些人通过致电遇到了一些奇怪的问题。1个 P

  • 在中,检查中的子字符串的代码是: 但我如何在Swift中做到这一点呢?

  • 问题内容: 如何在JavaScript中编写等效于C#的代码? 注意:这是一个古老的问题,正如评论中指出的ECMAScript2015(ES6)引入了该方法。但是,在撰写此更新(2015)时,浏览器支持还远远没有完成。 问题答案: 你可以使用方法,但并非所有浏览器都支持该方法。你可能需要使用填充程序/填充来将其添加到不支持它的浏览器中。创建一个符合规范中所有细节的实现有点复杂。如果你想要忠实的垫片

  • 我想解析一个字符串,看看它是匹配整个字符串还是子字符串。我试过这个: 但我的问题是: