表达式和语句在Python中有什么区别?
我从未想过这个问题,直到我学习了Python生成器,它说:“使用产率作为表达式”。
此外,您能在Python生成器的上下文中解释这个问题吗?Python生成器“使用产率作为表达式”?
发布于 2012-09-26 11:39:48
可以计算表达式以返回值。任何表达式也可以用作语句。
换句话说,如果您可以编写a = ...
,那么...
就是一个表达式。所以2*3
和zip(x,y)
是表达式。
类似于raise Exception
的东西是一种语句,而不是表达式:您不能编写a = (raise Exception)
。
作为表达式,b = (yield a)
是生成器中的有效代码。如果使用生成器的send()
方法,则将b
设置为传入的值。
发布于 2012-09-26 11:36:32
表达式只包含标识符、文字和运算符,其中运算符包括算术运算符和布尔运算符、函数调用运算符()、订阅运算符[]和类似的,可以简化为某种“值”,它可以是任何一个对象。
另一方面,语句是构成一行(或几行)代码的一切。请注意,表达式也是语句。
希望它能帮助你:)
发布于 2012-09-26 11:51:36
我会把它归结为:
当然,所有这类减少的问题是有一个警告;表达式仍然可以做一些事情作为其评估的一部分。但最终还是有价值的。
https://stackoverflow.com/questions/12600754
复制相似问题