Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.75/208: Рейтинг темы: голосов - 208, средняя оценка - 4.75
 Аватар для Lucky64
20 / 9 / 0
Регистрация: 16.01.2019
Сообщений: 288

Ищу доброго самаритянина по питону

16.01.2019, 16:27. Показов 49566. Ответов 508
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всех приветствую, немного о себе, 27 лет, женат, работаю системным админом в крупной компании. Всегда хотел программировать, но по стечению обстоятельств не сложилось, то работа не позволяла, не было времени, то бытовуха итд. Но вот решил что во что бы то не стало я овладею данной профессией. Начал свой путь программирования с питона. Сейчас читаю книги, прохожу на сайтах различные обучающие уроки итд, на ютюбе нашел не плохой канал где разжевывают все хорошо и вроде потихоньку получается писать (можно было бы идти на курсы, но не позволяет работа, питон питоном, а семью кормить надо, вроде и на работе время есть изучать, но вот уходить на курсы с работы итд, это не варик). Буквально вчера закончил разбираться и написал уже самостоятельно игру камень, ножницы, бумага, где играешь против компа. Ищу человека который просто направлял бы меня в нужное русло, подкидывал материал для изучения, который потом мне пригодится итп, который помог бы в трудностях. Просто учить все подряд без какого либо плана дает итог каши в голове. Если найдется тут такой человек, буду искренне благодарен ему!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.01.2019, 16:27
Ответы с готовыми решениями:

В зависимости от ведённого времени получите сообщение с пожеланием доброго утра, доброго дня, доброго вечера, спокойный
Плииз! Помогите с учёбой! В общем суть задания: В зависимости от ведённого времени (от 0 до 24) получите сообщение с пожеланием доброго...

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

Ищу доброго человечка, который поможет
Здравствуйте. Помогите пожалуйста сверстать небольшую страницу. Html, Css, Font Awesome

508
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
22.02.2019, 12:08
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от IRIP Посмотреть сообщение
не пойму, где он сортировку хранит, вроде как не в памяти (а вроде и в памяти)
видно, выводит только True False
True и False это 1 и 0. Все зависит от места где используется.
Python
1
2
3
4
5
6
7
8
>>> 3 + True
4
>>> 3 + False
3
>>> 3*True
3
>>> 3*False
0
Придумал как лучше объяснить код
Python
1
2
l = [5, -7, 3, 0, 1, 3, -7, 0, -2]
l.sort(key=lambda x: x >= 0)
Если x >= 0 то True (1), иначе False (0)

Синтаксис функции sort() :

list.sort(key=None, reverse=False) -> None


key=None : Функция, принимающая аргументом элемент, используемая для получения из этого элемента значения для сравнения его с другими.

reverse=False : Флаг, указывающий следует ли производить сортировку в обратном порядке.

В нашем случае функция преобразующая x это y = (x >= 0) и ее значениями будут True или False.

Итак сравнение 5 и -7 будет по значениям y(5>=0) = True = 1 и y(-7>=0) = False = 0 , и результаты сравнения применяться к 5 и -7.

5, -7, 3, 0, 1, 3, -7, 0, -2
Для наглядности разместим наши элементы для сравнения не слева направо, а сверху вниз ( чтобы сортировать по возрастанию значения y(x) ).

x -> y(x)

5 -> True = 1
-7 -> False =0
3 -> True = 1
0 -> True = 1
1 -> True = 1
3 -> True = 1
-7 -> False =0
0 -> True = 1
-2 -> False =0

В результате сортировки сравниваться будут значения y а перемещаться, в зависимости от результатов сравнения, элементы x.

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

Добавлено через 7 минут
В результате сортировки мы получаем

-7 -> False =0
-7 -> False =0
-2 -> False =0
5 -> True = 1
3 -> True = 1
0 -> True = 1
1 -> True = 1
3 -> True = 1
0 -> True = 1

То есть
[-7, -7, -2, 5, 3, 0, 1, 3, 0]

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

и потом вот еще одна
Вывести список без повторяющихся друг за другом элементов исходного списка
0
 Аватар для Lucky64
20 / 9 / 0
Регистрация: 16.01.2019
Сообщений: 288
22.02.2019, 12:08  [ТС]
Цитата Сообщение от Viktorrus Посмотреть сообщение
За тобой осталась одна задачка
на работе сегодня завал, если не успею, завтра сутра начну
0
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
22.02.2019, 12:45
Viktorrus, это прям пайтонячья магия...
0
 Аватар для Lucky64
20 / 9 / 0
Регистрация: 16.01.2019
Сообщений: 288
23.02.2019, 04:47  [ТС]
Viktorrus, Не знаю как зациклить правильно
Оставить в строке только один экземпляр каждого встречающегося символа
Python
1
2
3
4
5
6
7
8
9
10
11
12
f=[1,2,2,3,3,4,5,6,6,7]
h=[]
g=0
n=0
while g!=len(f):
    if f[n] != f[n+1]:
        h.append(f[n])
        f.pop(n)
    else:
        n+=1
    g+=1
print(h)
Проблема в том, что в условии говорится выполнять цикл до момента, пока g!=ken(f), но лен ф меняется по ходу выполнения программы, и либо выводит не весь список, либо выдает ошибку... Хотел не удалять элементы из списка и просто переходить к другому элементу после выполнения операции, но если я убираю рор, и дубавляю туда n+=1, у меня опять выдает ошибку
0
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
23.02.2019, 05:12
Lucky64, если очередность не важна:
Python
1
2
3
4
5
6
7
def main():
    f = [1, 2, 2, 3, 3, 4, 5, 6, 6, 7]
    h = list(set(f))
    print(h)
 
if __name__ == "__main__":
    main()
0
 Аватар для Lucky64
20 / 9 / 0
Регистрация: 16.01.2019
Сообщений: 288
23.02.2019, 06:44  [ТС]
Arsegg,
Вот он удаляет все идущие друг за другом повторяющиеся цифры
Python
1
2
3
4
5
6
7
8
9
10
11
f=[1,2,2,3,4,5,5,2,3,3]
g=[]
n=0#1
for x in f:
    if x ==f[n+1]:
        f.pop(x)
 
    else:
        g.append(x)
    n+=1
print(g)
Как сделать так, что бы он удалял лишь одну из повторяющихся? Интересно именно через фор, как это сделать по моему методу, и возможно ли это? Просто хочется решить по направлению, которое я выбрал для решения этой задачи и понять где я ошибся и что не понял
0
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
23.02.2019, 07:07
Lucky64, можно и так:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
def main():
    f = [1, 2, 2, 3, 3, 4, 5, 6, 6, 7]
    g = []
    for x in f:
        for y in g:
            if x == y:
                break
        else:
            g.append(x)
    print(g)
 
if __name__ == "__main__":
    main()
Добавлено через 2 минуты
А лучше так:
Python
1
2
3
4
5
6
7
8
9
10
def main():
    f = [1, 2, 2, 3, 3, 4, 5, 6, 6, 7]
    g = []
    for x in f:
        if not x in g:
            g.append(x)
    print(g)
 
if __name__ == "__main__":
    main()
0
 Аватар для Lucky64
20 / 9 / 0
Регистрация: 16.01.2019
Сообщений: 288
23.02.2019, 07:13  [ТС]
Arsegg, проблема в том, что ваш код зависит от сортировки, то есть он убирает вовсе все повторяющиеся, а мой только те, которые повторяются непосредственно друг за другом. На пример ваш код в случае добавления в нескольких местах [3,3, 1,3,3] из четырех троек он удалит все три и оставит одну, а надо что бы просто удалил повторяющиеся... Надеюсь удалось объяснить
0
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
23.02.2019, 08:08
Цитата Сообщение от Lucky64 Посмотреть сообщение
Оставить в строке только один экземпляр каждого встречающегося символа
Каков вопрос - таков ответ

Добавлено через 11 минут
Это для повторяющихся последовательностей:
Python
1
2
3
4
5
6
7
8
9
10
11
12
def main():
    f = [3, 3, 1, 3, 3] 
    g = []
    last = None
    for x in f:
        if x != last:
            g.append(x)
        last = x
    print(g)
 
if __name__ == "__main__":
    main()
1
 Аватар для Lucky64
20 / 9 / 0
Регистрация: 16.01.2019
Сообщений: 288
23.02.2019, 08:33  [ТС]
Цитата Сообщение от Arsegg Посмотреть сообщение
last = None
вот этого не понял, что значит None, что оно делает???
0
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
23.02.2019, 08:35
Lucky64, https://pythonworld.ru/tipy-da... /none.html
1
 Аватар для Lucky64
20 / 9 / 0
Регистрация: 16.01.2019
Сообщений: 288
23.02.2019, 09:13  [ТС]
Arsegg, IRIP,
В общем все теперь стало ясно, с начала не понял одного момента, но потом, когда начал писать вам свои вопросы, до меня все дошло, и так, начал я вам строчить следующее:

IRIP, Спасибо, с этим разобрался, теперь плс объясните далее, если last = None, то есть ничто.то как работает код??
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
def main():
    f = [3, 3, 1, 3, 3]
    g = []
    last = None
    for x in f:#Передаем поочередно иксу итерируемые объекты, так?
        if x != last:#Если икс не равен ничему, то
            g.append(x)# то добавляем его в список g
        last = x#Присваиваем ласту значение икс. 
    print(g)
 
 
if __name__ == "__main__":
    main()
Не понятно следующее, если я правильно понимаю работу цикла фор, то она такая: присваиваем поочередно переменной по одному значению из массива(списка, кортежа, словаря итп). И над каждым значением поочередно проводим операции, которые прописаны в цикле фор, все верно?? или я опять ошибаюсь где то??
И так, далее исходя из логики выполнения программы мне не ясно, после того, как код проведет свою первую операцию над первым ит.объектом в списке, переходя ко второму ласт ведь уже не будет являться None, ведь мы присвоили ему новое значение в прошлом обходе, то есть теперь ласт равняется иксу, который в прошлом обходе равнялся объекту из списка под 0 индексом....
и тут я понял в чем магия!!!!!!
Блин ребят спасибо что разжевали все, как же это круто!


Добавлено через 2 минуты
Теперь я с полна осознал что значит None, и почему мы просто не используем вместо него тот же 0, ведь если использовать 0, и этот 0 будет присутствовать в списке, у нас код будет работать некорректно... Мысли в слух ребят

Добавлено через 58 секунд
переделал свой код
Python
1
2
3
4
5
6
7
8
f = [3,2,2,1, 2, 2, 3, 4, 5, 5, 2, 3, 3]
g = []
n = None
for x in f:
    if x!=n:
        g.append(x)
    n=x
print(g)
Добавлено через 13 минут
Viktorrus,
ответ на задачу позавчерашнюю:

Вводиться с клавиатуры предложение. Оставить в строке только один экземпляр каждого встречающегося символа.

Без использование функций.
Решение я взял и немного логически переосмыслил из прошлого задания, оно вышло таким, правильно?
Python
1
2
3
f = input()
h = str(set(f))
print(h)
1
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
23.02.2019, 09:19
Lucky64, смотри - https://stepik.org/course/9230 курс
но текст я не читал - проходил только задачки

за чуть больше пары часов прошел только что
0
151 / 86 / 35
Регистрация: 05.08.2017
Сообщений: 257
23.02.2019, 09:21
Цитата Сообщение от Lucky64 Посмотреть сообщение
Решение я взял и немного логически переосмыслил из прошлого задания, оно вышло таким, правильно?
Да, только преобразование в str не нужно, input и так возвращает строку
Python
1
2
3
f = input()
print(set(f))
print(type(f)) #<class 'str'>
1
 Аватар для Lucky64
20 / 9 / 0
Регистрация: 16.01.2019
Сообщений: 288
23.02.2019, 09:34  [ТС]
Resistanse, Уяснил, спс!

Добавлено через 10 минут
Цитата Сообщение от IRIP Посмотреть сообщение
смотри - https://stepik.org/course/9230 курс
но текст я не читал - проходил только задачки
за чуть больше пары часов прошел только что
тоже начал но думаю больше времени уйдет, т.к. я на работе, а тут не дают долго сидеть))
0
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
23.02.2019, 09:54
Lucky64, сегодня ж суббота?!
0
 Аватар для Lucky64
20 / 9 / 0
Регистрация: 16.01.2019
Сообщений: 288
23.02.2019, 10:08  [ТС]
Цитата Сообщение от IRIP Посмотреть сообщение
сегодня ж суббота?!
2 через 2 график с 7 до 7 вне зависимости от праздников и дней недели
0
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
23.02.2019, 10:27
Цитата Сообщение от Lucky64 Посмотреть сообщение
Не знаю как зациклить правильно
Оставить в строке только один экземпляр каждого встречающегося символа
Python
1
2
items = [2, 2, 3, 3, 1]
print(list(set(items)))
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
23.02.2019, 11:40
Цитата Сообщение от Lucky64 Посмотреть сообщение
Вводиться с клавиатуры предложение. Оставить в строке только один экземпляр каждого встречающегося символа.
Предполагается что останется одна строка, в которой каждый символ в одном экземпляре.
А у тебя на выходе множество одно символьных строк.
Python
1
{'е', 'Я', 'р', 'ю', 'т', 'с', ' ', 'у', 'к', 'и'}
Что бы объединить множество одно символьных строк в одну строку, используй метод
str.join(iterable) -> str

Добавлено через 15 секунд
Цитата Сообщение от Lucky64 Посмотреть сообщение
Вводиться с клавиатуры предложение. Оставить в строке только один экземпляр каждого встречающегося символа.
Предполагается что останется одна строка, в которой каждый символ в одном экземпляре.
А у тебя на выходе множество одно символьных строк.
Python
1
{'е', 'Я', 'р', 'ю', 'т', 'с', ' ', 'у', 'к', 'и'}
Что бы объединить множество одно символьных строк в одну строку, используй метод
str.join(iterable) -> str

Добавлено через 6 минут
IRIP, В условии написано
"Вернуть и вывести список без повторяющихся друг за другом элементов."
То есть нужно убрать только повторяющиеся друг за другом элементы, а не все повторяющиеся элементы.

Добавлено через 2 минуты
Например из
Python
1
[1,2,2,3,2,1]
нужно получить
[1, 2, 3, 2, 1]

Добавлено через 15 секунд
Например из
Python
1
[1,2,2,3,2,1]
нужно получить
[1, 2, 3, 2, 1]

Добавлено через 4 минуты
Lucky64, Ты сам определяй, когда продолжить изучение Лутца и перейти к освоению ООП.
Когда захочешь продолжить, то скажешь.
0
 Аватар для Lucky64
20 / 9 / 0
Регистрация: 16.01.2019
Сообщений: 288
23.02.2019, 11:50  [ТС]
Цитата Сообщение от Viktorrus Посмотреть сообщение
Что бы объединить множество одно символьных строк в одну строку, используй метод
str.join(iterable) -> str
Тогда вот так:
Python
1
2
3
f = 'abccba'
h = ''.join(set(f))
print(h)
П.С. задачи еще не смотрели новые?

Добавлено через 2 минуты
Цитата Сообщение от Viktorrus Посмотреть сообщение
Когда захочешь продолжить, то скажешь.
Хорошо, но я думал около месяца по практиковаться, вы не против? надеюсь продолжите помогать в этом просто сами видите ведь, что совсем сырые знания, элементарные задачи часами решаю...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.02.2019, 11:50

Ищу доброго человека, который прособеседует по java
Ищу доброго человека чтобы поспрашивал по java, дабы проверить знания. Мечу на позицию java junior. Хочется проверить свои знания перед...

Кр по питону ?
У меня третий вариант и я не могу решить как это делать

Лабораторная по питону
Есть 2 емкости : кубическая с ребром Ф, цилиндрическая с высотой Н и радиусом R. Определить поместится ли жидкость объемом М в первую...

Задание по питону
Дана последовательность случайных чисел длиной n. Выбросить из ряда те элементы, значение которых равно a и b. Вывести полученное, а затем...

Питону не понравилось
import threading, time flag = True def proc(n): while flag==True: print(n) time.sleep(0.3) ...


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

Или воспользуйтесь поиском по форуму:
360
Закрытая тема Создать тему
Новые блоги и статьи
GitHub Copilot в JetBrains: модель по умолчанию, Fix и контроль MCP
and_y87 12.10.2026
10 октября 2026 года GitHub обновил Copilot для JetBrains: добавил настройки стартовой модели, исправления из диагностики и управление автозапуском MCP. Поддержка IDE 2025. 1 прекращена — требуется. . .
GitHub Copilot в JetBrains: модель по умолчанию, Fix и контроль MCP
and_y87 12.10.2026
10 октября 2026 года GitHub обновил Copilot для JetBrains: добавил настройки стартовой модели, исправления из диагностики и управление автозапуском MCP. Поддержка IDE 2025. 1 прекращена — требуется. . .
День 5 из 28: Codex подсказывает следующий запрос
and_y87 12.10.2026
9 октября 2026 года OpenAI запустила бету Composer predictions — подсказок следующего сообщения в текущем диалоге Codex. Это помощь с формулировкой запроса, а не автоматическое продолжение задачи. . . .
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru