Может кто-нибудь, пожалуйста, помогите мне с этой проблемой, Когда я вызываю эту функцию, она меняет значение на S[f'{colors[0]}']:

def count_bycolor(colors):
    countries_bycolor = S[f'{colors[0]}']
    for i in range(1, len(colors)):
        countries_bycolor.extend(S[f'{colors[i]}'])
    return countries_bycolor

Спасибо за помощь и счастливых праздников!

-4
Anas BELFADIL 20 Дек 2019 в 16:36

1 ответ

Если вы хотите вернуть измененную копию списка countries_by_color вместо изменения исходной записи в dict S, просто сначала создайте копию:

def count_bycolor(colors):
    countries_bycolor = S[f'{colors[0]}'][:]
    for i in range(1, len(colors)):
        countries_bycolor.extend(S[f'{colors[i]}'])
    return countries_bycolor
0
Seb 20 Дек 2019 в 13:42