Я пытаюсь создать ссылки на основе количества элементов из списка. У меня есть столбец, содержащий множество идентификаторов доставки. Я скопировал этот столбец в список id_list.
Далее я создал строку str2 из этого списка и присоединился к ней двумя другими строками, чтобы создать ссылку. и записать его в файл.python Сплит-список динамически
Теперь я хочу разбить список на более мелкие списки, каждый из которых содержит 400 элементов. И для создания отдельной ссылки для каждого под-списка. Но я не могу разбить этот список. Как это сделать?
ПРИМЕЧАНИЕ. Количество элементов в id_list изменяется ежедневно, поэтому мне нужно динамически создавать ссылки на основе количества элементов.
Мой код:
conn = sqlite3.connect('Unicommerce.db')
cur = conn.cursor()
temp_list = []
id_list = []
cur.execute("""Select shipment from unicom;""")
rows = cur.fetchall()
for row in rows:
temp_list.append(row)
for sublist in temp_list:
for element in sublist:
id_list.append(element)
str1 = "abc.com/oms/shipment/show/"
str2 = '-'.join([str(num) for num in id_list])
str3 = "?legacy=1"
link_str = str1 + str2 + str3
file = open("Shipment.txt","wb")
file.writelines(link_str)
file.close()
conn.commit()
conn.close()
Это может легко привести к ошибке из 'id_list [i: i + n]'. –
@ KassymDorsel вы могли бы привести пример, когда он выходит за пределы? Это понимание списка отлично работает для id_list разных размеров. – khammel
@KassymDorsel: 'id_list [i: i + n]' не может генерировать IndexError. Даже '[1,2,3] [200: 400]' просто возвращает пустой список. – DSM