1
def __init__(self, specfile, listfile):
    self.spec=AssignmentSpec(specfile)
    self.submissions={}

我不明白这是什么意思,请帮忙,{}里面什么都没有??

4

3 回答 3

6

它是定义字典的字面方式。在这种情况下,它是一个空字典。它与self.submissions = dict()

>>> i = {}
>>> z = {'key': 42}
>>> q = dict()
>>> i == q
True
>>> d = dict()
>>> d['key'] = 42
>>> d == z
True
于 2013-09-24T09:34:16.827 回答
5

这意味着它是一个空字典。

在蟒蛇中:

{} 表示空字典。

[] 表示空列表。

() 表示空元组。

样本:

print type({}), type([]), type(())

输出

<type 'dict'> <type 'list'> <type 'tuple'>

编辑:

正如 Paco 在评论中指出的那样,(1)将被视为用括号括起来的数字。要创建一个只有一个元素的元组,最后必须包含一个逗号,就像这样,(1,)

print type({}), type([]), type((1)), type((1,))
<type 'dict'> <type 'list'> <type 'int'> <type 'tuple'>
于 2013-09-24T09:34:14.543 回答
0

它定义了一个 dict 类型的对象。如果您来自 C#/Java 背景,则与以下内容相同:

IDictionary<xxx> myDict = new Dictionary();

或者

Map<xxx, yyy> myMap = new HashMap<xxx, yyy> ();

或在 C++ 中(松散地,因为 map 主要是一棵树):

map<xxx, yyy> myMap;

xxx 和 yyy 因为 python 是无类型语言。

于 2013-09-24T09:40:59.873 回答