python中的花括号和方括号有什么区别?
A ={1,2}
B =[1,2]
当我在终端上打印时A
,它们没有任何区别。B
这是真的吗?
有时,我注意到一些代码使用{}
并[]
初始化不同的变量。
例如A=[]
,B={}
有什么区别吗?
python中的花括号和方括号有什么区别?
A ={1,2}
B =[1,2]
当我在终端上打印时A
,它们没有任何区别。B
这是真的吗?
有时,我注意到一些代码使用{}
并[]
初始化不同的变量。
例如A=[]
,B={}
有什么区别吗?
它们被称为文字;一组文字:
aset = {'foo', 'bar'}
或字典文字:
adict = {'foo': 42, 'bar': 81}
empty_dict = {}
或列表文字:
alist = ['foo', 'bar', 'bar']
empty_list = []
要创建一个空集,您只能使用set()
.
集合是独特元素的集合,您不能对它们进行排序。列表是元素的有序序列,值可以重复。字典将键映射到值,键必须是唯一的。集合和字典键也必须满足其他限制,以便 Python 实际上可以有效地跟踪它们并知道它们是并且将保持唯一。
还有tuple
type,对 1 个或多个元素使用逗号,括号在许多情况下是可选的:
atuple = ('foo', 'bar')
another_tuple = 'spam',
empty_tuple = ()
WARNING_not_a_tuple = ('eggs')
注意定义中的逗号another_tuple
;是那个逗号使它成为a tuple
,而不是括号。WARNING_not_a_tuple
不是元组,它没有逗号。没有括号,你剩下的只是一个字符串。
有关详细信息,请参阅 Python 教程的数据结构章节;列表在介绍章节中介绍。
诸如此类的容器的文字也称为显示,并且语法允许基于循环的程序创建内容,称为理解。
他们创造了不同的类型。
>>> type({})
<type 'dict'>
>>> type([])
<type 'list'>
>>> type({1, 2})
<type 'set'>
>>> type({1: 2})
<type 'dict'>
>>> type([1, 2])
<type 'list'>
这两个支架用于不同的目的。如果您只想让列表包含一些元素并按索引号(从 0 开始)组织它们,只需[]
根据需要使用和添加元素。{}
特殊之处在于您可以将自定义 id 赋予诸如a = {"John": 14}
. 现在,您无需列出年龄列表并记住谁的年龄在哪里,您可以通过 访问 John 的年龄a["John"]
。
这[]
称为列表,{}
称为字典(在 Python 中)。字典基本上是一种方便的列表形式,它允许您以更简单的方式访问数据。
但是,字典有一个问题。很多时候,您放入字典中的数据不会保持与以前相同的顺序。因此,当您逐个检查每个值时,它不会按照您期望的顺序排列。有一个特殊的字典可以解决这个问题,但你必须添加这一行from collections import OrderedDict
并替换{}
为OrderedDict()
. 但是,我认为你现在不需要担心这个。