访问列表中的字符串并组合成字典

时间:2019-07-30 18:16:50

标签: python-3.x

我想访问列表中的字符串

my_list=['12:00','12:30','13:00','13:30','15:00','15:30']

我尝试了以下代码,但是得到的答案是1和1。

for i,my_list in enumerate(my_list):
    my_list_start=my_list[i]
    my_list_end=my_list[i+1]

预期结果是: 我必须结合列表中的两个值。例如, 我的输出应如下所示:

[{"start":12:00,'end':12:30},{'start':12:30,'end':13:00},
 {'start':13:00,'end':13:30},{'start':15:00,'end':15:30'}]

1 个答案:

答案 0 :(得分:1)

for i,my_list in enumerate(my_list): #my_list is refering the the string at i not my_list
    my_list_start=my_list[i]
    my_list_end=my_list[i+1]

您不能重新定义要遍历的列表,否则会引起奇怪的问题。在这种情况下,它被重新定义为字符串,并且正在访问其中的第一个数字。

执行此操作:

for i,item in enumerate(my_list): # notice ``ITEM`` instead of my_list (we don't want to rename my_list)
    my_list_start=my_list[i]
    my_list_end=my_list[i+1]

或者甚至不用担心枚举:

for idx in range(my_list):
    my_list_start= my_list[idx]
    my_list_end=my_list[idx+1]

然后我假设您将其放入其他地方的字典中,因为您实际上没有任何逻辑可以这样做。