【问题标题】:Making a single-line 'if' statement without an 'else' in Python 3在 Python 3 中制作没有“else”的单行“if”语句
【发布时间】:2017-05-25 17:42:09
【问题描述】:

有没有办法在一行中做到这一点,但不使用“无”?:

folders = ['Project 1', 'Project 2']
files = os.listdir('/home/user/Documents/Python')
for i in files:
    files.remove(i) if i in folders else None

可以“跳过”“else”语句吗?

提前致谢。

【问题讨论】:

  • 你应该做files = [_ for _ in files if _ not in folders],Python风格。
  • @zyxue: _ 仅用于未使用的变量。
  • @zyxue 不要使用_,除非它是一次性变量,但事实并非如此。
  • 在这种情况下,它是一次性的,因为列表理解中不需要它,不是吗?

标签: python python-2.7 python-3.x if-statement


【解决方案1】:

if i in files: files.remove(i)

【讨论】:

  • 注意:但这不是推荐的样式。最好分成两行。
猜你喜欢
  • 1970-01-01
  • 2020-04-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-12-22
相关资源
最近更新 更多