现在,我们能使用 Python 完成比 2+2
更复杂的工作。在下例里,我们能写出一个初步的斐波纳契数列如下:
#!/usr/bin/python3
# Fibonacci series: 斐波纳契数列
# 两个元素的总和确定了下一个数
a, b = 0, 1
while b < 10:
print(b)
a, b = b, a+b
尝试一下
有关斐波那契数列的具体问题可在 斐波纳契奇数求和算法挑战 教程中进一步了解。
其中代码 a, b = b, a + b
的计算方式为先计算右边的表达式,然后同时赋值给左边,等价于:
n = b
m = a + b
a = n
b = m
执行以上程序,输出结果为:
1
1
2
3
5
8
这个例子介绍了几个新特征。
- 第一行包含了一个复合赋值:变量 a 和 b 同时得到新值 0 和 1。
- 最后一行也使用了复合赋值的方法:等价于 c = a,a = b,b = b + c。
接下来尝试输出变量值:
i = 1024 * 1024
print('i 的值为:', i)
尝试一下
执行以上程序,输出结果为:
i 的值为: 1048576
end 关键字
关键字 end 可以用于将结果输出到同一行,或者在输出的末尾添加不同的字符,实例如下:
# 两个元素的总和确定了下一个数
a, b = 0, 1
while b < 1024:
print(b, end=',')
a, b = b, a+b
尝试一下
执行以上程序,输出结果为:
1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,
最后尝试使用 if 条件控制
age = int(input("请输入你家狗狗的年龄: "))
print("")
if age < 0:
print("请输入正确的年龄。")
elif age == 1:
print("相当于 14 岁的人。")
elif age == 2:
print("相当于 22 岁的人。")
elif age > 2:
human = 22 + (age -2)*5
print("对应人类年龄: ", human)
### 退出提示,本地环境下可以使用这样的退出提示使代码更易用
input('点击 enter 键退出')