为什么不能直接改成t = ('a', 'b', 'A', 'B')
为什么不能直接改成t = ('a', 'b', 'A', 'B')
为什么不能直接改成t = ('a', 'b', 'A', 'B')
2016-04-19
课程的名字就叫做 “可变”的tuple 嘛。。
这就是因为 tuple 本身是不可以变得,但是 将一个列表放入 tuple 中作为其 元素, 虽然tuple 是不可以变得,但是这个列表是可以改变的, 还是举例说明吧。。
t = ('a', 'b', 'A', 'B') ## 至此,tuple t 定义完毕,则它不可增,不可删,也不可改,因为 tuple 没有提供 类似列表的 insert(), ## append() 等等函数, 实际上 tuple 只提供了 两个内置的函数 count(): 返回所查询值在 列表中出现的次数 ## index() 返回所查值的 第一次出现的位置, 当然这个函数可以传入查询的起始位置,而调整其返回。 ## 那么课程中所定义的 所谓 “可变tuple” 如下 t = ('a', 'b', ['A', 'B']) ## 而任务中 所谓改动代码使其不可变, 其实说的不严谨,应该标明: 依然还是三个元素, 第三个元素还得是 ## iterable类型 等等吧, 其实就是想让我们把第三个元素 从列表改成 元组, 如下 t = ('a', 'b', ('A', 'B'))
举报