充值活动已开启,快来参与吧 关闭充值活动
当前位置:手动组卷 /高中信息技术 /按知识点
选择知识点
最新上传 最多使用
  • 1. (2023高一下·铜山期末) 下列Python程序段运行的结果是(  )。

    list1=[“welcome”,“to”,“Python”,“World”]

    print(list1[2])

    A . “to” B . “Python” C . “welcome”,”to” D . “welcome”,”to”,”Python”
  • 1. (2023高一下·铜山期末) 输出列表a中的元素的最大值。不要更改程序结构,将题中的①②③填入正确的语句。

    a=[20,32,56,12,48]

    maxx=a[0]

    for k in ①:

        if maxx<k:

              ②  

    print( ③ )

    1. (1) 序号①答案为:(    )
    2. (2) 序号②答案为:(    )
    3. (3) 序号③答案为:(    )
  • 1. (2023高二下·宁波期中) 列表a=[1,2,3,4,5,6,7,8,9,0],则a[3::-2]的结果为(    )
    A . [3, 1] B . [3, 5, 7, 9] C . [4, 6, 8, 0] D . [4, 2]
  • 1. (2023高二下·浙江期中) 某智能停车场在门口设置等位便道记录车辆的到达时间。停车场非满位时,车辆经等位便道直接进入停车场,此时车辆的到达时间等于驶入时间;停车场满位时,车辆在等位便道中等候,按照“出一辆,进一辆”原则驶入停车场,此时车辆的到达时间不等于驶入时间。

    管理员从系统中导出某天0点该停车场的剩余车位与当天0点到24点之间进出该停车场的车辆数据,车辆数据包含车牌、到达时间、驶入时间、驶出时间(驶出时间为空字符串表示车辆未驶出),车辆数据已按车辆驶入时间升序排列。

    编写程序模拟停车过程,请回答下列问题。

    1. (1) 若部分车辆数据如右表所示,该停车场3月23日0点时剩余车位为231个,则3月23日7点时,该停车场剩余车位为个。
    2. (2) 下列程序用于查询某一时刻该停车场内剩余车位的数量num。

      nowt=input("请输入查询空闲车位的时刻:")

      #读取车辆数据存入列表data,列表每个元素包含车牌、到达时间、驶入时间、驶出时间。代码略。

      hist="2023-3-23-00:00:00"  #截止到"2023-3-23-00:00:00",停车场内共有剩余车位231个。

      num=231

      for i in range(len(data)):

      if data[i][3]<=nowt and data[i][3]!="": 

          if data[i][2]<hist:

                        甲  

          :

              if data[i][2]>=hist:

                     乙  

      ①要完成上述功能,则程序段中线处甲、乙依次填入的语句为(单选,填字母)。

      A .甲:num-=1 乙:num+=1

      B .甲:num+=1 乙:num-=1

      ②若将程序段加框处代码改成“else”,则下列对结果num的说法最合理的是(单选,填字母)。

      A.num可能比原来的值小            B.num的值不变            C.num可能比原来的值大

    3. (3) 由于管理员操作失误,误删了车辆数据中的驶入时间。实现利用缺失驶入时间的车辆数据计算该停车场3月23日的停车收入的Python程序如下,请在划线处填入合适的代码:

      def money(t1,t2):

          #根据时间t1和t2计算车辆的停车费用并返回,代码略。

      def team(outt,i,head):

          p=q=head

          while p!=-1 and data[p][2]<outt:

              q=p;p=data[p][3]

          if p==q:

              head=i

          else:

              data[q][3]=i

      data[i].append(p)

      return head

      #读取车辆数据存入列表data,列表每个元素的数据项依次为车牌、到达时间、驶出时间。代码略。

      #注:3月23日前驶入车辆的到达时间已经处理为当日实际驶入时间。

      hist="2023-3-23-00:00:00"  #截止到"2023-3-23-00:00:00",停车场内共有剩余车位231个。

      num=231  

      total=0

      n=len(data);head=-1

      for i in range(n):

          if data[i][2]!="":

              arrt=data[i][1];outt=data[i][2]

              if arrt<hist: 

                  head=team(outt,i,head)

              else:

                  while head!=-1 and :

                      total+=money(data[head][1],data[head][2])

                      head=data[head][3]

                      num+=1

                  if num==0:

                     

                      total+=money(data[head][1],data[head][2])

                      head=data[head][3]

                  else:

                      num-=1

                  head=team(outt,i,head)

          else:

             

      while head!=-1:

          total+=money(data[head][1],data[head][2])

          head=data[head][3]

      print("本日总收入为:",total,"元。")

  • 1. (2023高二下·宁波期中) 有以下 python 程序段:

    a = [0]*4

    for i in range(1,4):

        j = 0

        a[j] += 1

        while a[j] == 2:

            a[j] = 0

            j += 1

            a[j] += 1

    执行该程序段后a的内容是(    )

    A . [1,1,0,0] B . [1,0,1,0] C . [0,1,1,0] D . [0,1,0,1]
  • 1. (2023高二下·宁波期中) 有如下 python 程序段:

    import random

    total=10

    num=[0]*total

    for i in range(total):

        num[i]=random.randint(1,100)

    m1,m2=len(num)-1,len(num)-1

    for i in range(len(num)):

        if num[i]>num[m2]:

            m1=m2;m2=i

        elif num[i]>num[m1]:

            m1=i

    print(m2,m1)

    假设当前num=[47, 4, 46, 75, 52, 6, 71, 81, 34, 11],则该程序段运行后的输出结果为(   )

    A . 2 5 B . 3 7 C . 5 2 D . 7 3
  • 1. (2023·杭州模拟) 为分析数据中各元素的变化情况,进行如下定义:若在数组d中满足d[a]<...<d[i-1]<d[i]>d[i+1]>...>d[b],则从下标a到下标b区间的数据称为一个波峰,下标a到b的距离即为一个波峰的长度(长度≥3)。例如:数组d元素为“78,46,50,37,5,42,6,6,23”,存在2个波峰,分别是从d[1]到d[4]和d[4]到d[6],波峰长度分别为4和3。

    编写程序分析数据,找出所有波峰,按波峰长度降序排序(若波峰长度相同,则按开始下标升序),并输出波峰长度和开始到结束元素下标;若不存在,则输出“不存在波峰”,运行结果如图所示。

    请回答下列问题:

    1. (1) 根据题意,若数组d元素“23,14,35,31,13,20,3,40,10,10,9”,则最长的波峰长度为
    2. (2) 执行该程序,若数组d元素为“2,1,1,2”,则A处while语句中循环体的执行次数是
    3. (3) 实现上述功能的程序代码如下,请在划线处填入合适的代码。

      #读取待处理数据,保存在数组 d 中,并显示输出,代码略

      mt,i,n=[],1,len(d)

      while i<n:

          while i<n and d[i]<=d[i-1]:    #A

              i+=1

          st=i-1

          while i<n and d[i]>d[i-1]:

              i+=1

          if:

              continue    #跳出本轮循环,然后继续进行下一轮循环

          while i<n and d[i]<d[i-1]:

              i+=1

          ln=i-st

          if len(mt)==0:

              mt.append([ln,st,-1])    #为 mt 追加一个列表元素

              head=0;q=head

          else:

             

              while p!=-1 and :

                  q=p

                  p=mt[p][2]

              if p==head:

                  mt.append([ln,st,head])

                  head=len(mt)-1

              else:

                  mt.append([ln,st,p])

                 

      if len(mt)==0:

          print("不存在波峰")

      else:

          print("输出结果(长度:开始下标~结束下标):")

          p=head

          while p!=-1:

              print(mt[p][0],":",mt[p][1]," ~",mt[p][0]+mt[p][1]-1)

              p=mt[p][2]

    4. (4) 使用以下代码替换加框处代码,可以减少链表mt遍历次数的是       (单选,填字母)。
  • 1. (2023·杭州模拟) 有如下Python程序段:

    import random

    q = [0] * 5

    head = tail = 0

    for i in range(5):

        if random.randint(0,1)== 0:

            q[tail] = random.randint(1,9)

            tail += 1

        elif head != tail and q[tail - 1] < q[head]:

            q[tail] = q[head]

            head += 1

            tail += 1

    执行该程序段后,q的值不可能是(   )

    A . [0, 0, 0, 0, 0] B . [5, 4, 3, 2, 1] C . [5, 8, 3, 0, 0] D . [0, 5, 6, 0, 0]
  • 1. (2023·杭州模拟) 小天收集了浙江省某年各地市年龄段数据,保存在“T14.xlsx”文件中,如图a所示。为统计分析各地市不同年龄段人口占比,编写Python程序,输出结果如图b所示。

    请回答下列问题:

    1. (1) 为统计分析各地市不同年龄段人口占本地市人口比例,编写 Python 代码如下,划线处①应填入的代码为(单选,填字母),划线处②应填入的代码为

      A.df.groupby("地市",as_index=False).count()

      B.df.groupby("地市",as_index=False).sum()

      C.df.groupby("地市",as_index=True).mean()

      import pandas as pd

      import matplotlib.pyplot as plt

      df = pd.read_excel("T14.xlsx")

      df1 =   ①         # 计算各地市不同年龄段的人数

      print ("地 市17 岁以下    18-34 岁   35-59 岁   60 岁及以上")

      #“df1.values.tolist()”实现将 df1 转换为二维列表。列表中每个元素包含 5 个数

      #据项,分别对应地市名称和该地市 4 个年龄段人数总计,如['丽水市', 501421, ...]

      df2=df1.values.tolist()

      x,y = [],[]

      for area in df2:

          for c in range(len(area)):

              if c == 0:

                  x.append(area[0])

                  print(area[0], end=" ?")

              else:

                  sm = sum(area[1:])     #sum 函数实现对序列求和

                  t=   ②   

                  print('%.2f' %(t), end="% ?")     #按设置格式输出

                  if c == 4:

                      y.append(t)

      print()

      plt.title("浙江省各地市 60 岁以上人数占本地市总人口比例", fontsize=24)

      plt.bar(x, y)

      #绘制 60 岁及以上人数占本地市总人口比例柱形图

      #设置绘图参数,显示如图 c 所示,代码略。

    2. (2) 由图c可知,60岁及以上人数占本地市人口比例超过25%的地市有个。
    3. (3) 小天编写mygroupby函数模拟实现上述分类汇总功能,计算各地市不同年龄段的人数,结果以列表形式返回。函数代码如下,请在划线处填入合适的代码。

      #df1为二维列表,列表中每个元素包含6个数据项,内容如图a所示;函数返回值dfs格式同题(1)二维列表 df2

      def mygroupby(df1):

          dfs=[]     #创建一个空列表 dfs

          for row in df1:

              

              if n>0:

                  for j in range(n):

                      if row[0]==dfs[j][0]:

                          break

              if n==0 or row[0] != dfs[j][0]:

                  dfs.append([row[0],0,0,0,0])

                  j=n

              for k in range(2,len(row)):

                 

      return dfs

  • 1. (2023·嘉兴模拟) 有如下 Python 程序段:

    def sym(d1, d2):

        s1 = d1.split(",")      # 以“,” 将字符串分割成列表

        s2 = d2.split(",")

        if len(s1) != len(s2):

            return False

        stk = []

        i=0

        j=0

        while i < len(s1):

            stk.append(s1[i])

            i += 1

            while stk != [] and stk[-1] == s2[j]:

                stk.pop()     #删除列表 stk 中的最后一个元素

                j += 1

        return stk == [] and i == j

    L1 = "@,a,b,3,c,d"

    L2 = input()

    print(sym(L1, L2))

    执行该程序段后,若输出结果为 True,则 L2 输入的值可能是(   )

    A . a,b,c,d,3 B . c,d,3,b,@,a C . b,a,@,3,d,c D . d,c,3,@,a,b
上一页 3 4 5 6 7 下一页 共81页