万卷网> 电子学会考级 >Python等级考试 > 2022年12月电子学会青少年软件编程(Python六级)等级考试试卷

2022年12月电子学会青少年软件编程(Python六级)等级考试试卷
客观题 六级 2022 2023-01-10 09:34:32 57

一、单选题

1.
with open("readme.txt","r") as f:
    r=f.read()
with open("writeme.txt",   ①   ) as p:
    p.write(r)

以上程序实现将readme文件内容追加写入writeme文件中,① 处的模式为?(?)

A.

"w"

B.

"t"

C.

"r"

D.

"a"

2.

使用Python语言对SQLite数据库进行操作,实现打开和关闭名为test.db数据库文件。有下列语句命令:

①conn = sqlite3.connect("test.db")

②cur = conn.cursor( )

③import sqlite3 

④conn.close( ) 

⑤cur.close( ) 

要实现上述功能,上述语句执行的先后顺序正确是?(?)

A.

③①②⑤④

B.

③②①⑤④

C.

③①②④⑤

D.

①②⑤④③

3.

下列代码的执行结果是?(?)

import numpy as np
a = np.arange(9, dtype = np.float_).reshape(3,3)
b = np.array([100,10,10])
print (np.divide(a,b))
A.

[[0.  0.1  0.2 ]

[0.03  0.4  0.5 ]

[0.06  0.7  0.8 ]]

B.

[[0.  0.01  0.2 ]

[0.3  0.04  0.5 ]

[0.6  0.07  0.8 ]]

C.

[[0.  0.1  0.02 ]

[0.3  0.4  0.05 ]

[0.6  0.7  0.08 ]]

D.

[[0.  0.01  0.2 ]

[0.03  0.04  0.5 ]

[0.06  0.07  0.8 ]]

4.

以下代码的运行结果是?(?)

class Num():
    def __init__(self,a,b,c):
        self.a=a
        self.b=b
        self.c=c
    def run(self):
        print(self.a*10)
        print(self.b*5)
        print(self.c*2)
e = Num('C','BB','AAA')
e.run()
A.

AAAAAAAAAA

BBBBBBBBBB

CCCCCC

B.

AAAAAAAAAA

BBBBB

CC

C.

CCCCCCCCCC

BBBBBBBBBB

AAAAAA

D.

CCCCCCCCCC

BBBBB

AA

5.

执行下列代码,输出结果是?(?)

 import numpy as np
 x =  [(1,2,3),(4,5,6),(8,9,0)]
 a = np.asarray(x)
 print (a)
A.

[[1 2 3]

[4 5 6]

[8 9 0]]

B.

[(1, 2, 3)

(4, 5, 6) 

(8, 9, 0)]

C.

[(1, 2, 3), 

(4, 5, 6) ,

(8, 9, 0)]

D.

((1, 2, 3) (4, 5, 6) (8, 9, 0))

6.

下面选项中能创建按钮的是?(?)

A.

tkinter.Tk()

B.

tkinter.Label()

C.

tkinter.Button()

D.

tkinter.Text()

7.

matplotlib模块中提供了丰富的函数,关于函数的功能,下列选项中表达错误的是?(?)

A.

plot() 函数的功能是绘制图形。

B.

title()的功能是设置标题内容。

C.

show()的功能是显示绘图。

D.

subplot()的功能是图形叠加。

8.

有Python程序段如下,下列选项错误的是?(?)

class Car():       
    def __init__(self,name,color):
        self.name=name
        self.color=color
    def run(self):  
        print(self.color +self.name+"is running")
A.

使用class关键字来定义一个Car类,类名的首字母必须要大写

B.

方法__init()__定义了三个参数:self、name和color,其中self参数可省略

C.

语句“self.color=color”获取存储在参数color中的值并存储到self的属性color中

D.

Car类还定义了一个方法run()

9.
import tkinter as tk
window = tk.Tk()
window.title('Mywindow')
window.geometry('200x100')
var = tk.StringVar()
p= tk.Label(window,textvariable=var,bg='green',font=('Arial', 12),width=15, height=2)
p.pack()
on_hit = False
def hit_me():
    global on_hit
    if on_hit == False:
        on_hit = True
        var.set('You hit me!')
    else:
        on_hit = False
        var.set('I Love Python!')
b=tk.Button(window, text='点我', width=15, height=2,command=hit_me)
b.pack()
window.mainloop()

运行如上代码,对按钮点击二次后,在文本框中显示的文字为?(?)

A.

You hit me!

B.

I Love Python!

C.

You hit me!

I Love Python!

D.

I Love Python!

You hit me!

10.

创建了Car类后,用以下代码语句创建了car对象:car=Car()

那么需要调用car对象的drive方法,下列选项正确的是?(?)

A.

car.drive()

B.

Car.drive()

C.

Car.drive

D.

car.drive

11.

使用grid()方法管理布局,需要将Label标签放入第一行第一列,正确写法是?(?) 

A.

grid(row=0,column=0)

B.

grid(row=1,column=1)

C.

grid(row=0,column=1)

D.

grid(row=1,column=0)

12.

“人口性别年龄结构数据.csv”文件存放了若干年的人口数据,内容如图所示。小李想要读取“0-14岁”列的数据,他编写了如下代码:

import csv
with open('人口性别年龄结构数据.csv', 'r') as f:
     reader = csv.reader(f)
     for i in reader:
          print(________)

画线处语句正确的是?(?)

A.

 i

B.

i[2]

C.

i[3]

D.

i[3][0]

13.

有如下Python程序:

class Car():        
    def __init__(self,name,color):
        self.name=name
        self.color=color
    def run(self):
        print(self.color+self.name+'is running')
class Bus(Car):        
    def __init__(self,name,color):
        super().__init__(name,color)
car1=Bus('公交车','红色')
car1.run()

上述代码描述了面向对象的哪个特征?(?)

A.

封装

B.

继承

C.

多态

D.

隐藏

14.

有如下程序代码:

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.writerow(rows)

下列说法不正确的是?(?)

A.

在相同路径下生成一个score.csv文件

B.

f是一个文件对象

C.

headers 是字段名称

D.

writer.writerow(rows)将写入多行数据

15.

tkinter中的geometry函数的作用是?(?)

A.

设置窗口标题

B.

设置字体

C.

设置窗口大小

D.

设置按钮大小

16.

数据文件“abc.txt”中包含若干个英文单词,如图所示:

读取文件“abc.txt”中数据的Python程序段如下:

file = 'abc.txt'
word_b = []
for word in open(file):
    if word[0:1] = = 'a' and len(word)>4:
        word_b.append(word)

该程序段执行后,列表word_b中的数据为?(?)

A.

文件“abc.txt”中所有包含字母“b”且长度大于4的单词

B.

文件“abc.txt”中所有首字母为“a”且长度大于4的单词

C.

文件“abc.txt”中所有第2个字母为“a”且长度大于4的单词

D.

文件“abc.txt”中所有第1、2个字母均为“a”且长度大于4的单词

17.

有如下程序代码:

import json
s = '''[{"name":"kingsan","age":23},
        {"name":"xiaolan","age":22}]
    '''
print(type(s))
data = json.loads(s)
print(data)
print(type(data))

下列说法正确的是?(?)

A.

s的数据类型是list

B.

data的数据类型是字符串

C.

loads()用于将字符串转化为JSON对象

D.

JSON数据可以用双引号来包围,也可以用单引号

18.

小林编写一段文件读写操作代码,文件如下图,代码段如下:

file=open('ceshi.txt','w')
file.write("python is a programming language.")
file.close( )
file=open('ceshi.txt','r')
print(file.read( ))

该代码段运行后,输出的结果为?(?)

A.

IA Distributed System Based on Python.

B.

python is a programming language.

C.

IA Distributed System Based on Python. python is a programming language.

D.

程序编译错误,不会输出结果

19.

打开名为data.db的数据库(SQLite数据库)文件,下列命令能创建名为test数据表的是?(?)

A.

create table test

B.

create test

C.

insert into test

D.

data.append(test)

20.

文件“score2.csv”中存放了3位同学的成绩数据,内容如图所示,小李编写了如下程序:

csv_file = open("score2.csv","r")
flines = csv_file.readlines()
csv_file.close()

执行程序后,flines的结果是?(?)

A.

['202008480,18', '202008319,19', '2202008333,20']

B.

['202008480,18\n', '202008319,19\n', '2202008333,20\n']

C.

['准考证号,成绩', '202008480,18', '202008319,19', '2202008333,20']

D.

['准考证号,成绩\n', '202008480,18\n','202008319,19\n','2202008333,20\n']

21.

下列命令语句能实现在SQLite数据库插入记录数据的命令是?(?)

A.

create

B.

insert

C.

select

D.

delete

22.

下列关于数据的说法,不正确的是?(?)

A.

一维数据采用线性方式组织,是有序的

B.

二维数据由多个一维数据构成

C.

二维数据可由二维列表表达,也可由表格或csv格式的文件表达

D.

一维数据可由列表表示,也可用集合表示

23.

某用户随机生成1000个数字进行排序、计算和绘图,一定不会使用下列哪个模块?(?)

A.

matplotlib

B.

random

C.

scipy

D.

wordcloud

24.

下列关于文件的描述错误的是?(?)

A.

按数据的组织形式可以把文件分为文本文件和二进制文件两大类

B.

使用readlines()可以从文件中读入—行文本

C.

可以使用open()打开文件,用close()关闭文件

D.

文本文件存储的是常规字符串,由若干文本行组成,通常每行以换行符”\n”结尾

25.

执行下列代码,说法错误的是?(?)

import sqlite3
DATABASE = 'data.db'
db = sqlite3.connect(DATABASE)
cur = db.cursor()
cur.execute("CREATE TABLE IF NOT EXISTS list(id INTEGER PRIMARY KEY autoincrement, name text)")
db.commit()
cur.execute("SELECT COUNT(*) FROM list")
if cur.fetchall()[0][0] == 0:
    cur.execute('INSERT INTO list(id,name) VALUES(1,"lilei")')
    db.commit()
A.

data.db文件中有一张名为list的数据表

B.

list数据表中有两个字段id和name

C.

list数据表中没有记录

D.

去掉最后一行的db.commit(),对程序有影响

二、判断题

1.

Tkinter是Python的标准GUI库。Python使用Tkinter可以快速的创建GUI应用程序。(?)

A.正确 B.错误
2.

使用内置函数open()的“r”模式打开包含多行内容的文本文件并返回文件对象fp,那么表达式fp.readline()[-1]的值一定为"\n"。(?)

A.正确 B.错误
3.

JSON(JavaScript Object Notation 对象表示法)是一种流行的结构化数据的方式,可以使用json.loads()返回JSON字符串。(?)

A.正确 B.错误
4.

在面向对象编程中,类是用来描述具有相同属性和方法的对象的集合,它定义了该集合中每个对象共有的属性和方法。对象是类的实例,可以被赋予对象以独特的个性。(?)

A.正确 B.错误
5.

对于文本文件, 使用Python内置函数open()以读文本模式成功打开后,返回的文件对象可以使用for循环直接迭代。(?)

A.正确 B.错误
6.

可以通过直接修改属性的值,及通过方法修改属性的值,这两种方法修改一个对象的属性,但是不能通过方法对属性的值进行递增/减。(?)

A.正确 B.错误
7.

CSV数据存储格式是国际通用的一二维数据存储格式,一般每行一个一维数据,采用逗号分隔。(?)

A.正确 B.错误
8.

运行下列代码,输出结果是[1. 1. 1. 1. 1.]。(?)

   import numpy as np
   x = np.ones(5)
   print(x)
A.正确 B.错误
9.

Matplotlib 是 Python 的绘图库,它不能与 NumPy 一起使用,只能与图形工具包一起使用。(?)

A.正确 B.错误
10.

SQLite 的 UPDATE 查询用于修改表中已有的记录。可以使用带有 WHERE 子句的 UPDATE 查询来更新选定行,否则所有的行都会被更新。(?)

A.正确 B.错误
公众号
客服 反馈
顶部