在一行上写if语句可以吗?

2024-05-19 03:05:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我不确定这个问题是否适合这个社区,因为它更倾向于观点,所以如果不适合,请投票关闭它。你知道吗

我的问题是关于Python中的if语句(也许不仅仅是Python)和样式。可以用一行字写吗?我说的不是形式something if condition else something-else的三元运算符,而是当人们写:

if condition: do this

而不是

if condition:
    do this

我很困惑,因为我总是被教导(个人认为这样更好)用第二种形式写条件句。然而,我注意到很多人是用第一种形式写的。你知道吗

在什么情况下这是可以接受的?我在网上找不到关于这个话题的特别指南。你知道吗


Tags: if运算符样式语句投票thisconditiondo
2条回答

PEP 8(向下滚动一点),Python的样式指南不鼓励这样做:

Compound statements (multiple statements on the same line) are generally discouraged.

Yes:

if foo == 'blah':
    do_blah_thing()
do_one()
do_two()
do_three()

Rather not:

if foo == 'blah': do_blah_thing()
do_one(); do_two(); do_three()

这是不鼓励的,但也是可以接受的。无论哪种方法都有效,执行时没有任何错误。你知道吗

相关问题 更多 >

    热门问题