29 Вложенные списки Python

Поделиться
HTML-код

Комментарии • 318

  • @user-xz4fc6fv5r
    @user-xz4fc6fv5r 4 года назад +407

    Спасибо за видео . учу питон уже месяц . благодаря вам стал ощущать себя намного тупее чем раньше )

    • @SigmaTroon
      @SigmaTroon 3 года назад +7

      Так тебе помогло видео или нет?

    • @user-xp7dx2bq4z
      @user-xp7dx2bq4z 3 года назад +4

      хаахахахахахахаха

    • @user-xz4fc6fv5r
      @user-xz4fc6fv5r 3 года назад +3

      @@SigmaTroon да , лучший канал

    • @user-ks7vk3ip6i
      @user-ks7vk3ip6i 3 года назад +2

      @@user-xz4fc6fv5r и как уже успехи в изучении ? Стал джуном ?

    • @user-xz4fc6fv5r
      @user-xz4fc6fv5r 3 года назад +11

      @@user-ks7vk3ip6i ну смотря что считать джуном , на работу еще не берут, но какйнибудь сайт или скрипт небольшой написать могу. Сейчас на джуна требования как на синьера

  • @dimaan29
    @dimaan29 4 года назад +103

    Эта тема про матрицы сложнее даже, чем функции))))

    • @m_i_r_k
      @m_i_r_k 11 месяцев назад

      А как насчёт dataframe-ов?)

  • @markjones1878
    @markjones1878 2 года назад +4

    коротко и без воды. супер. Спасибо за труд.

  • @elenalevasheva3830
    @elenalevasheva3830 Год назад +3

    Спасибо за урок, отличный материал и подача. Без суеты, без спешки и все понятно. Супер

  • @olejka6762
    @olejka6762 3 года назад +2

    Отличный видеоурок, очень хорошее объяснение. Не понимал как работать с диагональю, а теперь есть хотя бы представление. Спасибо

  • @EvgeshaFromUa
    @EvgeshaFromUa 3 года назад +3

    Большое спасибо, ваша подача + нормальное объяснение дает возможность понять что такое вложенные списки и как с ними работать! По моему мнению это видео одно из лучших для начального ознакомления со вложенностями!

  • @user-fs9gp6oz8x
    @user-fs9gp6oz8x 4 года назад +28

    Спасибо огромное! Прочитала разные объяснения на форумах про вложенные списки, но ваше самое понятное и доступное:) Рада быть спонсором вашего канала. У вас качественный контент.

    • @egoroffchannel
      @egoroffchannel  4 года назад +4

      спасибо, очень приятно)

  • @Avtoinstryktor_Yaroslav
    @Avtoinstryktor_Yaroslav Год назад +1

    спасибо за урок ! это уже какой то новый уровень! буду осваивать! Спасибо за ваши труды!

  • @natsudragnil1041
    @natsudragnil1041 Год назад +1

    очень доволен этим уроком, очень хорошо объясняете, удачи вам во всех начинаниях!

  • @user-lt9fb4qj8p
    @user-lt9fb4qj8p 2 года назад +2

    Первое просмотренное видео на канале. После 5 минут захотелось поставить лайк. Грамотное объяснение и сопровождение!

  • @jonnash1683
    @jonnash1683 Год назад +1

    Самые подробные видео из всех, что встречал на ютубе. Спасибо вам большое

  • @Mininavel
    @Mininavel 9 месяцев назад +1

    спасибо за уроки. Пересмотрела много видео про вложенные списки, поняла наконец, по вашему объяснению. Наглядно и понятно! Спасибо огромное. 2 недели изучаю, но застряла на вложенных циклах, как-то трудно было представить, а тут всеп понятно. Благодарю!

    • @Cahdro
      @Cahdro 4 месяца назад

      Такая же ситуация, застрял)) Материал очень хорошо изложен, спасибо автору.

  • @boratesor
    @boratesor Год назад +2

    Огромное спасибо вам за ваши уроки! Благодаря вам я начал понимать в языке и теперь занимаюсь по вашим видео

  • @user-vm2mu9ri2d
    @user-vm2mu9ri2d 4 года назад +29

    Артем, СПАСИБО огроменное за проделанную работу! Только благодаря Вашим доходчивым словам Пайтон дается легко и просто :)

    • @standvik1159
      @standvik1159 4 года назад +2

      нет

    • @youtubecrowd8104
      @youtubecrowd8104 Год назад +2

      Ну не легко, но намного проще чем могло бы быть

  • @vika-sole
    @vika-sole Год назад

    Все супер объяснили!! Огромная благодарность!

  • @user-xy2jm7zt5u
    @user-xy2jm7zt5u Год назад

    13:35 заполнение вложенного списка с клавиатуры.
    Используется дополнительный временный список, для хранения элементов одной строки. А потом за один раз всю эту строку добавляем в основной список.
    Очень понятно видео, спасибо.

  • @user-zy4nt8pm1z
    @user-zy4nt8pm1z Год назад +1

    Бро ты лучшее всех!!! Такому материала не ожидать. Молодец

  • @user-rf9ju9li5t
    @user-rf9ju9li5t 2 года назад

    Спасибо все очень понятно. Усвоил то что до этого не мог понять!
    Лайк поставил! И подписался.

  • @ilyalitvinenko
    @ilyalitvinenko 4 года назад +12

    Артем, большое спасибо за твой труд.
    Отличная подача материала. 5+

  • @FedoskinYuriy
    @FedoskinYuriy 2 года назад

    Спасибо большое! Очень доходчиво и понятно!

  • @kravets2404
    @kravets2404 3 года назад +1

    Спасибо. Полезный материал

  • @Dmitrii-Zhinzhilov
    @Dmitrii-Zhinzhilov Год назад

    Артём, благодарю! 👍 🔥🔥🔥

  • @user-jc3nt8jy3c
    @user-jc3nt8jy3c 2 года назад

    Хорошее оъьяснение, но с первого раза мало что понял.Только начало.,Будем смотреть еще и еще раз!

  • @user-ok2vw2rf4u
    @user-ok2vw2rf4u Год назад

    Огромное спасибо за этот урок

  • @user-ch1ny3xx7p
    @user-ch1ny3xx7p 4 года назад +45

    Благодаря тебе я выучил питон и теперь легко даются другие языки. Спасибо за это огромное

    • @barbi8271
      @barbi8271 3 года назад +1

      Здравствуйте. За сколько вы выучили?

    • @user-ch1ny3xx7p
      @user-ch1ny3xx7p 3 года назад +4

      @@barbi8271 за год не постоянных тренировок в этой сфере

    • @barbi8271
      @barbi8271 3 года назад +1

      @@user-ch1ny3xx7p я уже все. Ничего не хочу

    • @yatanai5685
      @yatanai5685 2 года назад +8

      @@barbi8271 Не сдавайся! Мы тупенькие, но упорные! В этом нужно просто постоянно вариться!

    • @ohkennyyyy
      @ohkennyyyy 2 года назад +3

      @@barbi8271 Не повторяй моих ошибок.Лучше не забрасыв учёбу

  • @user-ec7zd9tb3h
    @user-ec7zd9tb3h Месяц назад

    Огромное спасибо!!!

  • @romankondratyev4080
    @romankondratyev4080 11 месяцев назад

    Очень круто!

  • @obsi1019
    @obsi1019 Год назад

    ТОПОВЫЙ КУРС!

  • @Huskyserge
    @Huskyserge 2 года назад +1

    спасибо за лекцию, жаль выбрал не ваш курс на степике!

  • @felipe3910
    @felipe3910 3 года назад +1

    Спасибо!

  • @user-np6gi2ls5o
    @user-np6gi2ls5o Год назад +1

    После этой темы уже можно сделать небольшую игру или первую настоящую программу )))))Большое спасибо

  • @jenyshirokovaa
    @jenyshirokovaa 3 года назад +3

    Спасибо огромное!Все просто и понятно👏

  • @ananasanimator6049
    @ananasanimator6049 Год назад +2

    Транспонирование 1:
    a = []
    b = []
    n = int(input('n: '))
    for i in range(n):
    a.append(list(map(int, input(' ').split())))
    for i in range(n):
    b.append([0]*n)
    for i in range(n):
    for j in range(n):
    b[j][i] = a[i][j]
    for i in b:
    print(i)

  • @bashirkamilov1110
    @bashirkamilov1110 2 года назад

    Спасибо вам,не такая сложная тема,главное не вставать пока не поймёшь

  • @vanyavasya6685
    @vanyavasya6685 4 года назад +4

    всё очень понятно, спасибо за уроки

  • @adikosh667
    @adikosh667 2 года назад

    мужик, ты лучший, лучше обьясняешь чем наш препод в универе

  • @aidartimerbayev9600
    @aidartimerbayev9600 4 года назад +2

    Большое спасибо! Нашел много интересного и полезного для себя.

  • @beecont9187
    @beecont9187 3 года назад +1

    Большое спасибо я на конец то понял эту тему

  • @user-eh2kl3er1v
    @user-eh2kl3er1v 5 лет назад +3

    спасибо за видео, жду продолжения

  • @user-bj1zw2cj7u
    @user-bj1zw2cj7u Год назад

    Спасибо.

  • @nikeopg
    @nikeopg Год назад

    лайк! очень годно :)

  • @user-qg6ro9dk9g
    @user-qg6ro9dk9g 11 месяцев назад

    Thank you

  • @galinaoliver5624
    @galinaoliver5624 Год назад

    спасибо спасибо спасибо!

  • @user-jd5ck6gn3v
    @user-jd5ck6gn3v 4 года назад

    Как же это сцуко элегантно!!!

  • @dimaan29
    @dimaan29 4 года назад

    Нет ни слова про определитель матрицы. Хорошо, что есть Numpy)))

  • @user-ft9sd1gj4g
    @user-ft9sd1gj4g 2 года назад

    Cпасибо

  • @ilianrosstmstudios7767
    @ilianrosstmstudios7767 4 года назад +1

    гайсы, я тут немного экспериментировал во время видео, и обнаружил что если вместо новой инициализации списка b = [ ] в цикле применить b.clear() то результат будет совершенно иной. Это взорвало мне мозг! Короче получается что после clear() конечный список 'a' хранит в себе сука ссылки на ту же память что и 'b', просто вывод дважды один и тот же список! это значит что если менять содержимое 'b' то и содержимое 'a' меняется. НО! Если применить инициализацию b = [ ] то все работает как надо, и в конечном списке 'a' будут копии данных из 'b' каждой итерации внутреннего цикла!
    a = [ ]
    b = [ ]
    l = int(input()) # line
    c = int(input()) # column
    for i in range(l):
    b.clear()
    < ---- дело все в этом. у автора тут b = [ ]
    for j in range(c):
    b.append(int(input()))
    a.append(b)
    for i in a:
    print(i)
    Входные данные:
    2
    2
    3
    4
    6
    7
    Результат:
    [6, 7] # это текущее состояние b
    [6, 7] # выходит что а просто ссылается на ту же память
    применение clear()
    >>> a = []
    >>> b = []
    >>> a = [1, 1, 1, 1]
    >>> b
    []
    >>> a
    [1, 1, 1, 1]
    >>> b.append(a)
    >>> b
    [[1, 1, 1, 1]]
    >>> a.clear()
    # воздействуем на a
    >>> b
    [[]]
    # и b изменился тоже! т.е. b ссылается на ту же память что и а
    >>> a
    []
    >>>
    >>>
    применение инициализации
    >>>
    >>> a = []
    >>> b = []
    >>> a = [1, 1, 1, 1]
    >>> b.append(a)
    >>> b
    [[1, 1, 1, 1]]
    >>> a
    [1, 1, 1, 1]
    >>> a = []
    # а вот после такого воздействия на а, дающего такой же результат что и a.clear()
    >>> a

    []
    >>> b
    # для b выделяется свою память и b не реагирует на изменения в а
    [[1, 1, 1, 1]]

    >>>

  • @vadiculus5892
    @vadiculus5892 3 года назад +2

    Спасибо бро ну тема очень тяжелая

  • @davyedigaryan7610
    @davyedigaryan7610 3 года назад +1

    Спасибо за помащ

  • @faritech3892
    @faritech3892 4 года назад +2

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

  • @user-jx2ko6ir7h
    @user-jx2ko6ir7h 4 года назад

    Большое спасибо!очень доходчиво и просто

  • @KV1NZ11
    @KV1NZ11 Год назад

    Спасибо за материал. Очень подробно и понятно! Автор молодчина. Только почему в конце матрица не сработала, когда число строк стало 5?. Первая цифра 3 (индекс 0,0), а должна быть 10(а она с индексом 0,1 уже получается). Или я что то не понял?

    • @user-et5ko4vw3z
      @user-et5ko4vw3z Год назад

      Все правильно, первая 10, просто быстро листает

  • @user-xk9bf6uu2p
    @user-xk9bf6uu2p 3 года назад +1

    боже спасибо

  • @kuzmichok8980
    @kuzmichok8980 3 года назад

    Лучший

  • @uralstalker9900
    @uralstalker9900 Год назад +1

    Хотелось бы отдельно уроки по PyCharm типа как смотреть работу переменных, в роликах это не особо рассказывается и приходится по нескольку раз перематывать чтоб понять что там нажали.

    • @denchik553
      @denchik553 Год назад

      По шагову роботу кода можна нажав на кнопку дебагер в пайчарме

  • @TimTim-jk1yu
    @TimTim-jk1yu 3 года назад +1

    То, как я решил задачу "Спираль"
    /----------------------------------
    n = int(input())
    a = []
    for i in range(n):
    a.append([0] * n)
    i = 1
    aX = 0
    aY = 0
    direction = 1
    # 1 right
    # 2 down
    # 3 left
    # 4 up
    while i < n*n:
    while direction == 1:
    if aY < n - 1 and a[aX][aY + 1] == 0:
    a[aX][aY] = i
    aY += 1
    i += 1
    else:
    direction = 2
    while direction == 2:
    if aX < n - 1 and a[aX + 1][aY] == 0:
    a[aX][aY] = i
    aX += 1
    i += 1
    else:
    direction = 3
    while direction == 3:
    if aY > 0 and a[aX][aY - 1] == 0:
    a[aX][aY] = i
    aY -= 1
    i += 1
    else:
    direction = 4
    while direction == 4:
    if aX > 0 and a[aX - 1][aY] == 0:
    a[aX][aY] = i
    aX -= 1
    i += 1
    else:
    direction = 1
    a[aX][aY] = i
    for i in range(n):
    for j in range(n):
    print(a[i][j], end=' ')
    print()

  • @Mirror13088
    @Mirror13088 7 месяцев назад

    Слишком быстро. Но, контент, очевидно полезнейший.

  • @ilyalitvinenko
    @ilyalitvinenko 4 года назад

    Артем, подскажите, пожалуйста, почему при выводе строк в обратном порядке, в цикле for i range(2, -1, -1) вы пишите вторым элементом -1, если нужен обход но ноля. (откуда идем, до куда идем, с каким шагом), не понял почему там -1.
    Спасибо!

    • @egoroffchannel
      @egoroffchannel  4 года назад

      я о том, как функция range работает в отдельном видео рассказывал
      ruclips.net/video/9J0fvF4k4F4/видео.html

    • @ilyalitvinenko
      @ilyalitvinenko 4 года назад

      @@egoroffchannel Точно, -1 не включая это число, то есть до ноля.
      Спасибо!

  • @El3m3nTik
    @El3m3nTik 5 лет назад +1

    А можно ли изменять букву которую мы вытащили из списка например : a[1][0].upper() , если да то как сделать первую заглавную букву?

    • @egoroffchannel
      @egoroffchannel  5 лет назад +4

      У строк есть метод capitalize(). Он так раз делает первую букву заглавной, все остальные маленькие

  • @user-mw2co3wb9k
    @user-mw2co3wb9k 3 года назад

    подскажите условие if для вывода обратной диагонали матрицы, пробовал что то вроде:
    if i == -j:
    или даже
    if i ==(-j-1):
    ны работаэт =(

  • @serhiisvyst4489
    @serhiisvyst4489 3 года назад +7

    Огромное спасибо за видео. Вопрос. 12:00. range(3) и range(4). Как они понимают что есть столбец а что есть строка. Само определяет где есть такая длина? Спасибо

    • @ArseniyBendyukov
      @ArseniyBendyukov 3 года назад +6

      Вложенные списки - это строки, которые в видео индексируются [ i ]. А из-за того, что они являются элементами главного списка, то и индексируются в первую очередь.
      Столбцы составляются из элементов вложенных списков (строк) с одинаковыми индексами. Поэтому, т.к. столбцы состоят из элементов вложенных списков, то и индексируются они вторыми. В видео использовали индексацию столбцов [ j ].
      Вообще, использовать "i" и "j" в циклах - это своеобразное негласное правило в программировании.
      Думаю, ответ исчерпывающий :)

    • @serhiisvyst4489
      @serhiisvyst4489 3 года назад +1

      @@ArseniyBendyukov Да. Спасибо!

    • @user-zj9dh7wu1p
      @user-zj9dh7wu1p 3 года назад

      @@ArseniyBendyukov чувак, я полностью скопировал код, и он у меня почему то не работает

    • @ahil7800
      @ahil7800 3 года назад +3

      @@serhiisvyst4489 Не верный ответ. Просто после циклов он пишет print a[i][j]. Соответственно и выводится так - i первый индекс - номер строки, j - второй индекс - номер столбца. А как вы эти переменные назовёте это не важно. Важно что вы запросите на печать

  • @erhundvimmbseowde2918
    @erhundvimmbseowde2918 9 месяцев назад

    Видео этого канала как буст на ускорение разработки первого скрипта, начинающего програмистера)

  • @user-ss2ws6zc7x
    @user-ss2ws6zc7x 4 года назад

    Артем, могли бы вы подсказать с задачей acmp.ru/asp/do/index.asp?main=task&id_course=1&id_section=8&id_topic=120&id_problem=746? Не совсем понятно, как считывать данные, когда между матрицами пробел.

    • @egoroffchannel
      @egoroffchannel  4 года назад

      ruclips.net/video/pbQ4eu_9C3s/видео.html

  • @Dayplaylist
    @Dayplaylist 2 года назад +1

    Комментарии для поддержки канала 🖐️😉

  • @4etvero4ka90
    @4etvero4ka90 3 года назад

    Даладно и вот это 7:00 я искал пол дня что бы сделать формулу для линейной алгебры и в итоге не нашёл и решил повторить синтаксис.

  • @egoroffchannel
    @egoroffchannel  4 года назад +4

    Разбор задач
    Транспонирование 2 - ruclips.net/video/QfqcqeTrSR0/видео.html
    Сумма главной диагонали ruclips.net/video/Gyvvs9Ltr9Q/видео.html
    Симметричная ли матрица - ruclips.net/video/JEu4oF3l7w4/видео.html
    Красивая матрица - ruclips.net/video/6TXtHdiyyCo/видео.html
    Сумма матриц - ruclips.net/video/pbQ4eu_9C3s/видео.html
    Подарок для Лены - ruclips.net/video/YSqZmLr9uss/видео.html
    Спираль ruclips.net/video/mHTMe_Q4-Xo/видео.html
    Морской бой 2 ruclips.net/video/BA9zmfQyfdo/видео.html
    Состязания-3 ruclips.net/video/_tzOEBBFkJs/видео.html

    • @user-gm8kf7jj1d
      @user-gm8kf7jj1d 3 года назад +1

      Вам следует закрепить этот комментарий

  • @moisad1
    @moisad1 3 года назад

    подскажите пожалуйста. на степике решил задачу состязания.
    решил пошагово. сначала ввел количество n и m, потом заполнил матрицу путем добавления
    потом прошел по значениям и суммировал результаты каждого и вывел максимальное значение.
    но посмотрев решения других участников обучения я не совсем понял некоторые моменты
    и вспомнил что такие моменты уже были в предыдущих задачах.
    вот строка в которой L присваевается прям сразу пол задачи
    n, m = map(int, input().split())
    L = [[int(i) for i in input().split()] for i in range(n)]
    S = [sum(i) for i in L]
    print(max(S), S.index(max(S)), sep='
    ')
    не могли бы вы пошагово расписать происходящее в этой строке
    или в этой где a присваевается решение в одну строку. и зачем в конце первой строки
    стоит список из одного нуля
    n = int(input().split()[0])
    a = [sum(list(map(int, input().split()))) for _ in range(n)]
    print(max(a), a.index(max(a)), sep='
    ')
    честно говоря я почувствовал себя умственно хуже чем чувствовал до этого
    потому что ребята находящиеся на том же месте в обучении что и я сделали
    что то, что мне не совсем понятно

    • @egoroffchannel
      @egoroffchannel  3 года назад

      Генераторы списков посмотри видео

  • @user-rm9sd2rb6x
    @user-rm9sd2rb6x 4 года назад +1

    а можно вопрос, вы показали как обращаться к числам в списке, а как их выборочно выводить?

    • @vlogofjb
      @vlogofjb 4 года назад

      В соответствии с индексом элемента?

    • @ArseniyBendyukov
      @ArseniyBendyukov 3 года назад +1

      Смотря что вы хотите вывести...
      Если только 1 элемент из списка, то можно использовать индексацию, т.к. списки это позволяют. Например:
      A = [ 1, 2, 3, 56, 3.7, "Hello" ]
      print( A[ 0 ] , A[ -1 ] )
      # Вывод: >>> 1 Hello
      Индекс [ -1 ] означает, что берётся последний элемент итрерируемого объекта (списка). Ну, а т.к. в Python отсчёт идет не с 1, а с 0, то чтобы вывести первый элемент, используем [ 0 ].
      Если хотите вывести некоторую часть / отрывок из списка, то используйте "вырезку". Это долго объяснять, но тема очень простая, и легко найти подходящий видеоурок.
      Пример вырезки:
      B = [ ' q ', 1 , 728.4 , ' python ' ]
      print( B[ 1 : 3 ] )
      # Вывод: >>> [ 1 , 728.4 ]
      Как видим, в вырезках второй элемент, который определяет до какого элемента вырезать, не включается в саму вырезку.

  • @andreygrishin936
    @andreygrishin936 2 года назад

    Товарищи, подскажите, просмотрев все видео, кроме спонсорских можно на основании полученных знаний поменять строки местами? Не могу решить задачу красивая матрица. Ответ знаю, что максимум за 4 раза можно в центр поместить однерку при условии, что она в одном из углов. А как менять строки в ту или другую сторону не могу додуматься. Кода не жду, хотя бы направление куда двигаться исходя из пройденных курсов без всяких matrix и пр. Того чего ещё не было. Дело принципа.
    Мысль такая ещё, что строка это индекс i списка и соответственно поменять строки это поменять значения под данным индексом. Т.е. я должен обойти строку идентифицировать в этой строке 1, если она есть то поменять следующую строку с текущей ( если в индексах то а[i] на а[i+1]) Пока пишу мысль развивается...может нужен промежуточный список, куда складывать данные...

  • @OGmirro
    @OGmirro 3 года назад +12

    Легкий способ научиться рисовать сову.
    1. Рисуем круг - это будет голова совы.
    2. Рисуем овал впритык к кругу - это будет тело совы.
    3. Рисуем остальную сову.
    Примерно так я понимаю это видео)))

  • @user-pj1md9th4n
    @user-pj1md9th4n Год назад

    Можно пожалуйста разобрать последнюю задачу, заполнение матрицы

  • @user-lb6vr6cs5m
    @user-lb6vr6cs5m 4 года назад

    Подскажите, пожалуйста, как в задаче "Симпатичный узор" так написать код, чтобы выдавало одно значение "yes" при симпатичном узоре?
    a = []
    for i in range(4):
    b = []
    for j in range(4):
    b.append(input())
    a.append(b)
    for i in a:
    print(i)
    for i in range(4):
    for j in range(4):
    if a[i][j] == a[i][j+1] and a[i][j] == a[i+1][j+1] and a[i][j] == a[i+1][j]:
    print("yes")
    else:
    print("no")
    Если ставлю счетчик, чтобы выдало yes по условию, то программа выдает ошибку:
    "IndexError: list index out of range". На break же программа не реагирует продолжая заход на следующую строку по циклу.

    • @amll2049
      @amll2049 4 года назад

      Изначально задать переменной значение ответа, которое будет изменяться в случае выполнения условной конструкции.
      flag = 'Yes'
      for i in range(len(m)-1):
      for j in range(len(m[i])-1):
      if (m[ i ][ j ] == m[ i ][ j+1 ] ==
      m[ i+1 ][ j ] == m[ i+1 ][ j+1 ]):
      flag = 'No'
      print(flag)
      Чтобы избежать ошибки "list index out of range", т.е выхода за пределы списка, перебираем значения, не включая последнее как по строкам, так и по столбцам.

  • @user-qs7st3sw8c
    @user-qs7st3sw8c 3 года назад +1

    Хм я всё понял,вчера читал в книге сегодня наткнулся на урок-всё чётко

    • @keramak
      @keramak 3 года назад +1

      Не скажите название книгу?

    • @user-qs7st3sw8c
      @user-qs7st3sw8c 3 года назад +2

      @@keramak Марк Лутс,Изучаем Пайтон. 5е издание.1часть

    • @keramak
      @keramak 3 года назад +1

      @@user-qs7st3sw8c спасибо

  • @EdgeOfDoom
    @EdgeOfDoom 4 года назад

    очень круто обьяснил , спасибо !

  • @user-fz9on5yy3y
    @user-fz9on5yy3y 4 года назад +1

    Здравствуйте,а как можно вложенные списки преобразовать в кортежи отдельные,чтоб 1 вложенный список стал кортежом,второй и тд?

    • @amll2049
      @amll2049 4 года назад +3

      Можно через цикл/ генератор списков преобразовать каждый подмассив основного массива.
      array = [ [1,2,3],
      [4,5,6],
      [7,8,9] ]
      new_array = [ ]
      for subarray in array:
      new_array.append(tuple(subarray))
      /
      new_array = [tuple(subarray) for subarray in array]

  • @user-wr5rc5pp8r
    @user-wr5rc5pp8r 3 года назад

    Эхэхэх из уважения к потраченным деньгам не буду называть платный курс, который дз все от сюда взял (ну или очень похоже), а также вообще эту тему не раскрыл. Четко как чичётка спасибо автору.

    • @user-wr5rc5pp8r
      @user-wr5rc5pp8r 3 года назад

      Реально круто, прошу рассмотреть возможность рассказать автору о себе, Ваш труд очень интересен.

    • @egoroffchannel
      @egoroffchannel  3 года назад

      да я что то стисняюсь камеры)

  • @EFIM_immersive_fun
    @EFIM_immersive_fun 3 года назад

    Замечание. Про обратный обход. Ведь можно ренжировать в обратном порядке, тоесть:
    for i in reversed(range(3))
    for j in reversed(range(3))
    Везде 3, т.к копировал у себя. Опять же, так я думаю, несколько проще, просто дописать reversed()

    • @bohdankrutskevych7467
      @bohdankrutskevych7467 3 года назад

      или же range(len(n),-1,-1)

    • @user-nx4od7cp7m
      @user-nx4od7cp7m 2 года назад

      @@bohdankrutskevych7467 почему вторая граница -1? не могу понять.

    • @alex_pure
      @alex_pure Год назад

      @@user-nx4od7cp7m потому, что нижняя граница диапазона (start) включается в последовательность, а верхняя (stop) - нет

  • @maltamagistro
    @maltamagistro 2 года назад

    4:41 - а почему списки запринтились тоже с переносами на новую строку??

  • @ananasanimator6049
    @ananasanimator6049 Год назад

    Сумма матриц:
    n, m = map(int, input(' ').split())
    matrix1 = []
    matrix2 = []
    resmatrix = []
    for i in range(n):
    matrix1.append(list(map(int, input(' ').split())))
    print()
    for i in range(n):
    matrix2.append(list(map(int, input(' ').split())))
    for i in range(n):
    resmatrix.append([0]*m)
    for i in range(n):
    for j in range(m):
    resmatrix[i][j] = matrix1[i][j] + matrix2[i][j]
    print(resmatrix)

  • @pavelsnizhko1146
    @pavelsnizhko1146 5 лет назад +2

    давайте видео по List Comprehensions пожалуйста, а то знаю немного с++ а преподаватель мой питоновский гамнокод не принимает(

    • @egoroffchannel
      @egoroffchannel  5 лет назад +2

      про генераторы списков,я правильно понял?) если о них речь, то сперва мне надо про функции видео снять

    • @pavelsnizhko1146
      @pavelsnizhko1146 5 лет назад

      egoroff_channel хорошо будем ждать спасибо за старание )

  • @As-hv9fj
    @As-hv9fj 3 года назад

    Спасибо огромное, подскажите пожалуйста, я не поняла задачу "красивое матрица", о чем она и что там надо делать?

    • @egoroffchannel
      @egoroffchannel  3 года назад

      Так разбор задачи есть)

    • @As-hv9fj
      @As-hv9fj 3 года назад

      @@egoroffchannel нету, я не могу понять саму смысл, откуда цифра 3 выходит, несколько раз прочитала то так и не поняла суть задачи.

    • @keramak
      @keramak 3 года назад

      @@As-hv9fj а где найти эту задачу

  • @jamjam3337
    @jamjam3337 Год назад

    👏👍

  • @killerkey1814
    @killerkey1814 4 года назад +2

    а вот тут становится сложнее просто смотришь на программу и не понимаешь почему так, было бы сдорово если бы вы объясняли эти нюансы.

    • @user-nt7gf6kb5w
      @user-nt7gf6kb5w 4 года назад +3

      Могу дать совет. Напишите такую же программу в PyCharm и с помощью команды Debug понаблюдайте за каждым действием программы. Тогда все становится намного понятнее

  • @user-br5xq1yl7s
    @user-br5xq1yl7s 2 года назад

    ❤️❤️❤️

  • @user-yf7ce2xi6c
    @user-yf7ce2xi6c 3 года назад

    Здравствуйте, я не очень хорошо понял как реализовать 2-ю задачу, где необходимо обойти элементы матрицы сверху вниз слева направо, а не понимаю как это сделать если у нас количество столбцов = количеству строк. Помогите пожалуйста.
    n = int(input())
    a = []
    for i in range(n):
    a.append(list(map(int, input().split())))
    for i in range(n):
    for j in range(n):
    print(a[i][j],end=' ')
    print()
    вот до чего только додумался, а вот как поменять не понимаю (

    • @egoroffchannel
      @egoroffchannel  3 года назад

      Привет, так разбор задачи есть, я там объяснил как это делать

    • @user-yf7ce2xi6c
      @user-yf7ce2xi6c 3 года назад

      @@egoroffchannel что- то не могу найти в плейлисте, не могли бы вы ссылку дать, пожалуйста

    • @egoroffchannel
      @egoroffchannel  3 года назад

      @@user-yf7ce2xi6c закрепленный комментарий в этом видео, задача Транспонирование 2

  • @alex_pure
    @alex_pure Год назад +2

    Транспонирование - 1:
    n = int(input())
    a = []
    for i in range(n):
    a.append(list(map(int, input().split())))
    for i in range(len(a)):
    for j in range(len(a)):
    print(a[j][i], end=' ')
    print()

    • @alex_pure
      @alex_pure Год назад

      Транспонирование - 2:
      n = int(input())
      a = []
      for i in range(n):
      a.append(list(map(int, input().split())))
      for i in range(len(a)):
      for j in range(len(a)):
      print(a[n - 1 - j][n - 1 - i], end=' ')
      print()

    • @alex_pure
      @alex_pure Год назад

      Транспонирование - 3:
      n ,m = map(int, input().split())
      a = []
      for i in range(n):
      a.append(list(map(int, input().split())))
      for i in range(n):
      for j in range(m - 1, -1, -1):
      print(a[i][j], end=' ')
      print()

    • @alex_pure
      @alex_pure Год назад

      Красивая матрица:
      a = []
      for i in range(5):
      a.append(list(map(int, input().split())))
      for i in range(5):
      for j in range(5):
      if a[i][j] == 1:
      m = max(i, 2) - min(i, 2) + max(j, 2) - min(j, 2)
      print(m)

    • @alex_pure
      @alex_pure Год назад

      Транспонирование - 4:
      n, m = map(int, input().split())
      a = []
      for i in range(n):
      a.append(list(map(int, input().split())))
      for i in range(n):
      for j in range(m):
      print(a[abs(i - n + 1)][j], end=' ')
      print()

    • @alex_pure
      @alex_pure Год назад

      Сумма главной диагонали:
      n = int(input())
      a = []
      s = 0
      for i in range(n):
      a.append(list(map(int, input().split())))
      for i in range(n):
      for j in range(n):
      if i == j:
      s += a[i][j]
      print(s)

  • @moisad1
    @moisad1 4 года назад

    хотел на отладке посмотреть но она при запуске выдает это
    pydev debugger: process 6388 is connecting
    Connected to pydev debugger (build 193.6911.25)

    • @egoroffchannel
      @egoroffchannel  4 года назад +1

      все нормально, говорит что процесс отладки запущен
      ниже этих слов вводи свои значения

  • @user-zy4nt8pm1z
    @user-zy4nt8pm1z Год назад

    15:24 я тут шоке так можно было

  • @georgepetrosyan4589
    @georgepetrosyan4589 4 года назад

    Mne interesno pochemy ia ne mogu predidushee video posmotret, kakoeto ogranichenia po memberam?! Ne podskajite problemu?!

  • @user-km7nt1rb8z
    @user-km7nt1rb8z 3 года назад

    Как ввести матрицу с клавиатуры, не задаваясь количеством строк и столбцов, имея в качестве окончания матрицы ключевое слово, к примеру, 'end'?

  • @MrGadenysh86
    @MrGadenysh86 4 года назад +1

    Разберите, пожалуйста для спонсоров эту задачу: Вам нужно посчитать сумму элементов двумерного квадратного (NxN) списка, которые расположены на главной диагонали.
    Программа сперва принимает на вход число N (N

    • @egoroffchannel
      @egoroffchannel  4 года назад

      Ок

    • @egoroffchannel
      @egoroffchannel  4 года назад

      а ссылку на задачу можно?

    • @MrGadenysh86
      @MrGadenysh86 4 года назад +1

      А всё, смог сам)

    • @egoroffchannel
      @egoroffchannel  4 года назад +1

      блин, я только вот сегодня сделал
      ruclips.net/video/Gyvvs9Ltr9Q/видео.html

  • @wazzuuuuuuup
    @wazzuuuuuuup 3 года назад

    Транспонирование - 1
    Первая строка входного файла INPUT.TXT содержит натуральное число N
    Подскажите пожалуйста как читать из текстового файла?

  • @alexw2074
    @alexw2074 3 года назад

    print a[i][j] Выходит ошибка 'list indices must be integers or slices, not list". Может кто пояснить? Делал пошагово, как в видео.

  • @2090520905
    @2090520905 3 года назад

    Когда мы чисто механически меняем местами "for i in... " на "for j in..." как программа понимает, что мы ей говорим идти по столбцам, а не по строкам? У меня этот вопрос возник, сразу по ходу урока, потом пытался найти ответ, но не нашел. В примере количество элементов в строке и столбцах разное и возможно поэтому питон понимает по какому ренжу идти. А если будет одинаковое??? Две совершенно одинаковые строчки поменяли местами и что???

    • @egoroffchannel
      @egoroffchannel  3 года назад

      Смотри предыдущий урок про вложенные циклы

    • @2090520905
      @2090520905 3 года назад

      @@egoroffchannel Доехал) Спасибо!

    • @ymnop9652
      @ymnop9652 3 года назад

      @@2090520905 Не могли бы вы объяснить?

    • @2090520905
      @2090520905 3 года назад

      @@ymnop9652 Пересматривал, вникал, конспектировал прямо в IDLE и въехал. В беседе бы объяснил, пожалуй., а в переписке нет, не смогу,

    • @ymnop9652
      @ymnop9652 3 года назад +2

      Так понял, смотрите для простоты понимания давайте уйдём от абстрактных i j и представим это как row - строка col - столбец
      представим матрицу 5 на 5, так вот в цикле
      for row in range(5)
      for col in range(5)
      a[row][col] == ...
      тут первый цикл row и поэтому пока не пройдёт весь цикл col значение row будет 0 (т.е проходим по первой строке) и только после того как мы пройдём по всем столбцам нулевой строки, значение row станет 1. А в цикле:
      for col in range(5)
      for row in range(5)
      a[row][col] == ...
      col первый цикл и пока мы не пройдём по всем строкам нулевого(фактически первого) cтолбца значение col будет равно 0, после прохода по всем рядам col станет 1 и опять бегаем по строкам.
      Стоит обратить внимание на то что при когда мы меняем циклы местами мы не меняем местами переменные a[row][col] на a[col][row] т.к это не имеет смысла и сводит все перемены циклов на нет. Надеюсь хоть одному человеку мой комментарий поможет.

  • @kristyatatarinceva
    @kristyatatarinceva Год назад

    Здравствуйте! Возможно мне не ответят, но информацию все равно найти не могу.
    Объясните пожалуйста, как без ввода значений элементов I и j, через range , функция понимает что I это строка, а j это столбец. И при перемене местами( где j мы ставим в первом цикле, а I в вложенном) python все равно считывает j как столбец, а не строку? При этом если ввести квадратную матрицу, функция тоже понимает где I это строка, j столбец. Спасибо за уроки.

    • @user-yq7tt2wp4p
      @user-yq7tt2wp4p Год назад

      Значение в print смотрите, которое местами не меняется поэтому при перемене местами i и j сначала выводится индекс вложенного цикла потом внешнего.

  • @SRFxVideos
    @SRFxVideos 4 года назад

    Здравствуйте, подскажите пожалуйста, Как решить задачу "Симметричная матрица"?

    • @user-ys8wm1nk8k
      @user-ys8wm1nk8k 4 года назад

      a=int(input())
      t=[]
      count=0
      for i in range(a):
      b=list(map(int,input().split()))
      t=t+[b]
      for j in range(a):
      for j2 in range(a):
      if t[j][j2]!=t[j2][j]:
      count+=1
      if count==0:
      print('yes')
      else:
      print('no')

  • @RavZilberman
    @RavZilberman 3 года назад

    как-то неправильно у меня отображаются списки, не понял, в чём проблема(в строчку):
    sun9-58.userapi.com/impg/VSPZK6fw40gJ5hoUHo-iENO6qWk0sm1du4rkkQ/eGTdL-W3_3c.jpg?size=1280x701&quality=96&sign=69291d262611180cb8844da261f95454&type=album

  • @freedle4715
    @freedle4715 3 года назад

    А как вывести одну из строк, выбранную пользователем и чтобы она была полностью возведена в квадрат?

  • @moisad1
    @moisad1 4 года назад

    подскажите пожалуйста пишу так
    a = [
    [3, 4, 5, 8],
    [2, 6, 78, 14],
    [10, 11, 12, 15]
    ]
    for i in range(3):
    for j in range(4):
    print(a[i][j])
    а при нажатии run выдает ошибку
    File "C:/Users/Acer/PycharmProjects/untitled/рабочий 3.py", line 8
    print(a[i][j])
    ^
    IndentationError: expected an indented block
    Process finished with exit code 1

    • @moisad1
      @moisad1 4 года назад

      блин понял. на принте отступ не сделал правильный

    • @egoroffchannel
      @egoroffchannel  4 года назад +1

      не успел, сам разобрался) молодец!)

  • @alexcigun8529
    @alexcigun8529 4 года назад +1

    Вложенные списки в народе матрицы