Discuss / Python / 1

racityVE

#1 Created at ... [Delete] [Delete and Lock User]

-- coding: utf-8 --

L1=['Hello','World',18,'Apple',None] L2=[s.lower()for s in L1 if isinstance(s,str)] # 为什么这里不打成 if isinstance(s,str)==Ture 这里为啥会直接取出正确的值 不需要说明一下吗 print(L2)

花落缨

#2 Created at ... [Delete] [Delete and Lock User]

只要 if 后面的表达式为 True 就行,而 isinstance(s,str) 返回的结果就是布尔值,所以可以直接把 isinstance(s,str) 写在 if 后面。


  • 1

Reply