变量和命名
通俗的讲,在编程中,变量是代指某个东西的名字。起一个好的名字会在日后的操作中获得极大的方便。
练习部分
cars = 100
space_in_a_car = 4.0
drivers = 30
passengers = 90
cars_not_driven = cars - drivers
cars_driven = drivers
carpool_capacity = cars_driven * space_in_a_car
average_passengers_per_car = passengers / cars_driven
print "There are",cars,"cars available"
print "There are only",drivers,"drivers available."
print "There will be",cars_not_driven,"empty cars today."
print "We can transport",carpool_capacity,"people today."
print "We have",passengers,"to carpool today."
print "We need to put about",average_passengers_per_car,"in each car."
space_in_a_car
中_
是下划线,书中说明下划线通常被作为假想的空格,用来隔开单词。这样命名变量看起来会更清楚些。
很巧的是在输入完代码后运行程序,我遇到了书中同样的问题,遇到了NameError
错误。
加分习题
1.在程序中用4.0作为 space_in_a_car
的值,我认为没有必要,因为这里不需要浮点数,改为4在该程序中没有问题。
2.给每一个变量加注释
#汽车的数量是100
cars = 100
#汽车空间等于4
space_in_a_car = 4
#司机的数量等于30
drivers = 30
#乘客的数量等于90
passengers = 90
#汽车和司机数量之差
cars_not_driven = cars - drivers
#司机的数量
cars_driven = drivers
#可以合伙使用汽车的数量
carpool_capacity = cars_driven * space_in_a_car
#平均每辆车的乘客的数量
average_passengers_per_car = passengers / cars_driven
3.=
是等于号, _
是下划线。
4.暂时不会。题目:将python
作为计算器运行起来,就跟以前一样,不过这一次在计算过程中使用变量名来做计算,常见的变量名有i
,x
,j
等等。
更多的变量和打印
字符串是程序把信息展示给用户的方式,字符串有很多用处。
你可以打印它们,可以将它们写入文件,还可以将它们发送给网站服务器,很多事情都是通过字符串交流实现的。
在输入一段类似“我的姓名是XXX,年龄XX”中,XX 的内容是根据变量的变化而变化的,格式化字符串是一种较为简便的方式。
练习部分
my_name = 'Zed A. Shaw'
my_age = 35
my_height = 74
my_weight = 180
my_eyes = 'blue'
my_teeth = 'White'
my_hair = 'Brown'
print "Let's talk about %s." % my_name
print "He's %d inches tall." % my_height
print "He's %d pounds heavy." % my_weight
print "Actually that's not too heavy."
print "He's got %s eyes and %s hair." % (my_eyes, my_hair)
print "His teeth are usually %s depending on the coffee." % my_teeth
print "If I add %d, %d, and %d I get %d." % (my_age, my_height, my_weight, my_age + my_height + my_weight)
加分习题
1.python 格式化字符
格式化字符符号
%c
转换成字符(ASCII 码值,或者长度为一的字符串)%r
优先用repr()函数进行字符串转换%s
优先用str()函数进行字符串转换%d
/%i
转成有符号十进制数%u
转成无符号十进制数%o
转成无符号八进制数%x
/%X
转成无符号十六进制数(x / X 代表转换后的十六进制字符的大小写)%e
/%E
转成科学计数法(e / E控制输出e / E)%f
/%F
转成浮点数(小数部分自然截断)%%
输出% (格式化字符串里面包括百分号,那么必须使用%%)
2.注意 %s 和 %r 的用法。
例如:
PRINT = "Hello \nWorld!"
print "%s" % PRINT
print "%r" % PRINT
输出结果为:
>>>
Hello
World!
'Hello \nWorld!'
这里的差异是str()和repr()两个内建函数之间的差异:
str()得到的字符串是面向用户的,具有较好的可读性;
repr()得到的字符串是面向机器的,通常(不是所有)repr()得到的效果是:obj == eval(repr(obj))
更多学习参考 Python 格式化字符串 。
3.使用变量将英寸和磅转换成厘米和千克。
my_height_ft = 74
my_height_cm = 74 * 2.540005
my_weight_lb = 180
my_weight_kg = 180 * 0.454
print "He's %d cm tall." % my_height_cm
print "He's %d kg heavy." % my_weight_kg