python中x=(y=1 )为什么是非法的呢?
x=(y=1)在解释器看来就是x= y=1,解释器会先解释y=1 但是y=1是个赋值语句不会有返回值,所以x等于的是个空值。
Python由荷兰数学和计算机科学研究学会的Guido van Rossum 于1990 年代初设计,作为一门叫做ABC语言的替代品。Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言。
扩展资料:
Python开发人员尽量避开不成熟或者不重要的优化。一些针对非重要部位的加快运行速度的补丁通常不会被合并到Python内。所以很多人认为Python很慢。不过,根据二八定律,大多数程序对速度要求不高。在某些对运行速度要求很高的情况,Python设计师倾向于使用JIT技术,或者用使用C/C++语言改写这部分程序。
Python是完全面向对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多继承,有益于增强源代码的复用性。Python支持重载运算符和动态类型。相对于Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了Haskell和Standard ML中久经考验的函数式程序设计工具。
x=y=1
或者
x=(y==1)
你写的非法,无法解释,作者说这样非法就非法,能有什么办法。不要按照`你认为可以的`去写代码,
要按照`可以这么写的`去写代码,好吧。规则是别人定的,你要做的是遵守别人的规则,才能不报错
解释器会先解释y=1 但是y=1是个赋值语句不会有返回值,所以x等于的是个空值