博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《“笨办法”学Python(第3版)》——习题5 更多的变量和打印
阅读量:6495 次
发布时间:2019-06-24

本文共 2054 字,大约阅读时间需要 6 分钟。

本节书摘来自异步社区《“笨办法”学Python(第3版)》一书中的习题5,作者[美]Zed A. Shaw,王巍巍 译,更多章节内容可以访问云栖社区“异步社区”公众号查看。

习题5 更多的变量和打印

我们现在要键入更多的变量并且把它们打印出来。这次我们将使用一个叫“格式化字符串”(format string)的东西。每一次你使用双引号(")把一些文本引用起来,就创建了一个字符串。字符串是程序向人展示息的方式。你可以打印(显示)它们,可以将它们写入文件,还可以将它们发送给网站服务器,很多事情都是通过字符串交流实现的。

字符串是非常好用的东西,所以在这个习题中你将学会如何创建包含变量内容的字符串。使用专门的格式和语法把变量的内容放到字符串里,相当于来告诉Python:“嘿,这是一个格式化字符串,把这些变量放到那几个位置。”

一样的,即使你读不懂这些内容,只要一字不差地键入就可以了。

ex5.py

1     my_name = 'Zed A. Shaw'2     my_age = 35 # not a lie3     my_height = 74 # inches4     my_weight = 180 # lbs5     my_eyes = 'Blue'6     my_teeth = 'White'7     my_hair = 'Brown'8     9     print "Let's talk about %s." % my_name10     print "He's %d inches tall." % my_height11     print "He's %d pounds heavy." % my_weight12     print "Actually that's not too heavy."13     print "He's got %s eyes and %s hair." % (my_eyes, my_hair)14     print "His teeth are usually %s depending on the coffee." % my_teeth15     16     # this line is tricky, try to get it exactly right17     print "If I add %d, %d, and %d I get %d." % (18          my_age, my_height, my_weight, my_age + my_height + my_weight)

警告

如果你使用了非ASCII字符而且遇到了编码错误,记得在最顶端加上 # -*- coding: utf-8 -*-。

应该看到的结果

习题5 会话

$ python ex5.pyLet's talk about Zed A. Shaw.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_去掉。确认将每一个地方都改掉,不只是使用=赋值过的地方。

2.试着使用更多的格式化字符。例如,%r就是非常有用的一个,它的含义是:“不管什么都打印出来。”

3.在网上搜索所有的Python格式化字符。

4.试着使用变量将英寸和磅转换成厘米和千克。不要直接键入答案。使用Python的数学计算功能来完成。

常见问题回答

这样定义变量行不行:1 = 'Zed Shaw'?

不行。1不是一个有效的变量名称。变量名要以字母开头,所以a1可以,但1不行。

%s、%r和%d是做什么的?

后面你会学到更多,现在可以告诉你的是,它们是一种“格式控制工具”。它们告诉Python把右边的变量带到字符串中,并且把变量的值放到%s所在的位置上。

还是不懂,“格式控制工具”到底是什么?

教你学编程的一个问题就是,你需要先学会编程,才能读懂我的一些描述。我解决这个问题的方法是让你先去做一些事情,后面我再解释。当你碰到类似的问题时,把它们记录下来,看我是不是会在后面解释它们。

如何将浮点数四舍五入?

你可以使用round()函数,如round(1.7333)。

我遇到了错误TypeError: 'str' object is not callable。

很有可能你是漏写了字符串和变量之间的%。

为什么我还是不明白?

试着将脚本里的数字看成是你自己测量出来的数据,这样会很奇怪,但是多少会让你有身临其境的感觉,从而帮助你理解一些东西。

转载地址:http://esyyo.baihongyu.com/

你可能感兴趣的文章
{好文备份}SQL索引一步到位
查看>>
(转)径向模糊效果shader
查看>>
【原创】Kakfa utils源代码分析(三)
查看>>
51单片机实现对24C02进行页写、顺序读取并显示验证
查看>>
java加密解密
查看>>
将日期yyyy-MM-dd转为数字大写的形式
查看>>
全面分析再动手的习惯:链表的反转问题(递归和非递归方式)
查看>>
奇怪吸引子---QiChen
查看>>
ArcEngine中的缩放地图
查看>>
yield学习续:yield return迭代块在Unity3D中的应用——协程
查看>>
手机触屏滑动图片切换插件swiper.js
查看>>
LeetCode - Maximum Depth of Binary Tree
查看>>
把数据库中有关枚举项值的数字字符串转换成文字字符串
查看>>
基于html5海贼王单页视差滚动特效
查看>>
JavaScript变换表格边框颜色
查看>>
BIZTALK项目中WEB引用WEBSERVICES服务时候报错
查看>>
我常用的那些linux命令
查看>>
QT 5.4.1 for Android Ubuntu QtWebView Demo
查看>>
友盟自动更新
查看>>
OSD的主要实现方法和类型(转)
查看>>