检查string中是否有值的语法

时间:2013-03-26 08:35:33

标签: python

我试图做一个简单的检查,如果字符串中有3个特定值。如果有,该语句应该不返回任何内容,而不是保存。

这是我的代码,但我认为语法错误:

if not ('2239687' or '2238484' or '2239440') in user_id:
    #The user is not admin, save the user
    web_user.save() 

详细说明,我希望它测试user_id是“2239687”还是“2238484”或“2239440”(而不是,例如,“002239440”)。如果user_id是这三个值中的一个(并且只有这三个值),则该语句应返回false。

3 个答案:

答案 0 :(得分:2)

还有一个选择:

if not any(idx in user_id for idx in ('2239687' ,'2238484' , '2239440')):
    # do something

答案 1 :(得分:2)

if not any(x in user_id for x in ('2239687', '2238484', '2239440')):
    #The user is not admin, save the user
    web_user.save() 

检查user_id中是否存在三个字符串。

答案 2 :(得分:1)

试试这个

if user_id not in ('2239687' ,'2238484' , '2239440'):

或者

if not user_id in ('2239687' ,'2238484' , '2239440'):