python赋值机制

作者: 派派森森 | 来源:发表于2019-01-14 14:08 被阅读0次

对应于元组(tuple)与列表(list)的关系,对于集合(set),Python提供了一种叫做不可变集合(frozen set)的数据结构。

使用 frozenset 来进行创建:

s = frozenset([1, 2, 3, 'a', 1])
s
frozenset({1, 2, 3, 'a'})

与集合不同的是,不可变集合一旦创建就不可以改变。

不可变集合的一个主要应用是用来作为字典的键,例如用一个字典来记录两个城市之间的距离:

欢迎加入我的QQ群`923414804`与我一起学习,群里有我学习过程中整理的一些资料。
flight_distance = {}
city_pair = frozenset(['Los Angeles', 'New York'])
flight_distance[city_pair] = 2498
flight_distance[frozenset(['Austin', 'Los Angeles'])] = 1233
flight_distance[frozenset(['Austin', 'New York'])] = 1515
flight_distance
{frozenset({'Austin', 'New York'}): 1515,
 frozenset({'Austin', 'Los Angeles'}): 1233,
 frozenset({'Los Angeles', 'New York'}): 2498}

由于集合不分顺序,所以不同顺序不会影响查阅结果:

flight_distance[frozenset(['New York','Austin'])]
1515
flight_distance[frozenset(['Austin','New York'])]
1515

相关文章

  • Python 赋值机制

  • python赋值机制

    [1, 100, 3]改变变量x的值,变量y的值也随着改变,这与Python内部的赋值机制有关。 简单机制 先来看...

  • python赋值机制

    对应于元组(tuple)与列表(list)的关系,对于集合(set),Python提供了一种叫做不可变集合(fro...

  • python的赋值机制

    python的一切是对象 不只是变量是对象,python的一切都是对象 这个代码会做三件事情 1,生成一个int对...

  • 2018-09-14day20-内存管理机制

    掌握:1.数字、字符串、布尔的缓存2.垃圾回收机制中的引用计数机制 1.python中变量的赋值 python中所...

  • 2018-09-14 Day20-内存管理机制

    一、python中变量的赋值 掌握:(1)、数字、字符串、布尔值的缓存(2)、垃圾回收机制中的引用计数机制 pyt...

  • 对于新手来说,Python 中有哪些难以理解的概念?

    老手都是从新手一路过来的,提起Python中难以理解的概念,可能很多人对于Python变量赋值的机制有些疑惑,不过...

  • Python 防止变量被隐式改变

    相关知识 Python 的变量类型 Python 的赋值机制 同级变量隐式改变 当两个变量指向同一个可变实例时,一...

  • Python变量和数据类型

    一. Python中的变量赋值 单变量赋值: 多变量赋值: 二. Python中的数据类型 Python有五个...

  • python-List

    python赋初值 python 全部清零 python赋值是引用赋值,无引用就回收python与Java一样,不...

网友评论

    本文标题:python赋值机制

    本文链接:https://www.haomeiwen.com/subject/sxgddqtx.html