1 先来个例子:
Python 还可以完成比二加二更复杂的任务。 例如,可以编写 斐波那契数列 的初始子序列,如下所示:
>>> # 斐波那契级数:
... # 两个元素的和定义了下一个值
... a, b = 0, 1
>>> while a < 10:
... print(a)
... a, b = b, a+b
...
0
1
1
2
3
5
8
这个例子中出现了循环,赋值,比较,输出。
1,第一行中的 多重赋值:变量 a 和 b 同时获得新值 0 和 1。最后一行又用了一次多重赋值,这体现 在右表达式在赋值前就已经求值了。右表达式求值顺序为从左到右。
2,while 循环只要条件保持为真就会一直执行(这里指: a < 10 )。
3,Python 和 C 一样,任何非零整数都 为真,零为假。这个条件也可以是字符串或列表的值,事实上,任何序列都可以;长度非零就为真,空序列则为 假。示例中的判断只是最简单的比较。
4,比较操作符的标准写法和 C 语言一样: < (小于)、 > (大 于)、 == (等于)、 <= (小于等于)、 >= (大于等于)及 != (不等于)。
5, 循环体是缩进的 :缩进是 Python 组织语句的方式。在交互式命令行里,得为每个缩进输入制表符或空格。 使用文本编辑器可以实现更复杂的输入方式;所有像样的文本编辑器都支持自动缩进。交互式输入复合语句时, 要在最后输入空白行表示结束(因为解析器不知道哪一行代码是最后一行)。注意,同一块语句的每一行的缩进相同。
6,print() 函数输出给定参数的值。与表达式不同,它能处理多个参数,包括浮 点数与字符串。它输出的字符串不带引号,且各参数项之间会插入一个空格,这样可以实现更好的格式化操作:
>>> i = 256*256
>>> print('The value of i is', i)
The value of i is 65536
2 赋值
python赋值语句的特性:
变量在首次赋值时会被创建,不必提前预声明变量名;
变量在引用前必须先赋值;
执行隐式赋值的一些操作,如: 模块导入、函数和类的定义、函数参数、for循环变量。
赋值语句创建对象引用,而不是对象复制;比如下面的示例,a和b是两个变量,b最初的值由a赋值得到,但它们都指向同一个对象(这里是下面的编程名言字符串),b重新赋值之后,其指向改变了,内存地址不再与a相同。
>>> a = '学习赋值'
>>> b = a
>>> id(a)
2895823313616
>>> id(b)
2895823313616
>>> id(a) == id