Python 将字符串赋值给字典后转成元组

标签 python

我有一个非常奇怪的python问题。我已经问过几位同事,他们都不知道这是怎么发生的以及如何解决的。

我有一个从 API 调用中收到的字符串的浅字典,我想将其中一些值分配给一个新的字典。

这就是第一个 dict 的样子。只是一堆字符串:
This is what the first dict looks like. Just a bunch of strings

我将 dict1 中的一些值分配给 dict2 中的一些键。非常基础

    dict2={}
    dict2['access_key'] = dict1['access_key']
    dict2['secret_access_key'] = dict1['secret_access_key'],
    dict2['session_token'] =dict1['session_token'],
    dict2['region'] = dict1['region']

然后发生这种情况。 “ secret 访问 key ”和“session_token”的值被转换成元组。 “access_key”和“region”仍然是字符串
Then this happens. The values for "secret access key" and "session_token" are turned into tuples. "access_key" and "region" remain strings

我已经尝试将值初始化为字符串,访问元组的第一个条目并将值转换为字符串。所有这一切都没有改变任何事情。似乎该值被分配得很好,然后发生了一些奇怪的事情,将它变成了一个元组

这是我的解释器设置的屏幕截图。我正在使用 Python 3.6
This is a screenshot of my Interpreter settings. I am using Pyython 3.6

我真的为这个疯狂:-/任何帮助将不胜感激

最佳答案

在两次调用的末尾有尾随逗号。这就是字符串被转换为元组的原因。

关于Python 将字符串赋值给字典后转成元组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53369885/

相关文章:

Python - 从数据框中提取信息 (JSON)

python - 如果特定键与查询匹配,如何获取所有键/值?

python - 使用 Dash-Cytoscape 更改单个节点大小

python - 获取二元概率(python)

python - 浮点除法的一致性

python - numpy 数组的切片可以是另一个数组的 View 吗?

python - 为什么声明顺序对于模块中带注释的全局变量很重要?

python - 寻找物体中心: showing wrong coordinate outside of the target object

python - PyAudio 不会安装

python - 一旦我回复了回复,该功能就不会继续。有没有办法可以返回一个值然后继续?