为什么在Python中的if语句中不允许赋值

时间:2015-07-27 04:33:26

标签: python

为什么在Python的if语句中不允许赋值? 在其他语言如c中,可以使用此代码。

代码Python:

>>> if x=12:

SyntaxError: invalid syntax

代码C ++:

#include <iostream>
using namespace std;
int main(){
if (int x=1)
{
    cout<<"ok";
    }
}
for / while语句中的

是相同的:

>>> while (x=input())!='q':

SyntaxError: invalid syntax

2 个答案:

答案 0 :(得分:4)

这是真的。无论好坏,Python严格区分表达式和语句,而后者没有值。特别是,赋值语句没有值,因此不能在条件语句中使用。

答案 1 :(得分:-4)

请记住Python使用两个等号。

if x == 12
   *Enter expressions here*