[Python]执行如下操作后输出结果为:

一、单选题

1.执行如下操作后输出结果为:____________

s =[ "seashell" , "gold" , "pink" , "brown" , "purple" , "tomato"]

print(s[4:])

A.['seashell', 'gold', 'pink', 'brown']

B.['gold', 'pink', 'brown', 'purple', 'tomato']

C.['purple', 'tomato']

D.['purple']

答案:C

解析:s[4:] 表示从索引为4的元素(包括索引为4的元素)开始,一直到列表末尾的所有元素。因此结果是['purple', 'tomato']。

2.对于b=[1,2,5,8],b[2:3]是

A.5

B.[5]

C.[2,5]

D.[5,8]

答案:B

解析:在Python中,b[2:3]表示从列表b中截取索引为2到3的元素(左闭右开区间),切片操作 b[2:3] 包括索引 2 的元素,但不包括索引 3 的元素。因此结果是 [5]。实际上,对于 b=[1,2,5,8],b[2:3] 的结果是 [5] 而不是 5。因为切片操作会返回一个包含所选范围内元素的新列表,而不是单个元素。

3.列表a = [['Li', 29, 68], ['He', 87, 63], ['Mei', 48, 72]],那么a.sort(key=lambda x: sum(x[1:]), reverse=True)执行后,列表a变为

A.[['Li', 29, 68], ['He', 87, 63], ['Mei', 48, 72]]

B.[['He', 87, 63], ['Mei', 48, 72],['Li', 29, 68]]

C.[['Mei', 48, 72],['He', 87, 63],['Li', 29, 68]]

D.[['Li', 97], ['He', 150], ['Mei', 120]]

答案:B

解析:

首先,让我们解释一下这个sort方法的参数:

  • key=lambda x: sum(x[1:]):这个参数表示对列表中的每一个元素(在这个例子中,每一个元素是一个列表),计算其从索引1到最后的元素之和(也就是第2和第3个元素之和)。这个和被用作排序的依据。
  • reverse=True:表示要按降序排序。

    现在,根据这个规则,我们来对原列表进行排序:

    a = [['Li', 29, 68], ['He', 87, 63], ['Mei', 48, 72]]

    首先计算每个子列表的第2和第3元素之和:

    • Li: 29 + 68 = 97
    • He: 87 + 63 = 150
    • Mei: 48 + 72 = 120

      按降序排序,得到:

      1. He: 150
      2. Mei: 120
      3. Li: 97

      所以,执行a.sort(key=lambda x: sum(x[1:]), reverse=True)后,列表a变为:

      a = [['He', 87, 63], ['Mei', 48, 72], ['Li', 29, 68]]

      tips:在Python中,sort()函数默认是升序排序。这意味着如果我们直接调用sort()函数,那么它会按照从小到大的顺序排序。

      4.执行下述代码后,得到的 a,b的值分别是
      slist = [1, 10, "小明", 99.0, 88.5, 10]

      a = slist.index("小明")

      b = slist.index(10)

      A.2,1

      B.1,0

      C.3,2

      D.2,5

      答案:A

      解析:slist = [1, 10, "小明", 99.0, 88.5, 10]

      a = slist.index("小明") # "小明" 在 slist 中的索引是 2,所以 a = 2

      b = slist.index(10) # 10 在 slist 中首次出现的索引是 1,所以 b = 1

      所以答案是 (2, 1),即选项 A。

      5.字符串tstr=’television’,显示结果为vi的选项是( )。

      A.print(tstr[-6:6])

      B.print(tstr[5:7])

      C.print(tstr[4:7])

      D.print(tstr[4:-2])

      答案:A

      解析:A选项起始位置是-6,也就是从右到左,从-1开始编号,到v的位置下标为-6(包括),终止位置是6,也就是从左到右,从0开始编号,6的位置是'vis'中的s,由于不包括s,也就是取到了'vi'

      6.print("hello,world".split(‘o’)的结果是

      A.[‘hell’,’w’,’rld’]

      B.[‘hell’,’wrld’]

      C.[‘hell’,’,w’,’rld’]

      D.[‘hello’,’,world’]

      答案:C

      解析:首先,我们要理解Python中的split()方法。这个方法用于将字符串按照给定的分隔符进行分割,并返回一个包含分割后子字符串的列表。

      在给出的代码print("hello,world".split('o'))中,我们使用split('o')来分割字符串"hello,world"。分隔符是'o'。

      现在,我们来看选项C [‘hell’,’,w’,’rld’]:

      • ‘hell’:这是从索引0到分隔符'o'之间的子字符串。
      • ‘,w’:这是从分隔符'o'到下一个分隔符(这里是逗号)之间的子字符串,包括逗号。
      • ‘rld’:这是从逗号后的分隔符到字符串结尾的子字符串。

        所以,当你运行print("hello,world".split('o')),输出应该是[‘hell’,’,w’,’rld’]。

        因此,选项C是正确的。

        7.下面代码的输出结果是()。

        s = "The python language is a cross platform language."

        print(s.find('language',30))

        A.11

        B.系统报错

        C.10

        D.40

        答案:D

        解析:首先,我们需要理解Python中的find()方法。这个方法用于在字符串中查找子字符串,并返回子字符串首次出现的最低索引。如果没有找到子字符串,它将返回-1。

        在给出的代码中,s.find('language',30)表示从索引30开始查找子字符串'language'。

        现在,我们来一步步分析代码。字符串s的内容是 "The python language is a cross platform language.",如果我们从索引30开始查找'language',我们会发现'language'从索引40开始。

        因此,s.find('language',30)将返回40。

        所以,正确答案是D. 40。

        8.以下代码的输出结果是( )。

        s="123"; t="456"; t=int(s+t); print(t)
        

        A.123456

        B.579

        C.456

        D.语句出错

        答案:A

        解析:首先,让我们分析这段代码:

        s = "123"  
        t = "456"  
        t = int(s + t)  
        print(t)

        代码的逻辑是:

        1. 定义字符串s,其值为"123"。
        2. 定义字符串t,其值为"456"。
        3. 将s与t进行连接,结果为"123456",然后将这个连接后的字符串转化为整数,赋值给t。
        4. 打印t的值。

        根据上述逻辑,t的最终值是整数123456。

        所以,输出结果是:

        A. 123456

        是正确答案。