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. st进行连接,结果为"123456",然后将这个连接后的字符串转化为整数,赋值给t
    4. 打印t的值。

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

    所以,输出结果是:

    A. 123456

    是正确答案。

    物联沃分享整理
    物联沃-IOTWORD物联网 » Python代码示例:截取列表中指定位置之后的元素并输出结果

    发表评论