模块 知识点题库

导入模块的方式错误的是(   )
A . import mo B . from mo import * C . import mo as m D . import m from mo
  Python中读写文本文件的方法,其中打开用把外存储器里的文本文件(.txt)打开;存储用将内存中的数据存储到外存储器的文件中;关闭文件时一定要用关闭文件。
Pygame自带了一个监听类循环,不断检查用户的操作,这个循环在程序运行过程期间持续工作。仔细阅读理解如下代码填写括号内容

while True:

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

    if event.type==pygame.QUIT:          #(

      sys.exit()                  #退出程序

    if event.type==pygame.MOUSEBUTTONDOWN: #(

matplotlib模块是一个。matplotlib的绘图原理很简单,利用画线函数就可以在直角平面内轻松地将坐标点对连接成平滑曲线。
2018年我国流通领域重要生产资料市场价格数据的示例如图所示。编写Python程序,统计每个产品的最高价格和平均价格。

请回答下列问题:

  1. (1) 数据文件“data.asv"包含的数据列有,本次分析主要涉及的数据列有
  2. (2) 实现上述功能的Python程序如下,在划线处填入合适的代码。

    import pandas as pd

    df= pd. read _csv("data.csv")

    df_ g=

    df_ max=df_ _g["价格(元)"].max( )

    df_ mean=

    print(df_ max)

    print(df_ mean)

在BXY中输入代码如图所示,Music模块为MicroPython所提供播放音乐的方法。

代码中ragsatastop,tep)函数表示从start开始到stop结束的范围内,进行步长step的变化。标号5所在行代码表示设置音乐的频率,并循环改变,则每次循环音乐频率的变化是(     )

A . 增加880 B . 减少16 C . 增加1760 D . 增加16
小明编写基于Flaskweb框架的Python程序,系统的主界面如图1所示,系统包括数学计算与信息查询两个子系统。其中,数学计算子系统实现将两个整数(20位以内)相加的功能。例如:在文本框中分别输入两个数,如“875393642”和“83735927363”,单击“计算”按钮后,程序将计算结果显示在网页中。程序运行界面如图2所示。

实现上述功能的Python程序代码如下:

#导入编写Flask web框架的外部连接库

from flask import Flask, render_ template

from flask_ wtf import FlaskForm

from flask_ bootstrap import Bootstrap

from wtforms import SubmitField, StringField

from wtforms.validators import DataRequired

app = Flask(name_)

app.config['SECRET_ KEY']= 'xxx_sss 1276589'

bootstrap = Bootstrap(app)

#读取网页的表单输入的数值,存储到变量txt和变量txt1中

class NameForm(FlaskForm):

  txt = StringField(加数1:, validators=[DataRequired( )])

  txt1 = StringField(加数2:, validators=[DataRequired( )])

  submit = SubmitField(计算')

  #设置访问"/"目录路由命令

@app.route("/)

def index( ):

mtxt= '简易信息系统'

return render_ template(  ①  )

#设置访问"/sx"目录路由命令

@app.route(/sx', methods='GET', 'POST'])

def index_ sx( ):

adata= 0

bdata =0

    myform = NameForm( )

    if myform.validate_on_ submit( ):

        adata = int (myform.txt.data)

        bdata = int (myform.txt1.data)

    returm render_ template('t3.html', form-myform, txt=adata+bdata)   #调用“t3.htm1”网页模板

if_ name_ =='_main_':

      ②   #运行程序对象实例

结合上述代码,请回答下列问题:

  1. (1) 若该系统打开的首页为“index.html" ,①处应填写的代码为
  2. (2) 客户端用浏览器访问数学计算子系统,其调用的网页模板文件名为
  3. (3) 划线②处是运行程序对象实例,应填写的代码为
  4. (4) 若首页"index.html"文件中有如下超链接代码:

    '其他代码略

    <body>

        <a href="/sx">数学计算<br> </a>

        <a href="/cx">信息查询</a></center>

    结合系统运行图,则访问“信息查询子页面”的URL为

  5. (5) 结合代码中的虚线框。

    虚线框处定义函数名:

    该函数的功能:

    该函数中变量txt的作用:

一元二次方程ax2+bx+c=0(a≠0),当b2-4ac≥0,方程有两个不同的实数根,当b2-4ac<0时,方程无实数根。

(问题求解)下面的python程序实现的功能是判断方程是否有实数根。请阅读如下python程序,在空白处填写适当的表达式或语句,使程序完整。

import math

a=int(input("请输入a的值:"))

b=int(input("请输入b的值:"))

c=int(input("请输入c的值:"))

d= #将表达式b2-4ac的值赋给变量d

if

    print("x1=",(-b+math.sqrt(d))/(2*a))  #输出方程的其中一个实数根

    print("x2=",()           #输出方程的另一个实数根

else:

      #输出“方程无实数根”

若两个素数之差为 2,则该对素数称为双胞胎数,如 3,5 就是一对双胞胎数。编写 python 程序,实现如下功能:输入 n 的值,统计显示 n 以内的所有双胞胎数。程序运行界面如图所示:

实现上述功能的程序如下,请在划线处填入合适的代码。

import math

def isprime(x):

   

    for i in range(2,int(math.sqrt(x))+1):

        if x % i = = 0 :

             f=False

     return f

n=int(input("请输入一个正整数n:"))

c=0

k=3

while k < = n-2:

    if isprime( k ) and :

        c + = 1

        print("第"+ str( c ) +"对双胞胎数:", k ,'和',k+2)

    

print("共有"+str(c)+"对双胞胎数")

计算机在0~1000中随机产生一个数,试试看你要多少次才能猜中,阅读下列程序.

import random

num=random.randint(1,  ①  )

mynum=int(input('请输入mynum='))

n=1

while not(  ②  ):

    n= n+1

    if mynum<num:

        print("输入的数小了")

    elif mynum>num:

        print("输入的数大了")

    print("输入不正确,请再次输入")

    mynum=int(input('请输入mynum='))

print("你猜对了!","一共用了",n,"次") 

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

下列说法正确的是(    )

A . ①填写999 B . ①填写1000 C . ①填写1001,②填写mynum== num D . ②填写mynum!= num
小明参加课外活动小组,对盆栽中某一枝条做好标记,记录28天内该枝条的生长情况,每周日记录一次,四次记录结果分别为8.8cm、10.1cm、10.9cm、11.4cm。他使用Python编码。制作了关于枝条长度(单位:cm)的柱形图,代码及柱形图如下图所示,代码空白处应填。 (       )

A . "8.8,10.1,10.9,11.4" B . "8.8","10.1","10.9","11.4" C . 8.8,10.1,10.9,11.4 D . [8.8,10.1,10.9,11.4]
有一段 Python代码及其运行结果如下

小明在代码中插入了语句“df_delc=df.drop(0)”, 其余不做修改,那么运行这段修改后的代码,其运行结果为( )

A . A B . B C . C D . D
以下程序引入Python的math模块,使用math模块下的floor函数对命令行输入的实数进行取整。请补全该程序段。

n=input(“请输入一个实数:”)

n2= math. floor(float(n))

print(n2)

numpy是一个科学计算包,其中包括很多数学函数。
某同学想给老师们制作一个课堂随机抽学生回答问题的程序,据此回答下面小题。
  1. (1) 先要解决的问题是把全班50名同学的姓名输入到一个列表s中,以下能解决该问题的程序段是(     )
    A . s=""

    s=input("请输入一个姓名并回车")*50

    B . s=[]

    for x in range(50):

       s=s+[input('请输入一个姓名并回车')]

    C . s=""

    for x in range(50):

        s+=input("请输入一个姓名并回车")

    D . for x in range(50):

        s=[]

        s=s+[input('请输入一个姓名并回车')]

  2. (2) 名单输入后,下面解决抽名字的问题了,下列程序段能解决自动随机抽取一位同学姓名的是(     )

    ①import random

    print(random.choice(s))

    ②import random

    n=random.randint(0,49)

    print(s[n])

    ③import random

    for n in range(50):

        print(s[n])

    ④import random

    n=int(input("请输入0-49间任意整数:"))

    print(s[n])

    A . ①② B . ①③ C . ②④ D . ③④ 
在用Python编程对数据进行分析的时候,代码pandas.DataFrame.sum执行的操作是(   )
A . 返回所有列的和 B . 返回所有行的和 C . 返回所有数据中的最大值 D . 返回所有数据中的最小值
某Python程序段如下:

import random

fibo=[1]*11

for i in range(2, 11):

    fibo[i] = fibo[i - 1] + fibo[i - 2]

n = random.randint(1, 10)

print (fibo[n])

运行该程序段,输出结果不可能是(    )

A . 1 B . 21 C . 35 D . 89
某班级学习委员编写了一个随机抽取学生的程序,用于辅助班级作业检查。具体功能如下,班级名单存储在文件“mingdan.csv”中,输入抽取的学生数k,则输出随机抽取的学生名单。文件“名单”部分界面如图a所示,程序运行结果如图b所示。python程序代码如下,请回答下列问题。

图 a

图 b

from random import randint   import csv

k = int(input("请输入抽取人数: print("抽取人员名单为: ")

f = open("mingdan.csv")

f_csv = csv.reader(f)

dic = {}

num = 0

for row in f_csv:

  if num == 0:"))

    print(row[0]," ",row[1])

    num += 1

    continue

  dic[num] = [row[0],row[1]]

  num += 1

  f.close()

  num -= 1

  i = 0

while i < k:

  luck =      ①    

  

  print(dic[luck][0],      ③     )

  i += 1

  if num == i + 1:

    Break

  1. (1) 请在划线处填入合适代码。

        ②   ③

  2. (2) 如果删除加框处代码,则对程序造成的影响为                      (单选,填字母)
    A . 程序出现语法错误,无法正常运行 B . 当k<=num时,输出数据可能少于k行 C . 当k<=num时,输出数据可能多于k行 D . 输出的数据中,可能存在重复的人员
某程序功能如下输入n,生成n*n的方阵,存于列表a,内容为1至9的随机整数。再对以(x0,y0)和(x1, y1)为对角顶点的矩形区域中的数据进行水平翻转,并将变换后的二维数组以矩阵形式输出。再输入小于n的四个数字(如a,b,c,d,四者关系必须满足a<c,b<d),用逗号间隔: 2,1,6,5 则左上角为a[1][2] ,右下角为a[5][6],则运行程序后,运行界面如图所示。

  1. (1) 以上图为例,如果输入左上角+右下角的坐标为:2,3,7,5。水平翻转后,则元素a[3][4]的值在新数组保存在元素a[][](填写下标)中。
  2. (2) 代码如下并完成填空。

    #生成n*n的矩阵

    import random

    n=int(input(‘输入n,产生n*n的方阵:’ ))

    a=[[random.randint(1,9) for i in range(n)] for j in range(n)]

    for i in a:

      print(i)

    print( )

    x,y=[],[]

    xy=input("请输入左上角+右下角坐标:") #输入左上角坐标+右下角坐标,用逗号分隔数字。如:"2,1,14,13"

    xy=xy+","

    c,j=0,0

    for i in range(len(xy)):

      if xy[i]==",":

        if :

          x.append(int(xy[j:i]))

        else:

          y.append(int(xy[j:i]))

       

        c=c+1

    for i in range(y[0],y[1]+1,1):

      for j in range(x[0],(x[0]+x[1])//2+1,1):

        a[i][j],a[i][]=a[i][],a[i][j]

    for i in range(len(a)):

      print(a[i])

小明对入栈、出栈规则研究发现,若有n个数字1,2,3,……,n按由小到大的顺序入栈,则出栈序列必须遵循下述原则:当数字x出栈后,则在x后出栈的小于x的所有数字必定以降序排列,比x大的数字可以夹杂在该降序序列中。现编写Python程序,按上述原则验证一个随机产生的出栈序列是否可能,程序运行界面如图所示。

  1. (1) 根据题意,若有7个数字入栈,则出栈序列“3→2→5→4→7→1→6”是 (单选,填字母:A .可能 / B .不可能)
  2. (2) 实现上述功能的Python程序代码如下,程序中加框处代码有错,请改正。

    import random

    n=int(input('请输入入栈元素的个数:'))

    data=[i+1 for i in range(n)]

    random.shuffle(data)     #将序列的所有元素随机排序

    s=''

    for i in range(n):

      s+=str(data[i])+'→'

      print('随机产生的出栈序列为:'+ )      #去除最后多余的'→'

      flag=True; i=0

    while i<n-1 and flag:

         ①   

      for j in range(i+1,n):

        if data[j]<data[i]:

          if data[j]<x:

            x=data[j]

          else:

               ②   

        break

        i+=1

    if flag:

      print('该出栈序列是可能的!')

    else:

      print('该出栈序列是不可能的!')

  3. (3) 请在划线处填入合适代码。