我们现在要键入更多的变量并且把它们打印出来。这次我们将使用一个叫“格式化字符串(format string)”的东西. 每一次你使用 " 把一些文本引用起来,你就建立了一个字符串。字符串是程序将信息展 示给人的方式。你可以打印它们,可以将它们写入文件,还可以将它们发送给网站服务器,很多事情都 是通过字符串交流实现的。
字符串是非常好用的东西,所以再这个练习中你将学会如何创建包含变量内容的字符串。使用专门的格 式和语法把变量的内容放到字符串里,相当于来告诉 python :“嘿,这是一个格式化字符串,把这些 变量放到那几个位置。”
一样的,即使你读不懂这些内容,只要一字不差地键入就可以了。
# -*- Coding:utf-8 -*-my_name = 'Chen Xin Ming' #姓名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_nameprint "He's %d inches tall." % my_heightprint "He's %d pounds heavy." % my_weightprint "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_teethprint "If I add %d, %d, and %d I get %d." % ( my_age, my_height, my_weight, my_age + my_height + my_weight)
结果
Let's talk about Chen Xin Ming.He's 74 inches tall.He's 180 pounds heavy.Actually that's not too heavy.He's got Blue eyes and brown hair.His teeth are usually White depending on the coffee.If I add 35, 74, and 180 I get 289.
加分习题
1.修改所有的变量名字,把它们前面的``my_``去掉。确认将每一个地方的都改掉,不只是你使用`` =``赋值过的地方。
去掉"my_"对程序没有任何影响
2. 试着使用更多的格式化字符。例如 %r 就是是非常有用的一个,它的含义是“不管什么都打印出来”。
3. 在网上搜索所有的 Python 格式化字符。
格式化符号 | 说明 |
---|---|
%c | 转换成字符(ASCII 码值,或者长度为一的字符串) |
%r | 优先用repr()函数进行字符串转换(Python2.0新增) |
%s | 优先用str()函数进行字符串转换 |
%d / %i | 转成有符号十进制数 |
%u | 转成无符号十进制数 |
%o | 转成无符号八进制数 |
%x / %X | (Unsigned)转成无符号十六进制数(x / X 代表转换后的十六进制字符的大小写) |
%e / %E | 转成科学计数法(e / E控制输出e / E) |
%f / %F | 转成浮点数(小数部分自然截断) |
%g / %G | %e和%f / %E和%F 的简写 |
%% | 输出% |
还有一些辅助符号,如下表所示:
辅助符号 | * | 定义宽度或者小数点精度 |
---|---|---|
- | 用做左对齐 | |
+ | 在正数前面显示加号(+) | |
<sp> | 在正数前面显示空格 | |
# | 在八进制数前面显示零(0),在十六进制前面显示“0x”或者“0X” (取决于用的是“x”还是“X”) | |
0 | 显示的数字前面填充“0”而不是默认的空格 | |
m.n | m 是显示的最小总宽度,n 是小数点后的位数(如果可用的话) |
4. 试着使用变量将英寸和磅转换成厘米和千克。不要直接键入答案。使用 Python 的计算功能来完 成。
my_height =74 * 2.54 #身高my_weight = 180 / 2 #体重
常见问题回答
这样定义变量行不行: 1 = 'Zed Shaw'?
不行。 1 不是一个有效的变量名称。变量名要以字母开头。所以 a1 可以,但 1 不行。
%s,%r,%d 这些符号是啥意思?
后面你会详细学到更多,现在可以告诉你的是它们是一种“格式控制工具”。它们告诉 Python 把右边的变量带到字符串中,并且把变量值放到 %s 所在的位置上。
还是不懂,“格式控制工具”是啥?
要明白一些描述的意义,你得先学会编程才更容易理解,你可以把这样的问题记录下来,看后面的内容会不会向你解释这些东西。 如何将浮点数四舍五入?
你可以使用 round() 函数,例如: round(1.7333) 我碰到了错误: TypeError: ‘str’ object is not callable。
很有可能你是漏写了字符串和变量之间的 % 。 这都是些什么玩意啊?我还是很糊涂。
试着将脚本里的数字看作是你自己量出来的东西,这样会很奇怪,但是多少会让你有身临其境的感觉,从而帮助你理解一些东西。
以上是内存溢出为你收集整理的笨办法学Python 习题 5: 更多的变量和打印全部内容,希望文章能够帮你解决笨办法学Python 习题 5: 更多的变量和打印所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)