Как заполнить новый список элементами другого списка - PullRequest
0 голосов
/ 03 июня 2019

Я хочу заполнить пустой список, я не знаю, как точно сказать, что вы хотите, я хочу сделать, я думаю, вы можете понять, если я предоставлю некоторый код.

Итак, у меня есть этот список, это список целых чисел.

sIDs = list(opl.keys())

Я хочу создать новый список и заполнить его следующим образом.

region = form.cleaned_data["region"]
for x in sIDs:

   sid = x
   url = "https://" + region + ".api.riotgames.com/lol/summoner/v4/summoners/" + sid + "?api_key=" + api_key
response = requests.get(url).json()
pid = response["profileIconId"]
newlist[i] = pid

Как мне это сделать?

Ответы [ 2 ]

1 голос
/ 03 июня 2019

Сначала вам нужно написать строку для создания списка newlist, что-то вроде: newlist = [], который даст вам пустой список

Затем вы захотите заполнить новый список каждым элементом, созданным в исходном списке, чтобы вы могли отредактировать свой код следующим образом:

sid = list(opl.keys())
# Declaring a blank new list
newlist = []
region = form.cleaned_data["region"]
for x in sid:
# Fix an issue where you were constructing a url with the sid array and not the element x
    url = "https://" + region + ".api.riotgames.com/lol/summoner/v4/summoners/" + x + "?api_key=" + api_key
    # Move these inside so they are created for every item inside of the sid list
    response = requests.get(url).json()
    pid = response["profileIconId"]
    # add that pid to your new list
    newlist.append(pid)

В этом объяснении есть комментарии.

1 голос
/ 03 июня 2019

Вы должны просто иметь возможность инициализировать свой список с помощью newlist = [], а затем использовать newlist.append(pid).

Если вы заранее знаете, сколько элементов нужно сохранить в newlist, используйте вместо этого newlist = [0] * n (при этом n - количество элементов для хранения). Затем вы можете вызвать свой список с помощью newlist[i] в цикле for.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...