牛客网专项练习30天Pytnon篇第19天

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
简介: 牛客网专项练习30天Pytnon篇第19天

1.下列哪种不是Python元组的定义方式:(A)


A.(1)


B.(1, )


C.(1, 2)


D.(1, 2, (3, 4))


解析:


      Python 中的 tuple 结构为 “不可变序列”,用小括号表示。为了区别数学中表示优先级的小括号,当 tuple 中只含一个元素时,需要在元素后加上英文逗号。否则会被python认为是int类型,所以A选项结果应为(1,)而不是(1)。


2.在Python3中,以下程序结果为:(C)

one = (1, 2, 3)
two = ('a', 'b')
print(one+two)

A.None


B.报错


C.(1, 2, 3, 'a', 'b')


D.[1, 2, 3, 'a', 'b']


解析:


     在python3中,元组的“+”运算表示连接,因此程序结果会生成一个新的元组:(1, 2, 3, 'a', 'b')。


3.在python3中,关于元组的计算如下:(C)

one = (1, 2, 3)
one[2] = 4
print(one[2])

A.None


B.报错


C.4  


D.(4)


解析:


      在python3中元组中的元素值是不允许修改的,因此程序会报错:TypeError: 'tuple' object does not support item assignment。


4.执行以下程序,下列选项中,说法正确的是:(C)

tup = (1,2,[3,4]) ①
tup[2]+=[5,6] ②

A.执行代码②后,变量tup[2]的id发生改变


B.①和②均可以执行而不会抛出异常


C.执行代码②时会抛出异常,最终tup的值为(1,2,[3,4,5,6])


D.执行代码②时会抛出异常,最终tup的值为(1,2,[3,4])


解析:


      tup[2]是列表,列表是可变对象,对于可变对象,执行+=后并不会改变其id值;执行②时会抛出异常,“+=”的执行顺序是先对[3,4]执行+操作,其结果为[3,4,5,6],然后再执行”=“,此时会抛出异常,这是因为元组不允许元素的引用被重新赋值,尽管赋值后列表的id是不变的,若改成tup[2].extend([5,6])就不会抛出异常。


5.若 a = (1, 2, 3),下列哪些操作是合法的:(ABD)


A.a[1:-1]


B.a*3


C.a[2] = 4


D.list(a)


解析:


      A选项为元组切片操作结果为(2,);B选项为元组运算结果为(1,2,3,1,2,3,1,2,3);C选项由于元组是不可变类型,故无法完成元组内元素修改操作;D选项为元组和列表转换,结果为[1,2,3]。


相关文章
|
索引 Python
牛客网专项练习30天Pytnon篇第18天
牛客网专项练习30天Pytnon篇第18天
90 0
|
索引 Python
牛客网专项练习30天Pytnon篇第10天
牛客网专项练习30天Pytnon篇第10天
85 0
|
Python
牛客网专项练习30天Pytnon篇第25天
牛客网专项练习30天Pytnon篇第25天
141 0
|
Python
牛客网专项练习30天Pytnon篇第23天
牛客网专项练习30天Pytnon篇第23天
89 0
|
Python
牛客网专项练习30天Pytnon篇第04天
牛客网专项练习30天Pytnon篇第04天
87 0
|
Serverless Python
牛客网专项练习30天Pytnon篇第20天
牛客网专项练习30天Pytnon篇第20天
66 0
|
索引 Python
牛客网专项练习30天Pytnon篇第17天
牛客网专项练习30天Pytnon篇第17天
127 0
|
Python
牛客网专项练习30天Pytnon篇第02天
牛客网专项练习30天Pytnon篇第02天
93 0
|
Python
牛客网专项练习30天Pytnon篇第26天
牛客网专项练习30天Pytnon篇第26天
124 0
|
C语言 索引 Python
牛客网专项练习30天Pytnon篇第29天
牛客网专项练习30天Pytnon篇第29天
177 0