2024年03月Python六级真题+答案(中国电子学会 )

青少年软件编程(Python)等级考试试卷(六级)

分数:100  题数:38

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

1.以下选项中,创建类正确的是?( )

A. class test1:

    def prt(self):

    ……

B. class Mg():

  def __init__(na, ag):

     self.na = na

C. class A():

    def print(self):

       print("Yes")

a=A()

a.print()

D. class 3Point:

   def __init__( self):

   ……

试题编号:202306-zzh-24

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:类的名称遵守变量命名规则的同时,首字母必须大写。

考生答案:B

2.运行以下程序,输出结果是?( )

class A():

    def __init__(self,x):

        self.x=x

    def add1(self):

       return self.x+self.x

t1=A(3)

t2=A(t1.add1())

print(t2.add1())

A. 10

B. 12

C. 程序报错

D. 6

试题编号:202306-zzh-25

试题类型:单选题

标准答案:B

试题难度:一般

试题解析:t1.add1()=3+3+3+3。

3.运行以下程序,输出的结果是?( )

class T():

    def __init__(self):

         self.a=1

    def t1(self,b):

         self.a=b+b

c=T()

c.a=c.a+c.a

c.t1(5)

print(c.a)

A. 2

B. 12

C. 10

D. 6

试题编号:202306-zzh-27

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:self.a=b+b,自定义类的使用,t1(5)=b+b=5+5。

4.要将一个数组[1,2,3,4,5]绘制成折线图,代码是?( )

A. import matplotlib.pyplot as plt

plt.plot([1,2,3,4,5])

plt.show()

B. import numpy as np

import matplotlib.pyplot as plt

plt.plot(np.array(1,5))

plt.show()

C. import matplotlib.pyplot as plt

plt.bar([1,2,3,4,5])

plt.show()

D. import matplotlib.pyplot as plt

plt.scatter([1,2,3,4,5])

plt.show()

试题编号:20230614-ltj-014

试题类型:单选题

标准答案:A

试题难度:一般

试题解析:正确选项:A。使用matplotlib.pyplot的plt.plot()方法绘制折线图。

5.要生成一个3*4的数组,并计算数组中偶数值之和,代码是?( )

A. import numpy as np

arr = np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]])

np.sum(arr[arr%2==0])

B. import numpy as np

arr = np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]])

np.sum(arr[:,arr%2==0])

C. import numpy as np

arr = np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]])

np.sum(arr[np.get(arr%2==0)])

D. import numpy as np

arr = np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]])

np.sum(arr[arr.even()])

试题编号:20230614-ltj-015

试题类型:单选题

标准答案:A

试题难度:较难

试题解析:使用np.array()生成数组,np.sum()计算和,arr%2==0提取偶数值,所以选择A选项。

考生答案:C

6.在使用matplotlib库绘制图形时,如何设置x轴和y轴的标签?( )

A. plt.title()和plt.legend()

B. plt.set_xlabel()和plt.set_ylabel()

C. plt.xlabel()和plt.ylabel()

D. plt.xticks()和plt.yticks()

试题编号:20230614-ltj-016

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:正确选项:C。plt.xlabel()和plt.ylabel()函数分别用于设置x轴和y轴的标签。

其他选项的功能如下:

plt.set_xlabel()和plt.set_ylabel():在使用面向对象的方法绘图时,用于设置轴标签。

plt.title():设置图形的标题。

plt.legend():显示图例。

plt.xticks()和plt.yticks():设置x轴和y轴的刻度。

考生答案:B

7.关于matplotlib函数的功能,下列描述错误的是?( )

A. bar()函数用于绘制垂直柱形图

B. plot()函数用于绘制线形图

C. barh()函数用于绘制饼形图

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

试题编号:20230614-ltj-017

试题类型:单选题

标准答案:C

试题难度:较难

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

8.下列哪个选项是有效的JSON格式?( )

A. {'name':'Alice', 'age':25, 'city':'New York'}

B. {name:"Alice", age:25, city:"New York"}

C. {"name":"Alice", age:25, city:'New York'}

D. {"name":"Alice", "age":25, "city":"New York"}

试题编号:20230626-cln-007

试题类型:单选题

标准答案:D

试题难度:容易

试题解析:在JSON中,键和字符串值都应该使用双引号(")包围,而不是单引号(')。因此,选项A、B、C都不是有效的JSON格式。选项D中的双引号使用正确,并且键和字符串值都被正确包围,是有效的JSON格式。

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

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

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

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

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

试题编号:20230626-cln-008

试题类型:单选题

标准答案:D

试题难度:容易

试题解析:一维数据由对等关系的有序或者无序数据构成。

10.下面代码的输出结果正确的是?( )

import json

json_str = '{"name": "Alice", "age": 25, "city": "New York"}'

data = json.loads(json_str)

print(data)

A. {"name": "Alice", "age": 25, "city": "New York"}

B. {'name': 'Alice', 'age': 25, 'city': 'New York'}

C. [{'name': 'Alice', 'age': 25, 'city': 'New York'}]

D. ['name': 'Alice', 'age': 25, 'city': 'New York']

试题编号:20230626-cln-009

试题类型:单选题

标准答案:B

试题难度:容易

试题解析:这段代码将JSON字符串用json.loads()解码为 Python 对象并输出。

考生答案:C

11.下面代码的输出结果正确的是?( )

import json

data = {

    "name": "Alice",

    "age": 25,

    "city": "New York"

}

text = json.dumps(data)

print(text)

A. ["name": "Alice", "age": 25, "city": "New York"]

B. {'name': "Alice", 'age': 25, 'city': "New York"}

C. {"name": "Alice", "age": 25, "city": "New York"}

D. {'name': 'Alice', 'age': 25, 'city': 'New York'}

试题编号:20230626-cln-010

试题类型:单选题

标准答案:C

试题难度:容易

试题解析:这段代码将 Python 对象用json.dumps()编码为JSON字符串并输出。

12.有关JSON(JavaScript Object Notation)的概念,正确的是?( )

A. 是一种数据交换格式

B. 是一种编程语言

C. 是一种数据库

D. 是一种算法

试题编号:20230626-cln-011

试题类型:单选题

标准答案:A

试题难度:容易

试题解析:JSON是一种基于文本的轻量级数据交换格式,具有易读、易写的特点。它常用于将数据从一个应用程序或平台传输到另一个应用程序或平台。由于其简洁性和普遍性,JSON已经成为了互联网上数据交换的常用格式。

13.使用tkinter设置一个按钮,将按钮放置在窗口最下方,则划线处的代码为?( )

from tkinter import *

root = Tk()

root.geometry('300x200')

root.title('my window')

btn1 = Button(root,text='按钮1',bg='red')

__________

root.mainloop()

A. btn1.pack(side=TOP)

B. btn1.pack()

C. btn1.pack(side=BOTTOM)

D. btn1.pack(side='')

试题编号:20230702-tjt-031

试题类型:单选题

标准答案:C

试题难度:容易

试题解析:side=BOTTOM由下往上布置。

14.以下代码实现将鼠标移到按钮上时按钮变红,鼠标移开时按钮变蓝,划线处的代码是?( )

from tkinter import *

root = Tk()

root.title( )

root.geometry('450x350')

btn1 = Button(root,text = '1')

btn1.place(x =200,y = 50,width = 40,height = 40)

def changebg(event):

    # 鼠标移到按钮上按钮变红

    event.widget['bg'] = 'red'

def changebg1(event):

    # 鼠标离开按钮上按钮变蓝

    event.widget['bg'] = 'blue'

____________

btn1.bind('<Leave>',changebg1)

root.mainloop()

A. btn1.bind()

B. btn1.bind('<Enter>',changebg)

C. btn1.bind('<Enter>',changebg1)

D. btn1.bind('<Button-1>',changebg1)

试题编号:20230702-tjt-032

试题类型:单选题

标准答案:B

试题难度:容易

试题解析:btn1.bind('<Enter>',changebg)可以实现移动到按钮上按钮变红。

15.以下代码实现点击“点我”按钮,弹出信息“give flower”,划线处的代码是?( )

import tkinter as tk

import tkinter.messagebox

from tkinter import *

root = Tk()

bt = Button(root)

bt['text'] = '点我'

bt.pack()

def dianji(event):

    tk.messagebox.showinfo('message','give flower')

bt.bind('<Button-1>',                 )  

root.mainloop()

A. root

B. dianji

C. def

D. give flower

试题编号:20230702-tjt-033

试题类型:单选题

标准答案:B

试题难度:容易

试题解析:bt.bind('<Button-1>', dianji) 能使按钮事件和自定义函数绑定,实现效果。

16.使用tkinter模块,下列代码能创建一个输入框的是?( )

A. from tkinter import *

root = Tk()

root.title("test")

e1 = Entry(root)

e1.pack()

root.mainloop()

B. from tkinter import *

root = Tk()

root.title("test")

e1 = Button(root)

e1.pack()

root.mainloop()

C. from tkinter import *

root = Tk()

root.title("test")

e1 = Label(root,text='123')

e1.pack()

root.mainloop()

D. from tkinter import *

root = Tk()

root.title("test")

e1 = Checkbutton(root,text='123')

e1.pack()

mainloop()

试题编号:20230702-tjt-034

试题类型:单选题

标准答案:A

试题难度:容易

试题解析:e1 = Entry(root)可以创建文本框,所以选A。

考生答案:C

17.执行以下代码,数据表中共有几条数据?( )

import sqlite3

conn = sqlite3.connect('student_info.db')

cursor = conn.cursor()

cursor.execute('''CREATE TABLE IF NOT EXISTS Student

(id INTEGER PRIMARY KEY, name TEXT, age INTEGER)''')

cursor.execute("INSERT INTO Student (id, name, age) VALUES (1, 'Alice', 20)")

cursor.execute("INSERT INTO Student (id, name, age) VALUES (2, 'Bob', 22)")

cursor.execute("INSERT INTO Student (id, name, age) VALUES (3, 'Charlie', 21)")

cursor.execute("SELECT * FROM Student")

students = cursor.fetchall()

for student in students:

    print(f"ID: {student[0]}, Name: {student[1]}, Age: {student[2]}")

cursor.execute("UPDATE Student SET age = 23 WHERE id = 2")

cursor.execute("DELETE FROM Student WHERE id = 3")

conn.commit()

conn.close()

A. 2

B. 3

C. 4

D. 5

试题编号:20230703-jx-002

试题类型:单选题

标准答案:A

试题难度:一般

试题解析:创建了数据表并插入了3条记录,然后修改了其中id = 2的记录,然后删除了id=3的记录,最后只有2条记录。

考生答案:B

18.如下代码创建一个数据库表,表内有几个字段?( )

import sqlite3

connection = sqlite3.connect('test.db')

cursor = connection.cursor()

cursor.execute('''CREATE TABLE employees

                  (id INTEGER PRIMARY KEY, name TEXT, age INTEGER, salary REAL)''')

connection.close()

A. 3

B. 4

C. 5

D. 6

试题编号:20230703-jx-016

试题类型:单选题

标准答案:B

试题难度:容易

试题解析:答案为B,共设置了四个字段,分别为id, name , age , salary。

考生答案:A

19.以下哪个代码片段用于创建一个SQLite数据库mydatabase连接?( )

A. 'connection = sqlite3.connection("mydatabase.db")'

B. 'connection = sqlite3.connect("mydatabase.db")'

C. 'connection = sqlite3.open("mydatabase.db")'

D. 'connection = sqlite3.connect("mydatabase.txt")'

试题编号:20230703-jx-037

试题类型:单选题

标准答案:B

试题难度:容易

试题解析:在sqlite3模块中,使用`connect()`函数创建一个SQLite数据库连接。数据库的后缀名是.db。

20.运行以下代码输出的数据为?( )

import sqlite3

connection = sqlite3.connect("students.db")

cursor = connection.cursor()

cursor.execute("CREATE TABLE students (name TEXT, age INTEGER)")

cursor.execute("INSERT INTO students VALUES ('John', 19)")

cursor.execute("INSERT INTO students VALUES ('John', 18)")

cursor.execute("DELETE FROM students WHERE name = 'John'")

cursor.execute("INSERT INTO students VALUES ('John', 17)")

cursor.execute("UPDATE students SET age = 22 WHERE name = 'John'")

cursor.execute("SELECT * FROM students")

results = cursor.fetchall()

for row in results:

    print(row)

connection.close()

A. ('John', 22)

B. ('John', 18)

C. ('John', 19)

D. ('John', 17)

试题编号:20230703-jx-038

试题类型:单选题

标准答案:A

试题难度:一般

试题解析:创建了数据库和表之后,插入了二条姓名都为'John'数据,然后删除'John'相关数据时二条数据都被删除,重新插入'John'的数据并修改为22,故最后查找出的结果为22。

21.以只读方式打开d:\myfile.txt文件的代码是?( )

A. f=open("d:\\myfile.txt")

B. f=open("d:\\myfile.txt","rt+")

C. f=open("d:\\myfile.txt","r+")

D. f=open("d:\\myfile.txt","a")

试题编号:20230708-hww-001

试题类型:单选题

标准答案:A

试题难度:较难

试题解析:只读方式:r,不写时,默认为r;打开文本文档默认为t,可以省略,"rt+"与"r+"模式一样,为可读可写模式;"a"为追加模式。

22.在进行文件读写时,以下为非二进制文件的是?( )

A. timu.docx

B. timu.mp4

C. timu.txt

D. timu.jpg

试题编号:20230708-hww-002

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:文本文件的格式为:txt;二进制文件的格式为:图像、音频、视频、office文档、可执行性文档等。

考生答案:B

23.程序填空:程序的输出结果如下图所示,程序空白处应该是?( )

with open("./text.txt","r",encoding='utf-8') as f:

    a=f.read(           )

    print(a)

A. 10

B. 11

C. 9

D. 12

试题编号:20230708-hww-003

试题类型:单选题

标准答案:B

试题难度:一般

试题解析:换行符也占1位字符数。

考生答案:A

24.下面程序的输出结果是"like",请填空?( )

with open("text.txt", "r",encoding='utf-8') as f:

    f.seek(7)

    f.seek(          ,           )

    print(f.read(4))

A. 2,0

B. 2,1

C. 2,2

D. 0,2

试题编号:20230708-hww-004

试题类型:单选题

标准答案:A

试题难度:一般

试题解析:seek(偏移值[,起点]),起点可以省略,0表示从文件头开始,1表示从当前位置开始,2表示从文件尾开始,默认为0。

考生答案:B

25.运行以下程序,输出的结果是?( )

class F():

    def __init__(self,a):

        self.x=a+1

    def b(self):

       return self.x*self.x

f=F(3)

print(f.b())

A. 4

B. 8

C. 16

D. 20

试题编号:20240303-ssn-001

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:self.a=a+1,f=F(3)=3+1=4,b*b=16。

二、判断题(共10题,共20分)

26.Python创建类时,可以自定义类的名称,按照Python变量命名规则命名即可。( )

试题编号:202306-zzh-23

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:自定义类的名称,按照Python变量命名规则命名,首字母必须大写。

考生答案:正确

27.如果你想用numpy库来计算一个二维数组a中每一行的最大值,你可以用np.max(a, axis=1)来实现。( )

试题编号:20230614-ltj-020

试题类型:判断题

标准答案:正确

试题难度:较难

试题解析:np.max是numpy库中用来计算数组中最大值的函数,它可以接受一个数组作为参数,并且返回一个数值,表示数组中所有元素的最大值。它也可以接受一个axis参数,表示按照哪个轴进行计算。如果axis=0,表示按照列进行计算,如果axis=1,表示按照行进行计算。所以np.max(a, axis=1)可以用来计算一个二维数组a中每一行的最大值,它会返回一个一维数组,包含每一行的最大值。

28.小华想要绘制一个表示某个城市一年内每个月的平均降雨量的折线图,他使用了以下的代码:

import matplotlib.pyplot as plt

months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]

rainfall = [50, 40, 60, 80, 100, 120, 140, 130, 110, 90, 70, 60]

plt.plot(months, rainfall)

plt.show()

运行上面这段代码后,会显示一个条形图。( )

试题编号:20230614-ltj-021

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:这段代码的目的是绘制一个表示某个城市一年内每个月的平均降雨量的折线图。

29.在JSON库中,JSON格式的数组将被解析为列表。( )

试题编号:20230626-cln-012

试题类型:判断题

标准答案:正确

试题难度:容易

试题解析:使用JSON库时,一般来说,JSON格式的对象将json库解析为字典。JSON格式的数组将被解析为列表。

30.在JSON中,可以使用数字作为键的数据类型。( )

试题编号:20230626-cln-013

试题类型:判断题

标准答案:错误

试题难度:容易

试题解析:在JSON中,JSON中的键必须是字符串类型,它们用双引号括起来表示。因此,只有字符串可以用作JSON中的键。

31.在Python的tkinter模块中,常用的控件的有Canvas、Button、Entry、scatter等。( )

试题编号:20230702-tjt-035

试题类型:判断题

标准答案:错误

试题难度:容易

试题解析:scatter函数是matplotlib中的散点图函数。

32.更新"students"表中id为1的记录的姓名为"Mike"可以使用语句UPDATE students SET name = 'Mike' WHERE id = 1实现。( )

试题编号:20230703-jx-025

试题类型:判断题

标准答案:正确

试题难度:一般

试题解析:UPDATE用于更新数据库内的数据,格式为UPDATE 表 SET 更新数据 WHERE 条件。

33.使用with语句打开文件后,程序发生崩溃时,无法关闭文件。( )

试题编号:20230708-hww-005

试题类型:判断题

标准答案:错误

试题难度:容易

试题解析:在操作文件和关闭文件之前发生错误而导致程序崩溃时,无法正常关闭文件。可以使用关键字with(自动管理资源)可以避免无法正常关闭。

34.使用writelines()向文件中写入内容时,写入的内容必须是字符串序列。( )

试题编号:20230708-hww-006

试题类型:判断题

标准答案:正确

试题难度:一般

试题解析:writelines()向文件中写入的内容是字符串序列。

35.创建子类时,父类必须包含在本程序中,放置于子类前或子类后都可以。( )

试题编号:202306-zzh-22

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:父类必须位于子类前。

考生答案:正确

三、编程题(共3题,共30分)

36.电视类问题

编写一个电视类,包括电视的品牌、型号、尺寸、价格等属性和开关电视、调节音量、切换频道等方法。再继承电视类创建一个智能电视类的子类,并分别创建它们的实例,测试它们的属性和方法。

class TV:

    def         ①        (self, brand, model, size, price):

        self.brand = brand  #品牌

        self.model = model  #型号

        self.size =        ②          #尺寸

        self.price = price  #价格

        self.power = False

        self.volume = 50   #体积

        self.channel = 1

    def power_on(self):

        self.power = True

    def power_off(self):

        self.power = False

    def adjust_volume(self, volume): #调整体积大小

        self.volume = volume

    def switch_channel(self, channel):  #切换频道

        self.channel = channel

class SmartTV(TV):

    def __init__(self, brand, model, size, price):

        super().__init__(brand, model, size, price)

        self.internet = False  

    def connect_internet(self):  #开启联网

        self.internet = True   

    def disconnect_internet(self):#关闭联网

                 ③        

    def watch_online(self, url):  #是否能看网络资源

        if         ④        :#判断是否联网

            print("正在观看:", url)

        else:

            print("请先连接网络")

# 创建普通电视和智能电视实例

tv1 = TV("创维", "LCD", 55, 3999)

tv2 =         ⑤        ("小米", "OLED", 65, 4999)

# 测试普通电视的属性和方法

tv1.power_on()

tv1.adjust_volume(60)

tv1.switch_channel(3)

print("电视品牌:{},电视型号:{},电视尺寸:{}英寸,电视价格:{}元,电视状态:{},音量:{},频道:{}".format(tv1.brand, tv1.model, tv1.size, tv1.price, tv1.power, tv1.volume, tv1.channel))

# 测试智能电视的属性和方法

tv2.power_on()

tv2.adjust_volume(70)

tv2.switch_channel(5)

tv2.connect_internet()

tv2.watch_online("https://www.cctv.com")

print("电视品牌:{},电视型号:{},电视尺寸:{}英寸,电视价格:{}元,电视状态:{},音量:{},频道:{},是否连接网络:{}".format(tv2.brand, tv2.model, tv2.size, tv2.price, tv2.power, tv2.volume, tv2.channel, tv2.internet))

试题编号:202403-P6-36

试题类型:编程题

标准答案:

参考程序:

class TV():

    def __init__(self, brand, model, size, price):

        self.brand = brand  #品牌

        self.model = model  #型号

        self.size = size   #尺寸

        self.price = price  #价格

        self.power = False

        self.volume = 50   #体积

        self.channel = 1

    def power_on(self):

        self.power = True

    def power_off(self):

        self.power = False

    def adjust_volume(self, volume): #调整体积大小

        self.volume = volume

    def switch_channel(self, channel):  #切换频道

        self.channel = channel

class SmartTV(TV):

    def __init__(self, brand, model, size, price):

        super().__init__(brand, model, size, price)

        self.internet = False  

    def connect_internet(self):  #开启联网

        self.internet = True   

    def disconnect_internet(self):#关闭联网

        self.internet = False

    def watch_online(self, url):  #是否能看网络资源

        if self.internet :#判断是否联网

            print("正在观看:", url)

        else:

            print("请先连接网络")

# 创建普通电视和智能电视实例

tv1 = TV("创维", "LCD", 55, 3999)

tv2 = SmartTV("小米", "OLED", 65, 4999)

# 测试普通电视的属性和方法

tv1.power_on()

tv1.adjust_volume(60)

tv1.switch_channel(3)

print("电视品牌:{},电视型号:{},电视尺寸:{}英寸,电视价格:{}元,电视状态:{},音量:{},频道:{}".format(tv1.brand, tv1.model, tv1.size, tv1.price, tv1.power, tv1.volume, tv1.channel))

# 测试智能电视的属性和方法

tv2.power_on()

tv2.adjust_volume(70)

tv2.switch_channel(5)

tv2.connect_internet()

tv2.watch_online("https://www.cctv.com")

print("电视品牌:{},电视型号:{},电视尺寸:{}英寸,电视价格:{}元,电视状态:{},音量:{},频道:{},是否连接网络:{}".format(tv2.brand, tv2.model, tv2.size, tv2.price, tv2.power, tv2.volume, tv2.channel, tv2.internet))

试题难度:较难

试题解析:

评分标准:

(1)__init__ 或等效答案;(2分)

(2)size 或等效答案;(2分)

(3)self.internet = False 或等效答案;(2分)

(4)self.internet 或者 self.internet==True 或等效答案;(2分)

(5)SmartTV 或等效答案。(2分)

37.学生基本情况

1.准备工作及功能实现

(1)建立一个空数据库Studase.db,按照如图所示的表结构,创建学生基本情况表students;

(2)为表students添加数据,内容是"学号—— 20210267、班级——1、姓名——孙玉洁、性别——女、身高——167";

(3)删除表students中1班的学生信息;

(4)查询并输出表students的内容。

  根据要求,请补全代码。(本题无需运行通过,写入代码即可)

2.程序

import sqlite3

conn =         ①        ('Studase.db')

cursor = conn.cursor()

cursor.execute('''        ②        students

                      (学号          ③        NOT NULL,

                       班级 INTEGER,

                       姓名  TEXT(10) NOT NULL,

                       性别  TEXT(1)   NOT NULL,

                       身高  INTEGER)''')

cursor.execute("        ④         ('20210267',1,'孙玉洁','女',167) ")

conn.commit()

cursor.execute("        ⑤        where 班级=1")

conn.commit()

cursor.execute("SELECT * FROM students")

for i in          ⑥        

    print(i)

conn.close()

试题编号:202403-P6-37

试题类型:编程题

标准答案:

参考程序:

import sqlite3

#连接到数据库

conn = sqlite3.connect('Studase.db')

#创建游标对象

cursor = conn.cursor()

#创建students表

cursor.execute('''CREATE TABLE students

                         (学号  TEXT(10)  PRIMARY  KEY NOT NULL,

                          班级  INTEGER,

                          姓名  TEXT(10)  NOT  NULL,

                          性别  TEXT(1)   NOT   NULL,

                          身高   INTEGER); ''')

#插入数据到students表中

cursor.execute("INSERT INTO students VALUES('20210267',1,'孙玉洁','女',167)")

#提交更改

conn.commit()

#删除表中的数据

cursor.execute("delete from students  where 班级=1")

#提交更改

conn.commit()

#执行查询并输出结果

cursor.execute("SELECT * FROM students")

for i in cursor.fetchall():

    print(i)

#关闭连接

conn.close()

试题难度:较难

试题解析:

评分标准:

(1)sqlite3.connect 或等效答案;(1分)

(2)CREATE TABLE 或等效答案;(2分)

(3)TEXT(10)  PRIMARY  KEY 或等效答案;(2分)

(4)INSERT INTO students VALUES 或等效答案;(2分)

(5)delete from students 或等效答案;(2分)

(6)cursor.fetchall(): 或等效答案。(1分)

38.随机列表问题

随机生成一个长度为100的整数列表,其元素范围为1~100,将该列表以每10个一行(元素之间以空格分隔)写入一个文本文件("record.txt") ,将文本文件("record.txt")中的数字读入一个列表,并按数字的升序输出该列表。

注:enumerate() 取出的两个值,一个为数的索引,一个为数的值

from random import randint

lis = [ ]

for i in range(100):

    lis.append(randint(1,100))

with open("record.txt", "        ①        ") as f:

    str = ""

    for i, v in enumerate(lis):

        str = str + "{} ".format(v)

        if         ②         == 0:

            b =         ③        (str + "\n")

            str = ""

lis_date = [ ]

with open("record.txt") as f:

    for line in         ④        :

        line = line.strip()

        data = line.split()

        for v in data:

            lis_date.append(eval(v))

last_date =         ⑤        (lis_date)

print(last_date)

试题编号:202403-P6-38

试题类型:编程题

标准答案:

参考程序:

from random import randint

lis = [ ]

for i in range(100):

    lis.append(randint(1,100))

with open("record.txt", "w") as f:

    str = ""

    for i, v in enumerate(lis):

        str = str + "{} ".format(v)

        if  (i + 1) % 10 == 0:

            b =f.write(str + "\n")

            str = ""

lis_date = [ ]

with open("record.txt") as f:

    for line in f.readlines():

        line = line.strip()

        data = line.split()

        for v in data:

            lis_date.append(eval(v))

last_date = sorted(lis_date)

print(last_date)

试题难度:一般

试题解析:

评分标准:

(1)w 或等效答案;(2分)

(2)(i + 1) % 10 或等效答案;(2分)

(3)f.write 或等效答案;(2分)

(4)f.readlines() 或等效答案;(2分)

(5)sorted 或等效答案。(2分)

更多电子学会Python四级等级考试真题学习资料

↓ 点 击 关 注 ↓回 复 "P4"  获 取 历届真题~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/748554.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java——枚举

1. 概念 枚举是在JDK1.5之后引入的&#xff0c;主要用途是&#xff1a;将一组常量组织起来&#xff0c;在这之前表示一组常量通常使用定义常量的方式&#xff1a; public static final int RED 1; public static final int GREEN 2; public static final int BLACK 3;但是…

ED系列可读可写低频地埋电子标识器(内置SIC279芯片)数据写入说明

ED系列低频地埋电子标识器&#xff08;内置SIC279芯片&#xff09;&#xff0c;即带ID可读可写电子标识器&#xff0c;包含ED1100-ID-RW&#xff0c;ED1500-ID-RW&#xff0c;ED2000-ID-RW&#xff0c;支持按固定格式写数据的地埋电子标识器。 ED系列可读可写低频地埋电子标识…

大猫咪守护LoRA:定制你的大猫私人大猫咪宠物写真合影,某音某书流行款

&#x1f339;大家好&#xff01;我是安琪&#xff01;感谢大家的支持与鼓励。 大猫咪LoRA模型简介 今天应群里同学大猫咪宠物合影写真提议&#xff0c;为大家介绍一款来自作者 沐沐人像合成的主题为大猫咪守护的LoRAl模型&#xff1a;沐沐-大猫咪。这是一款当下在某音、某书…

【5G核心网】5G NWDAF(Network Data Analytics Function)网元功能介绍

博主未授权任何人或组织机构转载博主任何原创文章&#xff0c;感谢各位对原创的支持&#xff01; 博主链接 本人就职于国际知名终端厂商&#xff0c;负责modem芯片研发。 在5G早期负责终端数据业务层、核心网相关的开发工作&#xff0c;目前牵头6G技术研究。 博客内容主要围绕…

sql查询CONCAT、group_concat、concat_ws函数用法

SELECT str_code, 1 CONCAT 连接多字段字符串就模糊查询 select CONCAT(dept_name, , dept_code , , parent_id) ,* from sys_dept where CONCAT(dept_name, , dept_code , , parent_id) LIKE %16% 2、语法&#xff1a;group_concat( [distinct] 要连接的字段 [order by …

光模块市场受益于AI热潮同比增长45%,行业前景看好

近日&#xff0c;市场研究机构YOLE Group在最新的市场报告中指出&#xff0c;AI驱动的光模块市场将出现同比45%的增长。预计至2024年&#xff0c;数据通信领域的人工智能光收发器市场将实现高达45%的同比增长&#xff0c;展现出了强大的市场活力和广阔的发展前景。 光收发器市…

Amazon OpenSearch Service 现在支持 JSON Web Token(JWT)身份验证和授权

最近&#xff0c;Amazon OpenSearch 推出了一个新功能&#xff0c;支持 JWT 认证和授权。虽然这个功能在开源的 OpenSearch 中早已存在&#xff0c;但在托管的 Amazon OpenSearch 中的实现一直不够理想。 此前的授权方式 控制台登录 内部数据库&#xff1a;使用基本的用户名…

【分布式系列】分布式锁在 Redis 主从部署中的挑战

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

易基因:围产期母体有毒物质暴露对子代血液、大脑和肝脏DNA甲基化的影响 | 研究速递

大家好&#xff0c;这里是专注表观组学十余年&#xff0c;领跑多组学科研服务的易基因。 母体在环境化学物质中暴露可能对后代的健康造成不利影响。越来越多的证据支持这些不良效应至少部分受表观遗传修饰调控。目前尚不清楚血液中的表观遗传变化是否反映了大脑皮层或肝脏等目…

【机器学习】K-means++: 一种改进的聚类算法详解

&#x1f308;个人主页: 鑫宝Code &#x1f525;热门专栏: 闲话杂谈&#xff5c; 炫酷HTML | JavaScript基础 ​&#x1f4ab;个人格言: "如无必要&#xff0c;勿增实体" 文章目录 K-means: 一种改进的聚类算法详解引言1. K-means算法回顾1.1 基本概念1.2 局限性…

TEMU半托管模式引领跨境电商新风尚

TEMU半托管模式作为2024年的热门话题&#xff0c;正吸引着越来越多卖家的目光。继全托管模式取得巨大成功之后&#xff0c;半托管模式的推出无疑为跨境电商行业注入了新的活力。 在选品方向上&#xff0c;TEMU半托管模式强调商品的聚焦与精选。卖家在选择上架商品时&#xff0c…

数据恢复篇:适用于Windows 的顶级数据恢复软件

适用于Windows的免费和付费的最佳数据恢复软件 **嘿&#xff0c;我要和大家一起泄露所有的测试工具。在评论中留下您的想法和最喜欢的选择&#xff01; 适用于 Windows 的最佳数据恢复软件 1.奇客数据恢复 奇客数据恢复版是Microsoft操作系统的顶级数据恢复软件应用程序之一&a…

智能电表和普通电表有什么区别

智能电表和普通电表在多个方面存在显著的区别&#xff0c;以下是对这些区别的详细分析&#xff1a; 一、功能上的区别 1、电能计量功能&#xff1a; 普通电表&#xff1a;只有电能计量功能&#xff0c;用于记录用户消耗的电量。 智能电表&#xff1a;除了基本的电能计量功能…

ChatTTS源码部署

感谢阅读 默认已完成的操作准备工作下载源码安装依赖下载补丁(报错在运行) 界面展示(discord上有各种补丁&#xff0c;我的加了UI补丁和音色增强)提示词常用&#xff08;这个每个音基本都能生效&#xff09;语调类语速类情感类 默认已完成的操作 python版本>3.9 cuda版本的…

Windows 系统 Solr 8.11.3 安装详细教程(最新)

Windows 系统 Solr 8.11.3 安装详细教程 说明什么是Solr下载与解压如何启动启动命令&#xff1a;浏览器中打开dashboard其他命令查看关闭命令 说明 本次只是简单安装&#xff0c;为了在项目中使用&#xff0c;如果在公开服务器中安装需要更改开放端口&#xff0c;配置权限等。 …

java使用Graphics2D生成图片

UI图 实际图片数据库中只存了一个二维码转的base64的数组,直接导出只有一个二维码 这里使用 Graphics2D 画图 public static void main(String[] args) {// 假设你有一个Base64编码的字符串&#xff0c;它表示一张图片String base64ImageString "/9j/4AAQSkZJRgABAgAAA…

RabbitMQ的Fanout交换机

Fanout交换机 Fanout&#xff0c;英文翻译是扇出&#xff0c;我觉得在MQ中叫广播更合适。 在广播模式下&#xff0c;消息发送流程是这样的&#xff1a; 1&#xff09; 可以有多个队列2&#xff09; 每个队列都要绑定到Exchange&#xff08;交换机&#xff09;3&#xff09; …

秋招Java后端开发冲刺——非关系型数据库篇(Redis)

一、非关系型数据库 1. 主要针对的是键值、文档以及图形类型数据存储。 2. 特点&#xff1a; 特点说明灵活的数据模型支持多种数据模型&#xff08;文档、键值、列族、图&#xff09;&#xff0c;无需预定义固定的表结构&#xff0c;能够处理各种类型的数据。高扩展性设计为水…

8.计算机视觉—增广和迁移

目录 1.数据增广数据增强数据增强的操作代码实现2.微调 迁移学习 Transfer learning(重要的技术)网络结构微调:当目标数据集比源数据集小得多时,微调有助于提高模型的泛化能力。训练固定一些层总结代码实现1.数据增广 CES上的真实故事 有一家做智能售货机的公司,发现他们…

如何实现灌区闸门控制自动化?宏电“灌区哨兵”为灌区闸门控制添“智慧”动能

闸门控制站是节水灌溉工程中的重要组成部分。随着科技的不断进步和农田水利现代化的发展&#xff0c;传统的闸门控制和管理手段已经不能满足现代农业的发展要求。以宏电“灌区哨兵”为核心的闸门自动化控制系统&#xff0c;能有效解决灌区闸门距离远、数量多、不易操作、不好监…