讲解Python语言计算机等级考试二级操作题第二期

无论题目怎么变,所有的题目都是根据基础在变。打好基础至关重要。扎扎实实地打好基础,练好基本功。

1、编写 Python 程序输出一个具有如下风格效果的文本,用作文本进度条样式,部分代码如下,填写空格处。

10%@==

20%@====

100%@====================

前三个数字,右对齐;后面字符,左对齐。

文本中左侧一段输出 N 的值,右侧一段根据 N 的值输出等号,中间用 @ 分隔,等号个数为 N 与 5 的整除商的值,例如,当 N 等于 10 时,输出 2 个等号,10%@==。

N = eval(input()) # N取值范围是0—100,整数

print(________)

解题:

第一步:照题目给的把输入语句格式写下。

第二步:根据题目可以看到最后的格式。

第三步:左侧一段输出 N 的值,右侧一段根据 N 的值输出等号,中间用 @ 分隔,等号个数为 N 与 5 的整除商的值。

左边一个值。

由于三个示例都有%,中间用 @ 分隔。%和@就可以组合成固定的值。

右边一段根据 N 的值输出等号,等号个数为 N 与 5 的整除商的值。可以用到字符串乘以N 与 5 的整除的值。

第四步:前三个数字,右对齐;后面字符,左对齐。

由于后面的等号都是紧跟中间部分%@,所以后面字符,就一直左对齐。

前三个数字,右对齐。因为可能是个位数、十位数和100,所以可能是三个数字。

再把输出语句改一改。

{:3}三个数字,右对齐。

完整代码如下:

2、以论语中一句话作为字符串变量 s,补充程序,分别输出字符串 s 中汉字和标点符号的个数。

s = 学而时习之,不亦说乎?有朋自远方来,不亦乐乎?人不知而不愠,不亦君子乎?

n = 0 # 汉字个数

m = 0 # 标点符号个数

________ # 在这里补充代码,可以多行

print(字符数为{},标点符号数为{}。.format(n, m))

解题:

第一步:

第二步:根据print(字符数为{},标点符号数为{}。.format(n, m))中可以知道要得到字符数(n = 0 # 汉字个数)和标点符号个数(m = 0 # 标点符号个数)

字符串 s 句子中只有逗号和问号,只要这两种符号的个数相加就可以得到标点符号个数。Python count() 方法用于统计字符串里某个字符出现的次数。

第三步:字符串 s 的长度(len(s))减去标点符号个数(m)就剩下汉字个数(n)。

完整代码如下:

3、使用程序计算整数 N 到整数 N+100 之间所有奇数的数值和,不包含 N+100,并将结果输出。整数 N 由用户给出,代码片段如下,补全代码。不判断输入异常。

N = input(请输入一个整数: )

________ # 可以是多行代码

解题:

第一步:由于input()接受的输入都是一个字符串,不判断输入异常可以用eval()把输入的字符串整数转换成整数,重新赋值。

第二步:要计算所有整数 N 到整数 N+100奇数的数值和,所以定义一个初始值才可以计算。

第三步:整数 N 到整数 N+100 之间,非常跟range()方法相近,开始到结束的数字不包括结束。

第四步:循环range()

第五步:整数 N 到整数 N+100奇数,所以要判断限定。模2等于1就是奇数,等于0就是偶数。如果是计算偶数就模2等于0就好,这题是要奇数。

第六步:奇数累加,前面定义初始化add,用add去累加每次循环的奇数。也可以写成add = add + i 。

第七步:最后输出

完整代码如下:

4、使用 turtle 库的 turtle.fd() 函数和 turtle.left() 函数绘制一个六边形,边长为 200 像素,效果如下图所示,请结合格式框架,补充代码。

最后使用 print 函数输出________,________,________中应填代码即可

如果有运算符,请在运算符两侧加上空格, 例如,如果代码为:

在提交代码页面输入: print(2, 'i + 100', 200),运行即可

解题:

第一步:根据要求

第二步:六边形需要循环6次。

第三步:边长200像素,所以每次前进200

第四步:一个圆360度,六边形循环6次,所以每次60度。

第五步:根据示例格式打印输出,注意加号左右两边有空格。

完整代码如下:

5、经常会有要求用户输入整数的计算需求,但用户未必一定输入整数。为了提高用户体验,编写 getInput() 函数处理这样的情况。请补充如下代码,如果用户输入整数,则直接输出整数并退出,如果用户输入的不是整数,则要求用户重新输入,直至用户输入整数为止。

def getInput():

________ # 可以是多行代码

return ________ # 只能是单行代码

print(getInput())

解题:

第一步:定义函数

第二步:判断用户输入的是不是整数。isdigit() 方法检测字符串是否只由数字组成。如果字符串只包含数字则返回 True 否则返回 False。判断用户输入的不是整数,提示再次输入整数。

第三步:返回整数,虽然只由数字组成,但是input()还是一个字符串,所以要转换整数类型。

第四步:输出整数。

完整代码如下:

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190113A0BJE000?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券