某景区为提升景区管理与游客体验,设计了游客管理信息系统。该系统集成了游客信息管理、网上票务预订、数据分析等功能,旨在实现游客流量监控与资源优化分配。系统收集游客的活动数据并上传至服务器,结合人工智能、大数据和云计算技术,精准分析游客行为,为景区决策提供有力支持。同时,游客利用移动终端APP与景区客服机器人互动,享受个性化服务。
a = [ 6 , 12 , 9 , 20 , 8 , 11 , 4 ]
for j in range( 1 , len( a ) ) :
if a[ j ] < a[ j - 1 ] :
a[ j ] = a[ j ] + a[ j - 1 ] ; a[ j - 1 ] = a[ j ] - a[ j - 1 ] ; a[ j ] = a[ j ] - a[ j - 1 ]
执行该段程序后,列表a的值是( )
s = "Li20An24K04ao" ; i = 0
while i < len( s ) :
if "A" <= s[ i ] <= "Z" :
s = s[ : i ] + s[ i + 1 : ]
elif "0" <= s[ i ] <= "9" :
s = s[ : i ] + str( ( int(s[ i ]) + 8 ) % 10 ) + s[ i + 1 : ]
else :
s = s[ : i ] + chr( ( ord( s[ i ] ) – 95 ) % 26 + 97 ) + s[ i + 1 : ]
i = i + 1
执行上述程序后,s的值为( )
import random
a = [ 0 ] *5 ; i = 0 ; flag = True
while i < 5 :
a[ i ] = random.randint( 1 , 8 )
if i % 2 == 1 :
a[ i ] = a[ i ] + a[ i - 1 ]
flag = not flag
elif a[ i ] % 2 == 0 and flag == False:
i -= 1
i += 1
执行该程序段后,列表a的值不可能的是( )
彩票中心编写一个程序,功能为:随机生成7个不重复的中奖号码,并读取文件“彩票记录.txt”(该文件存储所有已售出的彩票号码),最后根据兑奖规则输出开奖结果,运行界面示例如下:
import random #随机生成7个[1,33]范围内不重复的中奖号码
flag= [ 0 ] * 34 ; data = [ 0 ] * 7
i = 0
while i < 7 :
t = random.randint( 1 , 33 )
if not flag[ t ]:
i = i + 1
flag [ t ] = 1
print("中奖号码:" , data)
#读取"彩票记录.txt"文件,存储到数组sale=[[12,8,9,23,1,16,7],[11,7,10,21,2,9,31]…],代码略。
#num[0]表示特等奖个数,num[i]表示i等奖个数
for i in range( len ( sale ) ) :
cnt = 0
for j in range ( 7 ) :
if sale[ i ][ j ] in data:
cnt += 1
num[] += 1
print("彩票开奖结果:")
for i in range( 7 ):
s="特等奖一等奖二等奖三等奖四等奖五等奖六等奖"
print(s[] , "产生:" , num[ i ] , "个")
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()
使用列表["+",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 ]