Python: 将值添加到字典中的列表中
Python: Add value into list inside dictionary
正在尝试从名为 dow
的变量中将值添加到 weekdays:[0]
。
create_data = {"startDateTime":"2015-02-23T09:05:00-0600","endDateTime":"2015-02-23T10:05:00-0600","accessories":[],"customAttributes":[{"attributeId":"3","attributeValue":""},{"attributeId":"5","attributeValue":"Yes"}],"description":"Placeholder Description","invitees":[],"participants":[],"recurrenceRule":[{"type":"weekly","interval":2,"weekdays":[0],"repeatTerminationDate":"2015-05-24T09:50:00-0600"}],"resourceId":"15","resources":["15"],"title":"","userId":"26","startReminder":"","endReminder":""}
我对添加到字典和列表之间感到困惑。
尝试了以下操作,但出现以下错误;
create_data['recurrenceRule']['weekdays'] = dow
下面是错误。
Traceback (most recent call last):
File "api.py", line 51, in <module>
create_data['recurrenceRule']['weekdays'] = dow
TypeError: list indices must be integers, not str
如何访问该值?
因为 create_data['recurrenceRule']
的值是列表,列表包含字典作为项目。所以我们必须从列表中获取项目,即字典并在其中添加 weekdays
键。
create_data['recurrenceRule'][0]['weekdays'] = dow
create_data
是一个字典,recurrenceRule
是它的键之一。然后,它的值是一个列表:
>>> create_data['recurrenceRule']
[{'repeatTerminationDate': '2015-05-24T09:50:00-0600', 'interval': 2, 'type': 'weekly', 'weekdays': 2}]
因此,要更改 weekdays
,您首先必须访问列表中的第一个元素:
create_data['recurrenceRule'][0]['weekdays']=dow
^^^
这就是您收到此错误的原因:
create_data['recurrenceRule']['weekdays']
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: list indices must be integers, not str
因为您正试图访问带有字符串的列表的索引 (0, 1, 2...)。
正在尝试从名为 dow
的变量中将值添加到 weekdays:[0]
。
create_data = {"startDateTime":"2015-02-23T09:05:00-0600","endDateTime":"2015-02-23T10:05:00-0600","accessories":[],"customAttributes":[{"attributeId":"3","attributeValue":""},{"attributeId":"5","attributeValue":"Yes"}],"description":"Placeholder Description","invitees":[],"participants":[],"recurrenceRule":[{"type":"weekly","interval":2,"weekdays":[0],"repeatTerminationDate":"2015-05-24T09:50:00-0600"}],"resourceId":"15","resources":["15"],"title":"","userId":"26","startReminder":"","endReminder":""}
我对添加到字典和列表之间感到困惑。
尝试了以下操作,但出现以下错误;
create_data['recurrenceRule']['weekdays'] = dow
下面是错误。
Traceback (most recent call last):
File "api.py", line 51, in <module>
create_data['recurrenceRule']['weekdays'] = dow
TypeError: list indices must be integers, not str
如何访问该值?
因为 create_data['recurrenceRule']
的值是列表,列表包含字典作为项目。所以我们必须从列表中获取项目,即字典并在其中添加 weekdays
键。
create_data['recurrenceRule'][0]['weekdays'] = dow
create_data
是一个字典,recurrenceRule
是它的键之一。然后,它的值是一个列表:
>>> create_data['recurrenceRule']
[{'repeatTerminationDate': '2015-05-24T09:50:00-0600', 'interval': 2, 'type': 'weekly', 'weekdays': 2}]
因此,要更改 weekdays
,您首先必须访问列表中的第一个元素:
create_data['recurrenceRule'][0]['weekdays']=dow
^^^
这就是您收到此错误的原因:
create_data['recurrenceRule']['weekdays']
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: list indices must be integers, not str
因为您正试图访问带有字符串的列表的索引 (0, 1, 2...)。