import numpy as np
np.arange(16).reshape(4,4),求点(3,2)的值是?( )
14
9
10
6
import numpy as np
np.arange(0,9).reshape(3,3)
import numpy as np
np.random.random([3,3,3])
import numpy as np
np.eye(3)
import numpy as np
np.mat('1,2,3;4,5,6;7,8,9')
已知文件1.txt内容为:abcdefghijklmnopqrstuvwxyz,文件1.txt与程序文件保存在同一个目录,运行以下程序,输出结果是?( )
with open("1.txt","r") as f:
f.seek(10)
print(f.read(1))
j
a
k
i
对于二维数据文件fname,下面代码中的变量 x,以下选项中描述最合理的是?( )
fo = open (fname, "r") for x in fo: print(x) fo. close ()
执行如下代码:
fname = input("请输入要写入的文件:") fo = open(fname, "w+") ls=["清明时节雨纷纷,","路上行人欲断魂,","借问酒家何处有?","牧童遥指杏花村。"] fo.writelines(ls) fo.seek(0) for line in fo: print(line) fo.close ()
以下选项中描述错误的是?( )
文件水果.txt中的内容如图所示:
执行如下Python代码,输出的结果是?( )
s={}
with open('水果.txt') as f:
a=f.readlines()
for i in a:
if i in s:
s[i]+=1
else:
s[i]=1
print(s["苹果"])
1
2
3
4
有如下Python程序段:
a=[1,2,3,5,6,8,9,11,15,0] #0表示该位置未存储元素
num=int(input( "输入需要插入的数据:"))
for i in range(len(a)):
if a[i]>num:
for j in range(len(a)-1,i-1,-1):
a[j]=a[j-1]
a[i]=num
break
else:
a[-1]=num
print(a)
执行程序后,输入数字9,则位置下标发生改变的数据个数?( )
3
2
1
0
有如下Python程序段,执行程序后,输出的结果是?( )
import csv with open('123.csv', 'w',newline='') as f: w=csv.writer(f) w.writerows([('hello','world'), ('I','love','you')]) with open('123.csv', 'r') as f: sp= csv.reader(f) for row in sp: print(row[0],end=',')
hello,I,
hello,world
I,you
a=[[1,1,3],[2,6,7],[4,7,1]]
b=[[0 for i in range(3)] for j in range(2)]
c=[0]*4*4
d=[[0]*3,[9]*3,[4]*3]
有如下Python程序段:
n=3
m=2
a=[[0 for i in range(n)] for j in range(m)]
a.append([0,0,n-m])
a.insert(-1,[n for i in range(n)])
print(a)
执行程序后,下列选项中值为1的是?( )
a[m][n]
a[n][m]
a[len(a)-1][0]
a[m][0]
运行以下Python代码,结果是?( )
class Parent():
def __init__(self, name):
self.name = name
def greetings(self):
print("Parent: Hi, I'm", self.name)
class Child(Parent):
def greetings(self):
super().greetings()
print("Child: Hello!")
parent = Parent("Alice")
child = Child("Bob")
child.greetings()
Parent: Hi, I'm Alice
Child: Hello!
Parent: Hi, I'm Bob.
Child: Hello!
运行以下Python代码,结果是?( )
class Person():
def __init__(self, name, age):
self.name = name
self.age = age
def say_hello(self):
print(f"Hello, my name is {self.name}. I am {self.age} years old.")
person1 = Person("Alice", 25)
person2 = Person("Bob", 30)
person1.say_hello()
Hello, my name is Alice. I am 30 years old.
给定以下 Python 代码,连接到一个 SQLite 数据库并查询表 students。请问,查询结果中包含多少个学生?( )
import sqlite3
conn = sqlite3.connect(":memory:")
cursor = conn.cursor()
cursor.execute("""
CREATE TABLE students (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
score INTEGER NOT NULL
);
""")
cursor.execute("INSERT INTO students (name, score) VALUES ('小明', 90)")
cursor.execute("INSERT INTO students (name, score) VALUES ('小芳', 85)")
cursor.execute("INSERT INTO students (name, score) VALUES ('轩轩', 92)")
cursor.execute("INSERT INTO students (name, score) VALUES ('乐乐', 88)")
conn.commit()
cursor.execute("SELECT * FROM students WHERE score >= 90")
result = cursor.fetchall()
conn.close()
print(result)
0
1
2
3
编写一个程序,如下图所示,用于计算输入两个数的和,并通过窗口输出计算结果。空白处应补充的代码是?( ).
import tkinter as tk
import tkinter.messagebox
win=tk.Tk()
a=tk.IntVar()
b=tk.IntVar()
def jia():
a1=a.get()
b1=b.get()
tk.messagebox.showinfo(message=str(a1)+'+'+str(b1) +'=' + str(a1+b1))
c=tk.Entry(win,textvariable=a)
d=tk.Entry(win,textvariable=b)
ok=tk.Button(win,text='+',command=_________)
c.place(x=10,y=10,width=80,height=20)
d.place(x=10,y=40,width=80,height=20)
ok.place(x=10,y=80,width=50,height=20)
win.mainloop()
以下程序中,a= Spinbox(win1,from_=10,to=100)的作⽤是?( )
from tkinter import *
win1= Tk()
a= Spinbox(win1,from_=10,to=100)
a.pack()
mainloop()
运行以下程序,程序不会报错,将打开窗口,显示文字为"成功"。( )
from tkinter import *
messagebox.showinfo('提示信息','成功')
下列代码输出结果是10。( )
class MyClass(): class_attribute = 10 MyClass.class_attribute = 20 print(MyClass.class_attribute)
有如下Python代码:
import json Data1 = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; text = json.loads(Data1) print(text)
输出的text是dict类型数据。( )
钢筋问题
统计三角形数量及钢筋总长度。某工程需要很多由钢筋组成的三角形,在文本文件“data.txt”中每一行的三个数字分别表示三根钢筋的长度(整数,单位:厘米,数字间用空格隔开),若这三根钢筋能组成三角形,要求统计并输出三角形数量以及这些钢筋材料的总长度(若不能组成三角形则不对这些数据进行统计),文本文件数据如图a所示,程序运行界面如图b所示。
完成该任务的思路是:首先从文本文件“data.txt”读取文本内容到变量line,提取边长数据后,统计数据并输出结果。
相关代码如下,请补全代码:
def readfile(filename):
f = open(filename,encoding = "utf-8")
m=[]; n=[]; k=[]
line = f.readline()
while line:
x=line.strip().split(" ")
m.append(int(x[0]))
n.append(int(x[1]))
k.append(int(x[2]))
①
f.close()
return m,n,k
def triangle(x,y,z): # 判断数据x、y、z能否组成三角形
flag=False
if ② :
flag=True
return flag
a,b,c=readfile("/data/ ③ ") #读入文件
n=len(a);count=0;sum=0
print("能组成三角形的数据有:")
for i in range(n):
if ④ :
sum+=a[i]+b[i]+c[i]
print(a[i],b[i],c[i])
count+=1
print("能组成三角形的共有:",count,"组")
print("共需要材料长度共是:",sum)
工资管理
编写简单的工资管理程序,系统中包含工人(worker)和经理(manage),所有员工都有员工号、姓名、基本工资等属性。
工人:工人具有工作小时数和时薪的属性,工资计算方法为基本工资 + 工作小时数 * 时薪;
经理: 具有固定的月薪,计算方法为固定月薪。
根据以上的要求设计类,显示人员的信息和工资情况,运行结果如下:
工号:001,姓名:King,本月工资:10000
King的月薪是:10000
工号:002,姓名:Lily,本月工资:20000
Lily每天的工作时长:10小时
Lily的月薪是: 20000
class Person():
def __init__(self,id,name,salary):
self.id = id
self.name = name
①
def __str__(self):#查看对象,触发执行print语句
msg = '工号:{},姓名:{},本月工资:{}'.format(self.id,self.name,self.salary)
return msg
class Worker(Person):
def __init__(self,id,name,salary,hours,per_hour):
super().__init__(id,name,salary)
self.hours = hours
self.per_hour = per_hour
def getSalary(self):
money = self.hours * self.per_hour
②
return ③
class Manage(Person):
def __init__(self,id,name,salary,time):
super().__init__(id,name,salary)
self.time = time
def getSalary(self):
return self.salary,self.time
worker = Worker('001','King',2000,160,50)
sal = worker.getSalary()
print(worker)
print('King的月薪是:{}'.format(sal))
manage = Manage('002','Lily',20000,10)
④ , work_time = manage.getSalary()
print(manage)
print('{}每天的工作时长:{}小时'.format('Lily', ⑤ ))
print('Lily的月薪是:',sal)
考试成绩处理
将某班级的期末考试成绩存放于data.db数据库文件的score数据表内,部分成绩截图如下。
现要求求出english成绩大于或等于80的所有学生的总分平均分,并输出结果。(无需运行通过,写入代码即可)
import sqlite3
conn=sqlite3.connect("data.db")
cur=conn.cursor( )
sql="select * from score ① "
cur.execute(sql)
②
conn.commit()
cur.close()
conn.close()
zf=0
for i in range(len(list1)):
zf+=sum( ③ )
pjf=zf/len(list1)
print("english大于或等于80分同学的总分平均分是",pjf)