2.8 练习
最后更新于:2022-04-02 00:26:34
## 2.8 练习
1\. 什么是数据?什么是数据类型?
2\. Python 中的数值类型有哪些?对数值类型能执行什么运算?
3\. Python 中的字符串有哪些表示方式?对字符串类型能执行什么运算?
4\. Python 中的布尔类型提供了哪两个值?对布尔类型数据能执行什么运算?
5\. Python 中的列表类型和其他编程语言中常见的数组类型有何异同?
6\. Python 中的字符串类型和列表类型有何异同?
7\. Python 中的元组类型与列表类型有何异同?
8\. 说 Python 中的变量是动态类型的,这是什么意思?
9\. 哪些运算符针对不同类型的数据有不同意义?
10\. 利用 Python 计算以下表达式。如果出错,找出原因。
(1)`4.0 / 10.0 + 3.5 * 2`
(2)`10 % 4 + 6 /2`
(3)`abs(4 ? 20 / 3) ** 3`
(4)`sqrt(4.5 ? 5.0) + 7 * 3`
(5)`3 * 10 / 3 + 10 % 3`
(6)`3L ** 3`
11\. 将下列数学式用 Python 表达式表示出来。假设已通过 import math 导入了数学库。
(1)`(a + b) ´ c`
(2)`n(n - 1) / 2`
(3)![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-22_56cafcdd0eaaf.png)
(4)![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-22_56cafcdd1ced4.png)
(5)`(y2 - y1)/(x2 - x1)`
12\. 设计程序:输入球体半径 r,计算球体的体积(![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-22_56cafcdd2c653.png))和表面积(![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-22_56cafcdd394b8.png))。
13\. 设计程序:输入平面上两个点的坐标(x1,y1)和(x2,y2),计算两点间距离。距离公式为 d =![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-22_56cafcdd47aa4.png) 。
14\. 设计程序:输入以英尺英寸为单位的身高数据,转换成以米为单位的数据。(1 英尺=12 英寸=0.305 米)
15\. 设计程序:输入 5 个考试分数,计算平均分。
16\. 假设已经执行了如下语句:
```
>>> import string
>>> s1 = "programming"
>>> s2 = "language"
```
(1)求下列各表达式的值。
a)`s1[1]`
b)`s1[:4]`
c)`s1[0] + s2[:3]`
d)`s2[5:len(s2)]`
e)`"Python " + s2`
f)`2 * (s1[:2] + s2[-1])`
g)`string.count(s1,'r') + string.find(s1,'r')`
h)`string.ljust(string.upper(s2),10)`
(2)利用 s1、s2 和字符串操作,写出能产生下列结果的表达式。
a)`'gram'`
b)`'ProgLang'`
c)`'la la la'`
d)`' language '`
e)`'progrAmming lAnguAge'`
17\. 求下列字符串格式化操作的结果。如果出错,解释原因。
(1)`"%s has won %d gold medals." % ("China",38)`
(2)`"Hello %s." % ("Tom","Tim")`
(3)`"%0.2f %0.2f" % (3.1416,2.718)`
(4)`"Time left %02d:%05.2f" % (1,5.432)`
(5)`"%3d" % ("14")`
18\. 将下列条件用布尔表达式表示出来:
(1)a 大于 b,或者 a 小于等于 b 且 c 不等于 0。
(2)a 和 b 的差不超过 0.005。
(3)字符串 s 以“水”开头,并且包含子串“酒旗”。
(4)字符串 s1 的长度为 10,或者 s1 在字符串 s2 中出现 2 次。
19\. 若 P 表示“x 小于等于 y 并且 x 大于 0”,那么 not P 表示什么?
20\. 假设已经执行了如下语句:
```
>>> s1 = [1,2,3,4]
>>> s2 = ['a','b','c']
```
求下列各表达式的值。
(1)`s1 + s2`
(2)`2 * s1 + 3 * s2`
(3)`s1[:3]`
(4)`s2[0:len(s2)]`
21\. 将第 20 题中的 s1 和 s2 改为元组,重做(1)~(4)。
22\. 设计程序:输入五分制的分数(0~5),输出相应的等级制分数:5=A,4=B,3=C,2=D,1=F,0=F。(提示:仿照程序 2.5 的查找方法)
23\. 设计程序:输入百分制的分数(0~100),输出相应的等级制分数:90~100=A,80~89=B,70~79=C,60~69=D,0~59=F。
';