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

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

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

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

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

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

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

508
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
27.02.2019, 15:27
Студворк — интернет-сервис помощи студентам
Lucky64, мне ваш код ничего не вывел.
Python
1
2
3
4
import re
text = input()
words = re.findall(r'[Aa][A-Za-z]+', text)
print(';'.join(words))
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
27.02.2019, 15:48
Lucky64,
Твой код работает, но нужна оптимизация.

Python
1
f=str(input())
Функция str() здесь не нужна, input() и так возвращает ввод в виде строки.
input() и split() обычно объединяют в одну строку, что бы не вводить лишнюю переменную.
f6 здесь тоже лишняя переменная. Проще использовать ';' непосредственно.
Python
1
print(';'.join(f3))
В итоге оптимизированный код выглядит так (не исключаю что возможно еще как то оптимизировать, но мой вариант такой)
Python
1
2
3
4
5
6
7
8
f1=input().split()
#f1=f.split()
#f6=';'
f3=[]
for x in f1:
    if x[0]=='а':
       f3.append(x)
print(';'.join(f3))
Добавлено через 5 минут
Цитата Сообщение от ioprst Посмотреть сообщение
мне ваш код ничего не вывел.
Это проблема у Вас, а не у Lucky64, у меня его код все нормально выводит.
0
 Аватар для Lucky64
20 / 9 / 0
Регистрация: 16.01.2019
Сообщений: 288
27.02.2019, 17:11  [ТС]
Цитата Сообщение от ioprst Посмотреть сообщение
мне ваш код ничего не вывел.
У меня все норм, вот дома только что (с другого компа запустил) все работает отл
Цитата Сообщение от Viktorrus Посмотреть сообщение
Функция str() здесь не нужна, input() и так возвращает ввод в виде строки.
input() и split() обычно объединяют в одну строку, что бы не вводить лишнюю переменную.
f6 здесь тоже лишняя переменная. Проще использовать ';' непосредственно.
да просто я по мере придумывания алгоритма сразу пишу реализацию, потом стараюсь оптимизировать, а тут что то запарился на работе и сразу выклал

Добавлено через 1 минуту
Viktorrus, завтра как дела утрясу, возьмусь за ООП, по стараюсь как обычно по 1 главе в сутки, но если будет тяжело, то как пойдет, торопиться не буду сильно
0
0 / 0 / 0
Регистрация: 26.02.2019
Сообщений: 6
27.02.2019, 20:08
Подкидываю материал

С клавиатуры вводится время начала и время конца события в формате ЧЧ:ММ
Вычислить временной интервал

Тестовые задачи:
15:00-16:30
23:00-05:05
01:00-15:00
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
27.02.2019, 20:52
Цитата Сообщение от R688 Посмотреть сообщение
Подкидываю материал
Если Вам нужно решение, то откройте отдельную тему. А мы берем задачи, только из уже открытых тем, такое требование модератора.
0
0 / 0 / 0
Регистрация: 26.02.2019
Сообщений: 6
27.02.2019, 21:03
Viktorrus, решение не нужно, задачку закинул, потому что интересная для начала. Всю тему не читал, извиняйте
0
 Аватар для IRIP
514 / 146 / 28
Регистрация: 18.04.2015
Сообщений: 1,904
Записей в блоге: 16
27.02.2019, 21:09
Viktorrus, прям агрессивный такой =) жжуть =(
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
28.02.2019, 00:23
Цитата Сообщение от IRIP Посмотреть сообщение
Viktorrus, прям агрессивный такой =) жжуть =(
Дело не в агрессивности. Просто Lucky64, общался с модератором, и тот разрешил вести эту тему обсуждая все в ней, но выкладывать задачи и решать их только в отдельно создаваемой теме.
То есть если создана тема и выложено там решение, то здесь можно сделать разбор ее решения.
Поэтому мы не хотим нарушать требование модератора, что бы он не закрыл нашу тему.

Добавлено через 3 минуты
Единственное исключение, это задачи из Лутца, так как вся эта тема посвящена Лутцу.
1
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
28.02.2019, 08:00
R688, используйте модуль datetime
Python
1
2
3
4
5
6
7
8
from datetime import timedelta
 
a = timedelta(hours=15, minutes=0)
z = timedelta(hours=16, minutes=30)
 
delta = z - a  # type: timedelta
 
print(delta)
0
 Аватар для Lucky64
20 / 9 / 0
Регистрация: 16.01.2019
Сообщений: 288
28.02.2019, 21:16  [ТС]
Viktorrus, В общем что то выдался тяжелый выходной день, много дел нужно было сделать, так что за изучение первой главы в ООП я взялся только под вечер... Выводы такие, классы похожи на модули, только они могут использоваться многократно и являются универсальным оружием в программировании, их нужно лишь подстроить под выполнение необходимой задачи. В первой главе Лутц не особо углубился в детали, но таблицу и создание классов я вроде изучил основательно, завтра продолжу Единственное что расстроило, это не удалось на практике реализовать код из этой главы, вечно выдавал ошибку о том, что супер классы не инициализированы, то есть не созданы и он не может их увидеть, а как их создать, и где они будут находиться не объяснили... но думаю дальше все станет понятнее.

Добавлено через 2 минуты
Цитата Сообщение от Viktorrus Посмотреть сообщение
Дело не в агрессивности. Просто Lucky64, общался с модератором, и тот разрешил вести эту тему обсуждая все в ней, но выкладывать задачи и решать их только в отдельно создаваемой теме.
То есть если создана тема и выложено там решение, то здесь можно сделать разбор ее решения.
Поэтому мы не хотим нарушать требование модератора, что бы он не закрыл нашу тему.
IRIP,
Все верно, именно так модератор мне и сказал, мы можем продолжать обсуждение языка в целом и тех или иных задач, но непосредственное задание должно быть опубликовано в новой теме на форуме, что бы оно несло пользу для других новичков, это в 2 словах
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
28.02.2019, 23:18
Цитата Сообщение от Lucky64 Посмотреть сообщение
Единственное что расстроило, это не удалось на практике реализовать код из этой главы
Укажи какая страница и размести здесь код, который у тебя выдает ошибку, и саму ошибку.
Ты прочитал мой комментарий "Введение в ООП" ?
Первые две главы в основном на понимание ООП. Вводятся новые понятия. Какие понятия тебе не понятны, ты спрашивай.

Добавлено через 13 минут
Цитата Сообщение от Lucky64 Посмотреть сообщение
Выводы такие, классы похожи на модули
Модули, это файлы содержащие в себе программы. Классы могут быть частью основного сценария или частью модулей. Но основное их отличие, что модули содержат в себе программы и объекты, но нового ничего не создают, а только дают доступ к своему содержимому, а классы создают новые объекты, с заданными свойствами, которые называются экземплярами этих классов. Классы как фабрики новых объектов определенного типа.

Добавлено через 10 минут
Lucky64, Ты сравнил классы с модулями видимо потому, что у тех и других одинаковый синтаксис:

модуль.атрибут
Класс.атрибут

Но для того, что бы не путать модули с классами программисты по умолчанию классам дают имена с большой буквы (хотя для питона это не обязательно). Все остальные имена, модули переменные, функции и т.д. начинаются с маленькой буквы.
Это помогает избегать путаницы с именами.
Ты тоже возьми это за правило.
0
 Аватар для Lucky64
20 / 9 / 0
Регистрация: 16.01.2019
Сообщений: 288
01.03.2019, 09:49  [ТС]
Цитата Сообщение от Viktorrus Посмотреть сообщение
Укажи какая страница и размести здесь код, который у тебя выдает ошибку, и саму ошибку
Страница 702
Python
1
2
3
4
5
6
7
8
class C1(C2, C3):               # Создать и связать класс C1
def setname(self, who):     # Присвоить: C1.setname
        self.name = who         # self – либо I1, либо I2
I1 = C1()                       # Создать два экземпляра
I2 = C1()
I1.setname(‘bob’)               # Записать ‘bob’ в I1.name
I2.setname(‘mel’)               # Записать ‘mel’ в I2.name
Print(I1.name)
ошибка:
class C1(C2, C3):
NameError: name 'C2' is not defined


Цитата Сообщение от Viktorrus Посмотреть сообщение
Ты прочитал мой комментарий "Введение в ООП" ?
да прочитал, со второго раза вроде понял

Цитата Сообщение от Viktorrus Посмотреть сообщение
Ты сравнил классы с модулями видимо потому, что у тех и других одинаковый синтаксис:
возможно...
Цитата Сообщение от Viktorrus Посмотреть сообщение
Но для того, что бы не путать модули с классами программисты по умолчанию классам дают имена с большой буквы (хотя для питона это не обязательно). Все остальные имена, модули переменные, функции и т.д. начинаются с маленькой буквы.
Это помогает избегать путаницы с именами.
Ты тоже возьми это за правило.
хорошо, так и буду делать значит.
Сегодня след глава, по стараюсь осилить, но не факт
0
151 / 86 / 35
Регистрация: 05.08.2017
Сообщений: 257
01.03.2019, 09:52
Цитата Сообщение от Lucky64 Посмотреть сообщение
class C1(C2, C3):
NameError: name 'C2' is not defined
Классы C2 и C3 нужно еще создать
0
 Аватар для Lucky64
20 / 9 / 0
Регистрация: 16.01.2019
Сообщений: 288
01.03.2019, 10:30  [ТС]
Цитата Сообщение от Resistanse Посмотреть сообщение
Классы C2 и C3 нужно еще создать
Вот я об этом и писал, что не объяснили на тот момент, что да как делается, теперь уже дошел до этого
по примеру в книге создал сейчас свой класс который умножает результат:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class Umn:
    def um(self,value):
        self.data=value*2
    def rez(self):
        print(self.data)
        
x=Umn()
y=Umn()
x.um('far')
y.um(5)
x.rez()
farfar
y.rez()
10
Теперь более наглядно понял что и как работает, двигаюся дальше

Добавлено через 4 минуты
Resistanse, А вот сразу выдает результат без запроса
Python
1
2
3
4
5
6
7
8
class U:
    def uu(self,value):
        self.data=value*2
        print(self.data+1)
        
x=U()
x.uu(2)
5
Пока что все делаю в оболочке пайчарма
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
01.03.2019, 11:21
Цитата Сообщение от Lucky64 Посмотреть сообщение
ошибка:
class C1(C2, C3):
NameError: name 'C2' is not defined
Resistanse, тебе правильно написал. Питон ругается что у тебя нет объекта с именем С2, Возможно нет и С3, просто питон дошел до ошибки с С2 и прекращает дальнейшее выполнение.
Смысл записи
Python
1
class C1(C2, C3):
Определяется класс, у которого есть два суперкласса С1 и С2.
Но эти два класса С2 и С3 должны быть определены, до того, как ты начинаешь определять класс С1.
На странице выше дан код:
Python
1
2
3
4
5
6
7
8
9
class C2: ...         # Создать объекты классов (овалы) 
class C3: ... 
class C1(C2, C3): ... # Связанные с суперклассами
 
I1 = C1()             # Создать объекты экземпляров (прямоугольники), 
I2 = C1()             # связанные со своими классами 
 
print(I1)             # добавлено мной для проверки
print(I2)             # добавлено мной для проверки
Выводит:
Python
1
2
<__main__.C1 object at 0x0339DE30>
<__main__.C1 object at 0x0339DFF0>
Здесь определяются классы С2, С3 и С1. Классы С2 иС3 являются суперклассами для класса С1.
Твой код, который выдает ошибку, является продолжением этого кода, где определены классы С2 и С3.
Здесь определен и класс С1. Но в твоем коде переменная С1 (имя класса) меняет ссылку уже на другой объект (тоже класс), но уже имеющий другое тело (содержимое).
Но новое определение С1 не будет работать, если выше не определены классы С2 и С3.
то есть все, что тебе нужно, это добавить перед твоим кодом определение классов С2 и С3
Python
1
2
class C2: ...  
class C3: ...
Напомню, в некоторых местах, где ожидается код, например содержимое функции или класса, мы можем вставлять многоточие (три точки). Питон не будет воспринимать это как ошибку, а поймет, что код будет вставлен позже. Кстати вместо многоточия можно написать инструкцию pass, которая ничего не делает, а просто заполняет место, где где питон ожидает некоторый код. Питон просто продолжает выполнение кода находящегося дальше.
0
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
01.03.2019, 11:26
Lucky64, мой совет на самой первой странице темы вы проигнорировали. Зря, зря...
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
01.03.2019, 13:44
Lucky64, Лутц в начале этой части книги пишет
"Метод __init__ известен как конструктор"
Но профессионалы мне и раньше говорили, что метод __init__, это не конструктор, а инициализатор, который инициализирует у экземпляра атрибуты и присваивает им значения.
Что интересно, это то, что и сам Лутц в последней главе этой части книги называет метод __init__ инициализатором.
То есть не обращай внимание на то, что Лутц называет здесь метод __init__ конструктором. На самом деле конструктором является сам класс. Класс, когда он определен, создает экземпляр когда мы пишем в коде его имя с круглыми скобками на конце и атрибутами внутри них, если они есть.
Python
1
2
I1 = C1()             # Создать объекты экземпляров, 
I2 = C1()             # связанные со своими классами
С1() создает новый экземпляр и ссылка на этот экземпляр присваивается переменной I1.
Переменной I2 присваивается ссылка на другой еще один созданный экземпляр класса С1, с помощью записи I2 = С1()
Итак, класс, это конструктор, создающий объекты-экземпляры этого класса,
а метод __init__ , это инициализатор, который инициализирует у экземпляра атрибуты и присваивает им значения.
0
 Аватар для Lucky64
20 / 9 / 0
Регистрация: 16.01.2019
Сообщений: 288
01.03.2019, 14:40  [ТС]
Цитата Сообщение от ioprst Посмотреть сообщение
мой совет на самой первой странице темы вы проигнорировали. Зря, зря.
Как проигнорировал?? код ведь как положено оформлен?? просто я скопировал его из консоли пайчарма...

Добавлено через 30 минут
Цитата Сообщение от Viktorrus Посмотреть сообщение
Определяется класс, у которого есть два суперкласса С1 и С2.
Но эти два класса С2 и С3 должны быть определены, до того, как ты начинаешь определять класс С1.
ага я уже допер что к чему
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
01.03.2019, 16:06
Lucky64, Посмотрел пример внимательнее и освежил свою память.
Python
1
2
3
4
5
6
7
8
9
class C2: pass
class C3: pass 
class C1(C2, C3):
    def __init__(self, who):
        self.name = who
 
I1 = C1('bob')             # Создать объекты экземпляров
I2 = C1('mel')
print(I1.name)
Здесь есть одна тонкость и я, восстанавливая ее в памяти, понял, что не совсем правильно объяснил тебе метод __init__. В скобках первой строки этого метода не атрибуты, а аргументы, которые могут быть присвоены атрибутам экземпляра, в качестве значений, а могут быть и не присвоены. Сама инициализация атрибутов происходит внутри метода __init__, с помощью инструкции присваивания = .
Рассмотрим что происходит в данном примере.
После объявления класса
Python
1
class C1(C2, C3):
мы объявляем метод
Python
1
2
    def __init__(self, who):
        self.name = who
где who , это аргумент, который при создании экземпляра должен содержать некоторое значение, как например в строке
Python
1
I1 = C1('bob')
После этого метод __init__ , принимает значение 'bob' для аргумента who и затем с помощью строки
Python
1
        self.name = who
инициирует у экземпляра атрибут name и присваивает ему значение находящееся в аргументе who, то есть 'bob'.

И так, подведем итог.
Инициализация атрибутов экземпляра и присвоение ему значений происходит не в заголовке метода _init__, а внутри него, с помощью инструкций = .
0
 Аватар для Lucky64
20 / 9 / 0
Регистрация: 16.01.2019
Сообщений: 288
01.03.2019, 17:11  [ТС]
так тяжко дается эта глава что-то...

Добавлено через 11 минут
Viktorrus, В голову совсем ничего не лезет больше... 6 страниц осталось и я поймал себя на мысли что просто читаю текст и перестаю его понимать... что за ... буду добивать эту главу завтра, потому что тупо читать это только хуже делать...

Добавлено через 1 минуту
Цитата Сообщение от Viktorrus Посмотреть сообщение
В скобках первой строки этого метода не атрибуты, а аргументы, которые могут быть присвоены атрибутам экземпляра, в качестве значений, а могут быть и не присвоены
на счет этого я в книге уже разобрался, но спс что разжевали

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

Ищу доброго человека, который прособеседует по 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) ...


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

Или воспользуйтесь поиском по форуму:
440
Закрытая тема Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru