1图 | 2图 |
import pandas as pd
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['KaiTi','SimHei','FangSong'] #设置中文字体
df = pd.read_excel( "student.xlsx" )
df_err = df[ ▲ ]
请在▲处填入合适的代码。
km = ["语文","数学","英语","物理","化学","生物","政治","历史","地理","技术"]
df1 = df . groupby( "班级" ) .
print( df1 ) #2图所示
#删除“姓名”和“科目数”列
df2 = df1 . drop(["姓名","科目数"] , axis = 1)
g = df2 . sum() #g为Series对象
#统计各科目的人数占总人数的比例
for k in km:
per = / len( df ) * 100
print(k , "比例为:" , round(per,2) , "%")
x =
y = g . values
plt.bar( x , y ) #3图所示
plt.title("各科补弱比例对比")
plt.show()
mw = input('请输入:')
res=''
i=0; j=0; n=len(mw)
while j<n:
if i%2==0:
mw+=mw[i]
else:
res+=mw[i]
j+=1
i+=1
print(res)
若输入的内容为python,输出的结果为( )
n = int(input())
a,b,num = 2,1,2
for i in range(n-1):
print(num)
方框中的代码由以下三部分组成:①num += a / b ②a = a + b ③b = a - b代码顺序正确的选项是( )
import random
a=[0]*6
for i in range(6):
a[i]=random.randint(1,10) #随机生成 1到 10范围内的整数
for i in range(5):
if i%2==0 and a[i]>a[i+1]:
a[i],a[i+1]=a[i+1],a[i]
else:
a[i]+=1
print(a)
执行该程序段后,a的值可能的是( )
使用列表["+",5]表示申请连续5B的内存,使用列表[2,2]表示回收位置2开始连续2B的内存。若指令集表示为:order=[["+",5],[2,2],["+",8],[8,3]]。随着指令集被执行,1024B连续的内存块会被分割成若干个占用内存和空闲内存。为方便起见,“占用内存”用1表示,“空闲内存”用0表示,故执行上述指令集后,内存占用情况如2图所示:
若将空闲块用链表组织起来,就可以快速查找空闲块和删除空闲块。把连续的空闲块定义为一个节点,每个节点由[空闲块起点, 空闲块长度, 下一个空闲块位置]三部分内容构成。根据2图内存占用情况,创建的空闲块链表如3图所示:
def linkList(allot): #linkList函数功能:根据内存占用0/1列表allot,创建空闲块链表link
link = [ [-1,-1,-1] ] #链表包含一个空头节点
head = tail = 0 ; n = len( allot ) ; i = 0
while i < n :
if allot[ i ] == 0 :
j = i + 1
while j<n and allot[ j ] == 0:
j = j + 1
link.append( [ i , j – i , -1 ] )
link[ tail ][ 2 ] = ▲
tail = len( link ) - 1
else:
i += 1
return head , link
请在▲处填入合适的代码。
若将加框处的代码修改为i = j,是否影响程序的执行结果(选填:是/否)。
#通过文件读入内存分配表allot和指令集order,其代码略。
head , link = linkList ( allot )
for i in range( len( order ) ):
if order[ i ][ 0 ] == " + ": #必须分配连续的空闲块,且由第一个满足空间大小的节点分配
p = head ; q = link[ head ][ 2 ]
while :
p = q ; q = link[ q ][ 2 ]
if q == -1:
print( "内存不足!" )
else:
if link[q][1] == order[i][1]:
else:
link[ q ][ 0 ] = link[ q ][ 0 ] + order[ i ][ 1 ]
link[ q ][ 1 ] = link[ q ][ 1 ] - order[ i ][ 1 ]
else:
p = head ; q = link[ head ][ 2 ]
while q != -1 and link[ q ][ 0 ]<order[ i ][ 0 ]:
p = q ; q = link[ q ][ 2 ]
if link[ p ][ 0 ] + link[ p ][ 1 ] == order[ i ][ 0 ]: #前面节点合并
link[ p ][ 1 ] = link[ p ][ 1 ] + order[ i ][ 1 ]
else:
link.append([ order[ i ][ 0 ] , order[ i ][ 1 ] , q]) #添加节点
link[ p ][ 2 ] = len( link ) - 1
p = link[ p ][ 2 ]
if q != -1 and : #后面节点合并
link[ p ][ 1 ] = link[ p ][ 1 ] + link[ q ][ 1 ]
link[ p ][ 2 ] = link[ q ][ 2 ]
Ⅰ.设定小写字母a—z对应的数字为1—26,大写字母A—Z对应的数字为27—52。
Ⅱ.将某个单词的所有字母按照其对应的数字求和,
Ⅲ.若和为素数(质数)则判断为素单词,否则不是。
如单词“Hello”,字母分别对应的数字为:34、5、12、12、15,其和为34+5+12+12+15=78,不是素数,因此单词“Hello”不是素单词。
def is_Prime(number):#判断number是否为素数
flag=True
for k in range(2,number):
if :
flag=False
break
return flag
s=input("请输入一个单词:")
total=0
for i in range(len(s)):
ch=s[i]
if "A"<=ch<="Z":
total=
elif "a"<=ch<="z":
#将小写字母转换为对应的数字并累加至变量total中,代码略
if :
print(s,"是素单词")
else:
print(s,"不是素单词")
图 a | 图 b |
请回答下列问题:
f=open(" ",encoding="utf-8")
line=f.readline() #读取第一行,保存在字符串 line 中
pro,pub=0,0
while line:#当 line 非空
x=
t=int(line[3:])
if x=="A":
pro+=t
elif x=="B":
line=f.readline() # 继续读取一行
score=int(pro/5*0.6+pub/5*0.4)
grade=
print("推荐度为:","★"*grade)