Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
37 / 31 / 13
Регистрация: 08.12.2012
Сообщений: 815

Вставить число в начало и конец каждого вложенного списка

23.02.2025, 17:43. Показов 1666. Ответов 4

Студворк — интернет-сервис помощи студентам
дается вложенный список и число n которое нужно вставить
в начало и конец, каждого вложенного списка
Python
1
2
3
4
5
6
values = [
    [1, 2, 3],
    [4, 5],
    [6, 7, 8, 9]
]
n = 0
почему, обе эти формулы, выводят неправильный результат,
мы проходим в цикле по каждому вложенному списку только один раз
а количество нулей добавляется в каждый подсписок в 3 раза больше
и id у все подсписков разное
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
что так
 
for i in range(len(values)):
    values = [[n]+values[i]+[n] for i in range(len(values))]
print(values)
 
что так
for i in values:
    values = [[n]+i+[n] for i in range(len(values))]
print(values)
 
вывод один
[[0, 0, 0, 1, 2, 3, 0, 0, 0], [0, 0, 0, 4, 5, 0, 0, 0], [0, 0, 0, 6, 7, 8, 9, 0, 0, 0]]
я понимаю как написать правильный код, мне нужен ответ на вопрос
почему в этих 2х кодах , вывод в 3 раза больше, ибо сам я логики не понимаю

Добавлено через 19 минут
Цитата Сообщение от ujif Посмотреть сообщение
for i in values:
    values = [[n]+i+[n] for i in range(len(values))]
print(values)
тут я неверно написал код
верно вот так для второго кода
Python
1
2
3
for i in values:
    values = [[n]+i+[n] for i in values)]
print(values)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
23.02.2025, 17:43
Ответы с готовыми решениями:

Четные числа в начало списка, нечетные - в конец
Четные числа в начало списка, нечетные - в конец. Задача: Вводятся целые числа. Необходимо четные добавлять в начало списка, а...

Вставить новый элемент в начало и в конец списка
Помогите пожалуйста написать написать программки: II. Вставить новый элемент в начало и в конец списка. Заранее спасибо

Удалить из списка элемент перед каждым элементом со значением -2. Вставить число 33 в конец списка
Создать линейный однонаправленный список из вещественных чисел. Удалить из списка элемент перед каждым элементом со значением -2. ...

4
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
23.02.2025, 18:44
ujif,
Python
1
2
3
4
5
6
7
8
values = [[1, 2, 3], [4, 5], [6, 7, 8, 9]]
n = 0
 
for i in values:
    i.insert(0, n)
    i.append(n)
 
print(values)
Code
1
[[0, 1, 2, 3, 0], [0, 4, 5, 0], [0, 6, 7, 8, 9, 0]]
3
37 / 31 / 13
Регистрация: 08.12.2012
Сообщений: 815
23.02.2025, 19:57  [ТС]
Цитата Сообщение от anton78spb Посмотреть сообщение
[[0, 1, 2, 3, 0], [0, 4, 5, 0], [0, 6, 7, 8, 9, 0]]
спасибо, я про это уже написал, я знаю что можно и этот код написать , меня не интересует
верный код, меня интересует ответ на вопрос, почему в представленных мной кодах,
ввод числа n происходит 3 раза вместо одного, При чем, просмотреть подробно , ни в pycharm
ни в другом интерпретаторе невозможно, когда отрабатывает выражение [n] + i + [n]
то n с обоих сторон, присваивается сразу всем подспискам в списке. Если подсписков 3,
то и n будет присвоено каждому подсписку 3 раза, если подсписков 10 , то и n будет
присвоено тоже 10 раз, я именно об этом

Добавлено через 56 минут
простите , затупил
вместо этого
Python
1
values = [[n]+i+[n] for i in values]
забабахал цикл
Python
1
2
for i in values:
    values = [[n]+i+[n] for i in values]
и сижу возмущаюсь, как это там в питоне все нелогично сделано
смех конечно пробрал, за такую тупость, но, видимо , иногда, не без такого
0
 Аватар для Semen-Semenich
5224 / 3471 / 1173
Регистрация: 21.03.2016
Сообщений: 8,299
24.02.2025, 18:50
Python
1
2
for i in range(len(values)):
    values = [[n]+values[i]+[n] for i in range(len(values))]
тут ты len раз выполняешь вставку вот тебе и лишние цифры. если один раз то все ок
Python
1
values = [[n]+values[i]+[n] for i in range(len(values))]
1
37 / 31 / 13
Регистрация: 08.12.2012
Сообщений: 815
24.02.2025, 23:45  [ТС]
Цитата Сообщение от Semen-Semenich Посмотреть сообщение
тут ты len раз выполняешь вставку
та я уже понял Семен Семеныч, о том и написал, бывает, циклит на простом
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.02.2025, 23:45
Помогаю со студенческими работами здесь

Переход начало и конец вывода строк:каким образом переходить по экрану на начало и конец списка строк?
Разработать процедуры "TOP" установки окна на начало файла и процедуры “BOT” установки на конец файла для заданного текстового файла....

Создание списка, печать списка на экран, добавления элемента в начало списка, конец списка
Построить динамическую структуру типа список . Необходимо реализовать следующие процедуры: 1. создание списка. 2. печать списка на...

Найти минимальный и максимальный элементы списка и переставить в начало и конец списка
Есть список, найти минимальный и максимальный элементы и переставить их вхождения соответственно в начало и конец списка. Минимальные - в...

Разработать класс Итератор, методы которого: переход в начало списка, в конец, к текущему элементу списка, к с
Разработать класс Итератор, методы которого: переход в начало списка, в конец, к текущему элементу списка, к следующему элементу, к...

Работа с деками. Найти среднее арифметическое списка, добавить его в качестве нового элемента в начало и конец списка
D - список действительных чисел. Найти среднее арифметическое списка, добавить его в качестве нового элемента в начало и конец списка. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru