在Python中的字典索引?

12 浏览
0 Comments

在Python中的字典索引?

我有一个按照以下格式排列的字典:

Key(字符串):Value(列表[字符串])

my_dict = {'Foo': ['Lorem', 'Ipsum', 'Dolor', 'Baz'], 'Bar': ['Amet', 'Consectetur'], 'Baz': ['...'], 'Lorem': ['...'], 等等...}

我想通过索引每个键来访问这个字典,例如Foo = 1,Bar = 2,Baz = 3,Lorem = 4,Ipsum = 5,依此类推。

我想通过索引选择一个键,然后选择一个值,并转到该索引,依此类推。

例如:如果我选择1,我将进入Foo。然后从Foo,我将进入Lorem、Ipsum、Dolor或Baz。

实质上,我正在创建另一个字典dict2,它将将一些整数作为新键,将dict1中的键作为其值。

首先,我尝试调用dict2.update({int_list:dict1.keys()),但结果出现了一个不可哈希类型错误。好吧,所以我将列表转换为元组,它更新了,但没有得到我想要的字典。

有什么适当的方法可以做到这一点?

0
0 Comments

在Python中,有时候我们需要对字典进行索引操作。然而,有些情况下我们可能需要将字典中的所有键值对进行遍历,并将其中的值添加到另一个列表中。下面是一段代码示例:

my_dict = {'Foo': ['Lorem', 'Ipsum', 'Dolor', 'Baz'],

'Bar': ['Amet', 'Consectetur']}

key_list = list()

dic = dict()

total = list()

for key, groups in my_dict.items():

joined_list = my_dict['Foo'] + my_dict['Bar']

print(f'{key}: {groups}')

key_list.append(key)

dic[key] = key.count(key)

s = key_list.index(key) + 1

dic[key] = s

for index, value in enumerate(joined_list):

total.append(index)

dic[value] = index + 1 + s

print(dic)

需要注意的是,对于在循环中表示为实际键(my_dict['Foo']和my_dict['Bar'])的键,可以使用dict.keys()来获取每个键。

在这段代码中,我们首先将字典的键值对通过my_dict.items()遍历出来。然后,我们将my_dict['Foo']和my_dict['Bar']的值合并到一个新的列表joined_list中。接着,我们通过循环将键添加到key_list中,并使用count()函数获取键的数量并存储在字典dic中。此外,我们还使用index()函数获取键在key_list中的索引,并将其存储在字典dic中。然后,我们使用enumerate()函数遍历joined_list中的值,并将索引加上s后存储在字典dic中。

最后,我们输出字典dic的内容。

通过上述代码,我们可以实现对字典的索引操作,并将所需的值添加到另一个列表中。

0
0 Comments

在上述代码中,出现了一个问题:如何在Python中对字典进行索引。具体来说,我们想要为字典的每个键值对分配一个唯一的索引值。

为了解决这个问题,我们可以使用全局变量来定义一个索引变量,并使用Python 3.8引入的海象运算符来对其进行自增操作。海象运算符允许我们在表达式中同时进行赋值和比较操作。

在上述代码中,我们首先定义了一个全局索引变量i,并将其初始化为0。然后,我们使用字典推导式来创建一个新的字典d。在推导式中,我们使用海象运算符来自增索引变量,并将其作为新字典的键,而原始字典my_dict的值作为新字典的值。

通过这种方式,我们可以获得一个新的字典d,其中每个键值对都有一个唯一的索引值。如果我们希望索引从1开始,我们可以将全局索引变量初始化为-1。

总结起来,要在Python中对字典进行索引,我们可以使用全局变量和海象运算符来实现。首先定义一个全局索引变量,并使用海象运算符在字典推导式中自增它,从而为每个键值对分配一个唯一的索引值。这样,我们可以轻松地对字典进行索引操作。

0
0 Comments

在Python中,字典是一种常用的数据结构,它由键值对(key-value pairs)组成。我们可以通过键来访问字典中的值。然而,有时候我们需要通过索引来访问字典中的值,这就涉及到了字典索引(dictionary indexing)。

一种常见的字典索引方法是使用enumerate()函数将每个索引与键配对,然后将其转换为字典。具体操作是先使用enumerate()函数遍历字典my_dict,并将每个键与其对应的索引配对,索引从1开始计数。然后,将配对结果转换为字典dict2

这种方法的一个缺点是,如果需要保持dict2my_dict的同步更新,会非常低效。因此,这种方法的出现可能是因为需要在两个字典之间保持一致性。

然而,有人提出了一个疑问:为什么需要第二个索引?这个问题的原因尚不清楚,但可以猜测可能是为了某种特定的需求。

总结一下,字典索引在Python中是一种常见的操作方式。通过使用enumerate()函数和字典转换,可以将索引与键配对并转换为字典。然而,如果需要保持与原字典的同步更新,这种方法可能效率较低。对于为何需要第二个索引的问题,目前尚无明确答案。

0