总结:
def not_empty(s): return s and s.strip()
list(filter(not_empty, ['A', '', 'B', None, 'C', ' ']))
结果: ['A', 'B', 'C']
第1点0 、 1 是 False 、 True 完全等价的。 可以用 0==False
第2点注意:if '' :
print(1)
打印不了任何结果,因为'',空list 和假,if都无法成立。
第3点,最后return s and s.strip() 表示 如果第一个为真,就返回这个字符串。 如果s为含有空格的字符串如:' ', 那么 就会发现s.strip(),是'' ,用if判断,等价于假。
远欣的解释也很好: 当s and s.strip() (即s和去掉首尾空格的s都是真就返回True即不是None,不是''就可以,)
整理一下string的函数
http://www.cnblogs.com/emanlee/p/3616755.html
http://www.jb51.net/article/47956.htm
http://blog.csdn.net/wyzxg/article/details/40048135
整理一下list的函数
http://www.cnblogs.com/kaituorensheng/archive/2012/11/21/2781738.html
http://blog.csdn.net/baoli1008/article/details/40263769
整理一下元祖tuple的函数
操作详解: http://www.jb51.net/article/47986.htm
就一个 啊http://www.runoob.com/python/att-tuple-tuple.html
整理一下dic的函数
http://www.cnblogs.com/janes/p/5523135.html