模块 知识点题库

   pygame模块提供了等函数;random模块用于产生;sys模块包含了跟Python相关的函数。
要将显示一个有背景色的窗口改为显示一个有背景图片的窗口应将*处改为两句,请填写在①②处。

screen.fill((255,255,0))    #窗口填充黄色*

  )  #加载背景图像

(  ) #将背景图画在窗口

pygame.display.update()        #窗口刷新

Pygame.display的功能是访;Pygame.event的功能是;Pygame.font的功能是使用;Pygame.image的功能是
有Python程序段如下:

import pandas as pd

s1 = pd.Series(range(1,10,2))

print(s1)

该程序段运行后输出结果为(    )

A . B . C . D .
某DataFrame对象df,包含“商品编码”“销售价格”“销售日期”等数据列。下列语句中,能将df对象中的数据以“商品编码"为关键字降序排序的是(    )
A . df.sort_ index( axis=1, ascending=True) B . df.sort _values('商品编码', ascending =False) C . df.sort _values('商品编码', ascending=True, inplace=True) D . df.sort_ values('商品编码', ascending=False, inplace=True)
(   )库中有两个主要的数据结构,一维数组(Series)和二维数组(DataFrame)结构。
A . Numpy B . Pandas C . Scipy D . Matplotlib
调用模块不正确的(   )
A . os.system( ) B . random.sample( ) C . mymodule.match_num( ) D . sys.sleep( )
在BXY中输入代码如图所示。

下载并运行该代码,下列关于代码执行效果描述正确的是(    )

A . 按下micro:bit主板上的按钮A,蜂鸣器发出的声音时长会增加 B . 按下micro:bit主板上的按钮B,蜂鸣器发出的声音频率会降低 C . 不按micro:bit主板上的按钮B,蜂鸣器发出的声音时长和频率都不变 D . 不按micro:bit主板上的按钮A,蜂鸣器发出的声音时长和频率都改变
完善程序实现以下功能并保存。

输入一元二次方程的系数a,b,c的值,求解一元二次方程 ax2+bx+c=0(a≠0)

#请不要更改源程序的结构,删除原题里的①、②。填写正确的代码,使程序完善

import math

a=float(input("请输入方程系数a(!=0):"))

b=float(input("请输入方程系数b:"))

c=float(input("请输入方程系数c:"))

delta=b*b-4*a*c

if delta>:

    x1=(-b+math.sqrt(delta))/(2*a)

    x2=(-b-math.sqrt(delta))/(2*a)

    print("方程有两个不同的解",x1,x2)

elif delta==0:

    x1=

    print("方程有两个相同的解",x1)

else:

    print("方程无解")

input("运行完毕,请按回车键退出...")

脱氧核糖核酸(DNA)由两条互补的碱基链以双螺旋的方式结合而成。构成DNA的碱基共有 4 种,分别为腺嘌呤(A)、鸟嘌呤(G)、胸腺嘧啶(T)和胞嘧啶(C)。在两条互补碱基链的对应位置上,A总是和T配对,G总是和C配对。编写Python程序实现如下功能: 随机产生一条单链上的碱基序列,输出其对应的互补链上的碱基序列。(    )

import random

DNA=['A','G','T','C']

s=''

for i in range(20):

        ①       

print(s)

match={'A':'T','T':'A','G':'C','C':'G'}

t=''

for i in range(20):

        ②       

print('互补链:',t)

A . ①s=random.choice()+s         ②t= t+match[i] B . ①s=s+random.choice(DNA)    ②t= t + match[s[i]] C . ①s=s+random.choice()          ②t= t + match[s[i]] D . ①s=random.choice(DNA)+s     ②t= t + match[i]
在Python中要生成随机数,应该使用(    )。
A . math 模块 B . random模块 C . numpy 模块 D . pygame 模块
Pygame自带了一个监听类循环,不断检查用户的操作,这个循环在程序运行过程期间持续工作。仔细阅读理解如下代码在横线处填写内容

while True:

    for event in pygame.event.get():  #

        if event.type==pygame.QUIT:          #     

            sys.exit()                  #退出程序

        if event.type==pygame.MOUSEBUTTONDOWN: #

numpy是一个科学计算包,其中包含很多数学函数,如三角函数、矩阵计算方法等。arange函数是该模块中的函数,下列说法错误的是(     )
A . 可以用arange函数创建一个等差数列。 B . arange函数如在0~2π之间每隔0.01取个值,则可以用arange(0,2* numpy.pi,0.01)来表示,其中numpy.pi表示π。 C . Import numpy as np后,x=np,arange(0,2* numpy.pi,0.01),可以将x应用到y=np.sin(x)图像绘制 D . 可以用arange函数创建一个等比数列
小张同学为了更好地了解冬奥会,从网上收集了历届冬奥会各个项目比赛信息,收集到的部分数据如图1所示:

图1

图2

为分析数据,小张编写了如下程序:

import pandas as pd

import matplotlib.pyplot as plt

from matplotlib.pyplot import MultipleLocator

plt.rcParams['font.sans-serif']=['SimHei']       #正常显示中文标签

df=pd.read_csv("dongao.csv")

#删除所有未获得奖牌的记录,并将奖牌列中的"G"修改为"金牌","S"修改为"银牌","B"修改为"铜牌"

jp={'G':'金牌','S':'银牌','B':'铜牌'}

for i in df.index:

if     ①       :

        df=df.drop(i)

else:

        df.at[i,'奖牌']=jp[df.at[i,'奖牌']]

#对输入国家每届的奖牌数进行统计,并制作相应图表,如第14题图2所示:

nt=input("请输入国家名称:")

df1=df[df['国家']==nt]

 

df3=pd.DataFrame(df2)  #将分组后数据生成新的二维结构,索引为“届次”,列标题为“奖牌”

x=df3.index

y=      ②       

plt.title(nt+"历年冬奥会奖牌趋势图")

plt.       ③         (x,y)

plt.show()

  1. (1) 在划线处填上合适的代码。
  2. (2) 为了最后能显示某国历届冬奥会奖牌变化,需在加框处添加的语句为(     )(多选)
    A . df2=df1.groupby('奖牌')

    df2=df1.届次.count()

    B . df2=df1.groupby('届次')

    df2=df2['奖牌'].count()

    C . df2=df1.groupby('奖牌')['届次’].count() D . df2=df1.groupby('届次').奖牌.count()
某数据压缩方法描述如下:

①原始数据中,某数不为0且相邻无重复,压缩数据用该数据表示;②原始数据中,某数为0且相邻无重复,压缩数据用两个数表示,第1个为0,第2个为0;③原始数据中,某数据相邻有重复,压缩数据用3个数表示:第1个为0,第2个为重复数的个数,第3个为该数本身。

根据上述压缩方法,对应的解压缩方法示例如图所示。

小明学习了Python的PIL、matplotlib和numpy等模块知识后,现有图像文件“台州.bmp”,该文件的颜色模式为RGB,将该图像文件的每个像素点转换成灰度值(值为整数)后,使用上述压缩方法进行压缩并保存为文本文件。颜色RGB值转灰度值的公式如下:

灰度值=0.299×红色颜色分量+0.587×绿色颜色分量+0.114×蓝色颜色分量

  1. (1) 如果压缩数据为“23,0,21,66,0,0,77,0,5,0”,则解压缩数据的个数是
  2. (2) 实现上述功能的Python程序如下。请在划线处填入合适代码。

    from PIL import Image

    import numpy as np

    import matplotlib.pyplot as plt

    img = np.array(Image.open("台州.bmp"))

    row,cols,rgb = img.shape

    s=[]

    for i in range(row):

    for j in range(cols):

    r,g,b = img[i,j]

    hdz =

    s.append(hdz)

    ss = []:j = 0

    while j<len(s)-1:

    if s[j]!=s[j+1]:

    if s[j]!=0:

    ss.append(s[j])

    else:

    ss.extend()    #extend 函数用于在列表末尾一次性追加另一个序列中的多个值

    j+=1

    else:

    c = s[j]

    for k in range(j+1,len(s)) :

    if c!=s[k]:

    break

    else:

    ss.extend([0,k-j,s[j]])

    j=k

    if j!=len(s):

    ss.append(s[j])

    f = open("台州 255.txt","w+")

    f.write(",".join(map(str,ss)))

    f.close()