首页 > 解决方案 > Python初学者问题:从字典中删除重复的应用程序 - 错误:列表索引超出范围

问题描述

我想从我的字典中删除重复的条目并将它们 - 如果唯一的话 - 放入另一个“已添加”列表中。但是发生了这个错误。有人能帮我吗?谢谢,尼古拉斯

android_clean = [] 
already_added = []
for app in android:
    name = app[0]
    n_reviews = float(app[3])
    
    if (reviews_max[name] == n_reviews) and (name not in already_added):
        android_clean.append(app)
        already_added.append(name)

explore_data(android_clean,0,3,True)

错误描述:

Number of rows: 0

IndexErrorTraceback (most recent call last)
<ipython-input-21-8a2f24b7862c> in <module>()
----> 1 explore_data(android_clean,0,3,True)

<ipython-input-11-403f879c8933> in explore_data(dataset, start, end, rows_and_columns)
      7     if rows_and_columns:
      8         print('Number of rows:', len(dataset))
----> 9         print('Number of columns:', len(dataset[0]))
     10 
     11 print(android_header)

IndexError: list index out of range

标签: pythondictionaryindexingappend

解决方案


@MenyIssakov:在上面的代码行中定义了“android”:

android_clean = [] 
already_added = []

for app in android:
    name = app[0]
    n_reviews = float(app[3])
    
    if (reviews_max[name] == n_reviews) and (name not in already_added):
        android_clean.append(app)
        already_added.append(name)
        
explore_data(android_clean,0,3,True)

推荐阅读