【Python】 列表 VS 元组

不可变对象的值是不可改变的。这就意味着它们通过 hash 算法得到的值总是一个值。这是
作为字典键值的一个必备条件。在下一章节里面我们会讨论到,键值必须是可哈希的对象,元
组变量符合这个标准,而列表变量就不行。
核心笔记:列表 VS 元组
一个经常会被问到的问题是,"为什么我们要区分元组和列表变量?"这个问题也可以被表
述为“我们真的需要两个相似的序列类型吗?”,一个原因是在有些情况下,使用其中的一种类
型要优于使用另一种类型。
最好使用不可变类型变量的一个情况是,如果你在维护一些敏感的数据,并且需要把这些
数据传递给一个并不了解的函数(或许是一个根本不是你写的 API),作为一个只负责一个软件
某一部分的工程师,如果你确信你的数据不会被调用的函数篡改,你会觉得安全了许多。
一个需要可变类型参数的例子是,如果你在管理动态数据集合时。你需要先把它们创建出
来,逐渐地或者不定期的添加它们,或者有时还要移除一些单个的元素。这是一个必须使用可
变类型对象的典型例子。幸运的是,通过内建的 list()和 tuple()转换函数,你可以非常轻松
的在两者之间进行转换.
list()和 tuple()函数允许你用一个列表来创建一个元组,反之亦然.如果你有一个元组变
量,但你需要一个列表变量因为你要更新一下它的对象,这时 list()函数就是你最好的帮手.如
果你有一个列表变量,并且想把它传递给一个函数,或许一个 API,而你又不想让任何人弄乱你
的数据,这时 tuple()函数就非常有用。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值