if not 就是一个判断语句,not 表示非,写成这个样子可能就理解了:
if not cond: do_something()
意思就是如果 cond 为 “假值” (False,None,"" 等)时,执行分支里的语句。
如果学过别的语言,比如 C\C++ 等,上面的语句等价于:
if !cond { do_something(); }
举例:
attrs = ((name, value) for name, value in future_class_attr.items() if not name.startswith('__'))
意思就是,如果 name 这个字符串不是以 "__" (两个下划线) 开头(表示不是 private 的成员),就添加到生成器里。
拓展:
举例需求为,内容中不得出现 '招聘', '诚聘', '社招' 等关键字,符合条件的才打印出来。
#!/usr/bin/env python # -*- coding: gbk -*- # -*- coding: utf_8 -*- # Date: 2016/5/13 # Created by 独自等待 # 博客 http://www.waitalone.cn/ filters = ['招聘', '诚聘', '社招'] contents = [ '独自等待安全团队诚聘, //www.jb51.net/', '独自等待安全团队招聘, //www.jb51.net/', '独自等待安全团队社招, //www.jb51.net/', '独自等待信息安全博客, //www.jb51.net/', ] for content in contents: if any(keyword in content for keyword in filters): continue print content
以上就是python中if not的使用方法。更多Python学习推荐:PyThon学习网教学中心。