gpt4 book ai didi

Python - 如何仅使用变量使用 dict() 函数?

转载 作者:行者123 更新时间:2023-12-01 22:47:39 24 4
gpt4 key购买 nike

我有一个名为“dict_str”的变量,如下所示:“a = 15,a2 = 19”(它会持续数千个输入)。如果我尝试使用 dict() 函数:

dict(dict_str) 

它给了我这个错误:

ValueError: dictionary update sequence element #0 has length 1; 2 is required

但是如果我这样做:

 dict(a = 15, a2 = 19)

效果很好。所以我想知道是否有办法让它与 dict_str 变量一起使用

最佳答案

这是一种解决方法。

items = [item.split('=') for item in dict_str.split(', ')]

my_dict = {}
for key, value in items:
my_dict[key.strip()] = int(value.strip())

print(my_dict)

如果您更喜欢dict comprehension您可以使用以下方法

items = [item.split('=') for item in dict_str.split(', ')]
my_dict = {key.strip(): int(value.strip()) for key, value in items}
print(my_dict)

{'a': 15, 'a2': 19}

您甚至可以使用 regex取决于您的用例。

示例:

import re

regex = re.compile(r'(\w+) *= *(\d+)')
items = regex.findall(dict_str)
my_dict = {key: int(value) for key, value in items}

print(my_dict)

这个正则表达式应该产生相同的输出。

关于Python - 如何仅使用变量使用 dict() 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74969518/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com