2.3.3 表达式
本节目标:
理解表达式,掌握表达式求值的方法
我们创建一个小海龟对象
这个小海龟对象(可以理解为它的属性)被存在了内存中,通过id(t1)
我们可以看到这个对象的唯一身份标识,这个对象被储存在内存的id(t1)
这个位置(严格来讲,只有CPython是这样)。 而t1
则是这个对象的一个代号,当我们再写t1
的时候,Python就会知道,t1
是之前创建的小海龟对象。
如果我们忘记加括号
那么就是把turtle.Turtle
这个类赋值给了t1
,当我们再写t1
的时候,得到的是turtle.Turtle
这个类。 即t2 = turtle.Turtle()
和t2 = t1()
变成一个意思了。
这体现了Python中“一切皆对象”的理念,大家都是平等的。
但之前提到关键字不是对象,所以,妄想
是不行的。因为import
不是对象。
反过来,
是合乎Python语法的。 但这样做之后,
就相当于
这是错误的。
能求得结果的就是表达式,比如表达式42
的结果是42
,1+1*1/1
的结果是2.0
,[i ** 2 for i in range(10)]
的结果是一个list
,这个list
里面包含10个int
类型的对象。
我们可以写
前进42
步。
也可以写
这时,Python会先计算出21 * 2
的结果。
更复杂(无聊)一点,
也是一样的。
Last updated