一些关于变量和数据类型的代码实例
例1 求 N 个数字的平均值
#!/usr/bin/env python3 N = 10 sum = 0 count = 0 print("please input 10 numbers:") while count < N: number = float(input()) sum = sum + number count = count + 1 average = sum / N print("N = {}, Sum = {}".format(N, sum)) print("Average = {:.2f}".format(average))
例2 温度转换,使用公式 C = (F - 32) / 1.8 将华氏温度转为摄氏温度
#!/usr/bin/env python3 fahrenheit = 0 print("Fahrenheit Celsius") while fahrenheit <= 250: celsius = (fahrenheit - 32) / 1.8 # 转换为摄氏度 print("{:5d} {:7.2f}".format(fahrenheit , celsius)) fahrenheit = fahrenheit + 25
{:5d}
的意思是替换为 5 个字符宽度的整数,宽度不足则使用空格填充。 {:7.2f}
的意思是替换为为7个字符宽度的保留两位的小数,小数点也算一个宽度,宽度不足则使用空格填充。其中7
指宽度为7,.2f
指保留两位小数。
可以在一行内将多个值赋值给多个变量,这个技巧用来交换两个数的值非常方便。
元组封装与拆封:
要明白这是怎么工作的,你需要学习元组(tuple)这个数据类型。我们是用逗号创建元组。在赋值语句的右边我们创建了一个元组,我们称这为元组封装(tuple packing),赋值语句的左边我们则做的是元组拆封 (tuple unpacking)。
>>> data = ("my", "China", "Python") >>> name, country, language = data >>> name 'my' >>> country 'China' >>> language 'Python'
表达式:
在 Python 中你会写大量的表达式。表达式由运算符和操作数组成,像 2+3
就是一个表达式,其中 2 和 3 是操作数,加号是运算符。
如果要进行整除,使用 //
运算符,它将返回商的整数部分。%
是求余运算符。
#!/usr/bin/env python3 days = int(input("Enter days: ")) months = days // 30 days = days % 30 print("Months = {} Days = {}".format(months, days))
更容易的办法:
#!/usr/bin/env python3 days = int(input("Enter days: ")) print("Months = {} Days = {}".format(*divmod(days, 30)))
divmod(num1, num2)
返回一个元组,这个元组包含两个值,第一个是 num1 和 num2 相整除得到的值,第二个是 num1 和 num2 求余得到的值,然后我们用 *
运算符拆封这个元组,得到这两个值。
逻辑运算符与关系运算符:
对于逻辑 与,或,非,我们使用 and
,or
,not
这几个关键字。
x op= expression 为简写运算的语法形式。其等价于 x = x op expression ,例如:a = 12 , a += 13
注意事项:通常我们书写表达式的时候,会在每一个运算符左右都放一个空格,这样使代码更可读。
类型转换: