>>> L = ['Hello', 'World', 18, 'Apple', None]
>>> [s.lower() for s in L if isinstance(s,str)]

在考虑保留非字符串内容时加入,if else方法。但放置在for in 语句之后则报错。

参考

关于if else放前面,而if放后面的问题。if else是个表达式,而单独if是个判断语句,这两个情形是不一样的。

x if A else c其实是一个表达式,如果A成立则为x,否则值取c。而if放后面,那是配合for循环加的判断语句。

python官方文档说的很清楚啦:

https://docs.python.org/3/reference/expressions.html#conditional-expressions

https://docs.python.org/3/reference/expressions.html#displays-for-lists-sets-and-dictionaries

 

相关文章:

  • 2022-12-23
  • 2021-05-29
  • 2022-12-23
  • 2022-03-07
  • 2022-12-23
  • 2021-07-03
  • 2022-03-06
  • 2021-09-29
猜你喜欢
  • 2021-05-09
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-09
  • 2021-10-25
  • 2021-12-25
相关资源
相似解决方案