2023年5月青少年软件编程Python等级考试六级真题(含答案和解析)

2023年5月电子学会Python考试真题含答案和解析

分数:100      题数:38

一、单选题(共25题,共50分)

1. 明明每天坚持背英语单词,他建立了英语单词错题本文件“mistakes.txt”,将每天记错的单词增加到该文件中,下列打开文件的语句最合适的是?(C)

A. f = open("mistakes.txt")

B. f = open("mistakes.txt","r")

C. f = open("mistakes.txt","a")

D. f = open("mistakes.txt","w")

试题解析open函数的第一个参数是文件名称,包括路径;第二个参数是打开的模式mode,'r': 只读(缺省。如果文件不存在,则抛出错误),'w': 只写(如果文件不存在,则自动创建文件),'a': 附加到文件末尾。

2. 小张近阶段要学习的英文单词存储在“data.txt”文件,格式如图所示。

处理“data.txt”文件中英文单词的Python程序段如下:

file = open("data.txt")

for word in file:

    if word[0:1] == "c":

        continue

    else:

        print(word)

file.close()

下列关于该程序段的功能,说法正确的是?(D)

A. 输出包含"c"(区分大小写)的单词

B. 输出以"c"开头(区分大小写)的单词

C. 输出以"c"开头(不区分大小写)的单词

D. 输出不是以"c"开头(区分大小写)的单词

试题解析读取文件后word存储文件每一行内容,word[0:1]代表该行首字母,如果是小写字母"c"开头,跳过,否则,打印该单词,因此程序功能是输出不是以"c"开头(区分大小写)的单词。

3. 文件“score.csv”中存放了3位同学的成绩数据,小李编写程序读取数据内容,文件内容和程序成功读取界面如图所示。

import csv

csv_reader = csv.reader(open(______))

for row in csv_reader:

     print(______)

上述程序中划线处应填入?(D)

A. score row

B. score.csv "row"

C. "score" "row"

D. "score.csv" row

试题解析读取文件时open函数的参数为字符串,应该是完整的文件名加上字符串标识,row代表每一行内容,不应该加字符串标识。

4. 有如下程序代码:

import csv              #  ①       

headers = ['学号','姓名','分数']

rows = [['202001','张三','98'],

        ['202002','李四','95'],

        ['202003','王五','92']]

with open('score.csv','w',encoding='utf8',newline='') as f : #  ②

    writer = csv.writer(f)          #  ③

writer.writerow(headers)      

writer.writerows(rows)          #  ④      

关于上述语句的解释,不正确的是?(D)

A. ①处功能为导入csv 库

B. ②处以写方式打开文件

C. ③处创建 csv.writer 实例

D. ④处一次只能写入一行

试题解析writer.writerows(rows)将写入多行数据。

5. 关于matplotlib模块中函数的功能,下列描述正确的是?(D)

A. bar()函数用于绘制折线图

B. plot()函数用于绘制水平柱形图

C. barh()函数用于绘制垂直柱形图

D. scatter()函数用于绘制散点图

试题解析bar()函数用于绘制垂直柱形图,plot()函数用于绘制折线形图,barh()函数用于绘制水平柱形图,因此,ABC选项均错;scatter()函数用于绘制散点图,因此,答案为D。

6. 绘制sin(x)的图形如图所示,画线处的语句是?(C)

  

import matplotlib.pyplot  as plt

import numpy  as  np

x = np.linspace(0, 10, 30)

___________

plt.show()

A. plt.bar(x)

B. plt.scatter(x)

C. plt.plot(x, np.sin(x))

D. plt.scatter(x, np.sin(x))

试题解析绘制折线图函数是plot,参数必须有2个,第一个参数是x,第二个参数是np.sin(x)。

7. 下列关于类和对象的说法,正确的是?(D)

A. 通过def关键字定义类

B. 通过class创建实例

C. 每个对象的数据相同

D. 每个对象拥有相同的方法

试题解析Python定义类是通过class关键字,通过类名+()实现创建实例,每个对象的数据可能不同,每个对象拥有相同的方法。

8. 有如下程序段:

class Student:

    count = 0

    def __init__(self, name):

        self.name = name

        Student.count += 1

    def study(self):

        print(f'{self.name}在学习')

student1 = Student("小明")

student2 = Student("小红")

student2.study()

执行代码后,下列说法不正确的是?(B)

A. 程序创建了2个实例

B. Student.count的值为0

C. study为该类的方法

D. 输出的结果为“小红在学习”

试题解析程序创建了2个实例,Student.count的值为2。

  • 0
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有个仙侠梦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值