Ответы Mail.ru: Егэ 27 задание, Пайтон

При выводе списка l1 получается список нулей, потому что вы инициализировали его с помощью следующей строки кода:

 l1 = [0] * 1000000 
 

Эта строка кода создает список из миллиона нулей. В цикле вы заменяете некоторые из этих нулей на другие значения, но остальные элементы списка остаются равными нулю. Поэтому, когда вы печатаете список l1, вы видите список нулей.

Если вы хотите, чтобы список l1 содержал только те значения, которые вы присваиваете в цикле, вы можете использовать словарь вместо списка. Например, вы можете заменить строку кода, которая создает список l1, на следующую строку кода:

 l1 = {} 
 

Затем вы можете заменить строку кода, которая присваивает значения в списке l1, на следующую строку кода:

 l1[a] = b 
 

Эта строка кода добавляет элемент в словарь l1 с ключом a и значением b. Когда вы печатаете словарь l1, вы увидите только те элементы, которые вы присваиваете в цикле.