我得到了以下信息,我被要求给出值的类型和它返回的表达式:
>>> b = 10
>>> c = b > 9
>>> c
我知道在第一部分中,我们将b
定义为10,但在第二句中,我将其解释为:定义c
等于b>9
。现在b>9
作为一个值,没有意义,所以c
不能等于它,所以我说答案是error
,类型是Nonetype
。你知道吗
正确的答案显然是True
,但为什么呢?为什么我们要先选c=b
部分,然后再问它是不是>;9?有没有什么标准的顺序,你应该应用这些东西?你知道吗
PS:编程中的三个>>>
符号是什么意思?我在上CS入门课程,所以请原谅我用词不当。你知道吗
Tags:
Python的优先顺序是well documented。
b > 9
返回一个布尔值,必须先对其求值,然后才能用c =
赋值。你知道吗并且
>>>
是解释器REPL的一部分。它并不是对所有编程语言都有特定的意义。你知道吗您可以在任何Python解释器中运行代码,以查看输出值是什么。我不知道你说的非类型错误是什么意思,因为在这些行中,没有任何值被计算为无
我想你会混淆:
=
),它将运算符右侧的表达式的结果赋给运算符左侧的变量,并==
),用于测试运算符左右两侧的表达式是否相等,并返回布尔值(真/假)。你知道吗第一个表达式将值10赋给变量
b
。第二个表达式将计算结果为true的表达式b > 9
(即10>;9)赋给c
。因此,我希望你能看到c
最终是如何成为现实的。你知道吗您可能需要澄清的另一个问题是
=
操作符是右关联的,这意味着操作符右侧的表达式将首先求值。i、 e.在第二行中,在将结果(true)赋给c
之前,首先对b > 9
求值。你知道吗回答你问题的第二部分。你的代码实际上不会像普通C编译器那样编译。我不确定
>>>
是什么。你用的是在线编辑还是什么?你知道吗有效的C代码是:
相关问题 更多 >
编程相关推荐