Нужна помощь Python программистов

[ Версия для печати ]
Добавить в Telegram Добавить в Twitter Добавить в Вконтакте Добавить в Одноклассники
Страницы: (13) « Первая ... 10 11 [12] 13   К последнему непрочитанному [ ОТВЕТИТЬ ] [ НОВАЯ ТЕМА ]
Poligrafist
22.05.2022 - 03:29
4
Статус: Offline


Ярила

Регистрация: 4.12.11
Сообщений: 2356
весь тред лениво стало. а такое было решение?

Нужна помощь Python программистов
 
[^]
AnastasiiaS
22.05.2022 - 07:09
1
Статус: Offline


Шутник

Регистрация: 21.05.22
Сообщений: 15
Цитата (Непридурок @ 22.05.2022 - 01:30)
Цитата (AnastasiiaS @ 21.05.2022 - 23:31)
Ребят, очень нужна ваша помощь cry.gif
Сестре в 7м классе задали годовую контрольную в Python, я сижу уже 5 часов успехов нет, помогите  pray.gif

Напишите программу:
•выведите фамилию имя ученика
•сгенирируйте случайное четырёхзначное число (выведите его)
•разбейте число на цифры (выведите их)
•Цифры кратные четырём замерите на 1
•поменяйте местами цифры на непарных позициях (тысячи и десятки(1е  и 3е число)
•сформируйте и выведите новое число

вот только пиздеть про 7-й класс не надо, и даже про 10-й.
это для первого класса задача.
думаешь, твоя сестра сможет устроиться программистом, закончив курсы на списанных заданиях? думай.
чем больше таких "программистов" как ТС и твоя сестра, тем лучше для меня.

на
Код

import random

# выведите фамилию имя ученика
print("ФИО ученика")

# сгенирируйте случайное четырёхзначное число
случайное_четырёхзначное_число = random.randint(1000, 9999)

# (выведите его)
print("случайное_четырёхзначное_число = {}".format(случайное_четырёхзначное_число))

# разбейте число на цифры
цифры = list(map(int, str(случайное_четырёхзначное_число)))

# (выведите их)
print("цифры = {}".format(цифры))

# Цифры кратные четырём замерите на 1
цифры = list(map(lambda x: 1 if not x % 4 and x > 0 else x, цифры))

# поменяйте местами цифры на непарных позициях (тысячи и десятки(1е  и 3е число)
ыыы = [цифры[2], цифры[1], цифры[0], цифры[3]]

# сформируйте и выведите новое число
новое_число = int("".join(map(str, ыыы)))
print("новое_число = {}".format(новое_число))


плата - сиськи сестры и твои в студию.

А при чем тут программисты??? Я хореограф и мне это до жопы, сестра тоже явно не по этой стези пойдёт, каждый должен быть на своём месте

И эти задачки точно не уровень 7го класса онлайн-уроков, когда учителя «то нема, то нету». Я себя тупой не считаю, но прочитав кучу статей/половину учебника я ничего не смогла сделать.
 
[^]
AnastasiiaS
22.05.2022 - 07:14
0
Статус: Offline


Шутник

Регистрация: 21.05.22
Сообщений: 15
Цитата (Непридурок @ 22.05.2022 - 01:30)

плата - сиськи сестры и твои в студию.

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

А мне муж не разрешает свои выставлять, но я могу его сфоткать, тоже ниче такие
 
[^]
AnastasiiaS
22.05.2022 - 07:28
0
Статус: Offline


Шутник

Регистрация: 21.05.22
Сообщений: 15
А вот за сделанное задание благодарности моей нет предела, всех расцеловала, девушек вам желаю с большими сиськами, чтобы всегда показывала и потрогать давала :* :* :*
 
[^]
ipv4
22.05.2022 - 10:47
0
Статус: Offline


Ярила

Регистрация: 4.11.09
Сообщений: 7297
Цитата (hime @ 22.05.2022 - 01:15)
Цитата (Constcat @ 22.05.2022 - 00:28)
Раз индустрия "скатывается" в конвейер, значит, финансово это оправдано.
И, как ни странно, говнокод продается, возможно, даже и лучше, чем качественный.

Раз такие слова были верны в моей юности, 20+ лет назад, значит, они были верны и раньше. А значит, так было всегда, ну кроме исключений (опять же как всегда).

Ну, у меня есть своё мнение о причинах таких тенденций. И, думаю, дело не совсем в финансовой составляющей, и не в качестве конечного продукта. Дело в надёжности процесса для работодателя во-первых, а во-вторых - просто критический дефицит квалифицированных разработчиков при большой потребности в разработке.

В результате и появляются "конвейерные" технологии разработки ПО, которые обеспечивают полную заменяемость сотрудников - "не нравится? - дверь там, к нам тут в очередь строятся".... Но строятся в очередь, как правило низкоквалифицированные специалисты ("С++ за 21 день", "из помощников машиниста - в разработчики на С++ за полгода"). Вот и приходится жертвовать стоимостью разработки и надёжностью кода в угоду, скажем так, надёжности управления.

Фактически, я считаю, что 10 обезьян накодят не многим больше одного действительно хорошего специалиста, а денег сожрут больше, ибо кушать хотят все.

Преимуществ именно два, больше не вижу:
1. Сотрудников можно держать в чёрном теле, поскольку заменить можно любого в любой момент.
2. Просто с подбором кадров, поскольку планка требований низкая.

А с учётом дикого дефицита квалифицированных разработчиков, на большой проект можно вообще не собрать команду.

И финансовая составляющая здесь не особо причём. Но, опять же, подчёркиваю: это сугубо моё мнение.
 
[^]
ipv4
22.05.2022 - 10:49
0
Статус: Offline


Ярила

Регистрация: 4.11.09
Сообщений: 7297
Цитата (Constcat @ 22.05.2022 - 00:31)
Aberrant
Цитата
я как-то сделал красивый и качественный код из запутанной функции графика развозов.
а через пол года мне говорят: а теперь добавь туда ещё и чтобы Красноярск ехал по нечётным неделям.

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

О! Золотые слова!
У нас в проекте куча модных "уровней абстракции", специальные "интерфейсы" для взаимоотношений объектов и пр. красота.
Но когда приходится Красноярск запускать по нечётным неделям, дико материшься на всю эту красоту, потому что нужно взламывать большой кусок архитектуры, чтобы впихнуть этот Красноярск и оставить хотя бы видимость логики.

Вы не совсем правы, кмк. Если кроме синтаксической красоты кода, архитектурно также всё в порядке, то ваш Красноярск - хоть по чётный, хоть через антарктиду - всё реализуется просто или очень просто. ))
 
[^]
Constcat
22.05.2022 - 14:46
0
Статус: Offline


Ярила

Регистрация: 9.09.12
Сообщений: 1465
ipv4
Цитата
Фактически, я считаю, что 10 обезьян накодят не многим больше одного действительно хорошего специалиста, а денег сожрут больше, ибо кушать хотят все.

Есть еще один момент. Структура из 10 "обезьян" имеет 10 заменяемых частей.
И в случае различных форс-мажоров, если 2 "обезьян" съест Python (заманив более легким заработком), то 8 "обезьян" не принципиально ухудшат ситуацию.
С одним специалистом все гораздо трагичнее в случае его потери.
Цитата
А с учётом дикого дефицита квалифицированных разработчиков, на большой проект можно вообще не собрать команду.

Для большого проекта нанимается несколько специалистов, которые его создают.
После запуска в продажу, специалисты могут постепенно заменяться на "обезьян".
Более того, это даже приветствуется.
Так как еще один жирный минус хорошего специалиста - сильная зависимость от его профессионализма.
Повторю - я имею ввиду не жизненно важный софт, а офисные прикладнухи и игры.

Это сообщение отредактировал Constcat - 22.05.2022 - 15:30
 
[^]
Constcat
22.05.2022 - 14:51
0
Статус: Offline


Ярила

Регистрация: 9.09.12
Сообщений: 1465
ipv4
Цитата
Вы не совсем правы, кмк. Если кроме синтаксической красоты кода, архитектурно также всё в порядке, то ваш Красноярск - хоть по чётный, хоть через антарктиду - всё реализуется просто или очень просто. ))

Да, если это изначально закладывалось в ТЗ.
Знаю по своему проекту. Туева хуча "слоев абстрактности" (потому что кроссплатформенность), данные управляются сотнями объектов, которые друг с другом общаются либо через события, либо через интерфейсы.И вот туда всунуть что-то, чего изначально не было - тот еще геморрой.
 
[^]
Jobber
22.05.2022 - 14:59
1
Статус: Offline


Ярила

Регистрация: 8.08.09
Сообщений: 3559
Цитата (AnastasiiaS @ 22.05.2022 - 07:14)
Цитата (Непридурок @ 22.05.2022 - 01:30)

плата - сиськи сестры и твои в студию.

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

А мне муж не разрешает свои выставлять, но я могу его сфоткать, тоже ниче такие

Ну так пусть тебе твой муж и помогает dont.gif
Да, и ты уж определись, ты юрист или хореограф?

Это сообщение отредактировал Jobber - 22.05.2022 - 15:00
 
[^]
Aberrant
22.05.2022 - 15:32
0
Статус: Offline


На фоксе! Всегда!

Регистрация: 3.10.20
Сообщений: 2731
Цитата (ipv4 @ 22.05.2022 - 10:49)
Вы не совсем правы, кмк. Если кроме синтаксической красоты кода, архитектурно также всё в порядке, то ваш Красноярск - хоть по чётный, хоть через антарктиду - всё реализуется просто или очень просто. ))

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

расскажу об этом "графике"

клиент выбирает в форме точку отправки (основных было 3, по ним были графики),
затем точку доставки, из формы передаются два параметра: ID-from, ID-to

из БД получаю json строку соответствующего графика,
если она пустая, то всё заканчивается - отдаю клиенту календарик для выбора даты отправления и доставки и дальше с этой заявкой работает логист.

в json строке параметры такие:
массив
d1 - номер дня недели отправки, d2 - день недели доставки, w - буля, 0 и 1 если в пути больше чем 7 дней,
t - время (окно разгрузки), t3 - буля, если 1, то клиент может изменить время разгрузки в форме

для каждого адреса может быть несколько (до 7) пар дней отправки/доставки (основная вилка в этой функции)

выглядит это как: [2,5,0,'19:30,22:00']
тут: вторник-пятница, false, 19:30 - 22:00

растаскиваю массив по переменным, если он один, то я должен предложить клиенту ближайший вторник-пятницу и следующий,
если больше одного массива, то "на следующую неделю" не предлагаю (одна из пар дней и так может оказаться уже на следующей неделе

тут же я должен из ID-to получить ID-города и проверить нет ли его в массиве с ID-городов "исключений",
если он в исключениях, то заявку можно сделать в день отправления,
если нет, то я проверяю текущее время - если больше 18 часов,
то я не могу предложить пару (d1, d2) где d1 завтра...

ну и вот тут начинается веселуха по высчитыванию дат соответственно дням недели на текущей неделе и на следующей.

в общем все эти "сегодня+1день" и "сегодня+неделя+1день" ломают мог конкретно.

ааа, там ещё был один клиент, который мог делать заявки как исключения по городам, т.е. "сегодня на сегодня"

и ещё "ааа": нужно проверять ID-клиента, ибо у некоторых были персональные графики, отличающиеся от общих и тогда я должен предложить "общие пары дней" и к ним добавить "персональные",

когда всё готово, я возвращаю в интерфейс для выбора (радиокнопкой) пары дней, с названиями дней недели на русском, с указанием календарных дат,
номеров недели и временем разгрузки,
если время разгрузки указано и буля t3=0, то просто показываю (красивое),
если время t=00:00 - 00:00, то показываю два поля 'time', если буля t3=1, то два поля 'time' c подстановкой в них t1


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


тут даже в тексте можно запутаться,
а когда начинаешь превращать номер дня недели в дату, следя за "18 часами",
и отправка в понедельник, а доставка может быть тоже в понедельник, но это может быть и 1 день, и 7, а то и вовсе 13 дней в пути...

код был очень запутанный, даже со всеми коментами (для себя), хранимой красивой блок-схемой (для себя), нормальными именами переменных, чтобы не путаться,
всё равно это было адски.
 
[^]
Beard74
22.05.2022 - 15:35
0
Статус: Offline


бородат не по годам

Регистрация: 25.04.11
Сообщений: 11824
Цитата (Ежек @ 21.05.2022 - 14:25)
Доброго дня всем!
Недавно начал изучать основы ЯП Python, написал первую простенькую прогу алгоритма проверки пин-кода для банкомата. Затем решил ее усложнить, введя логику ограничения по выдаваемой суммы, поставив диапазон разрешенной суммы, но столкнулся с проблемой — не могу замкнуть в круг логику условий if/else, до тех пор, пока условие не выполнится.

Пример кода ниже.

pin = 123
user_pin = int(input("Введите пин-код: "))

"""Блок первой попытки"""
if pin == user_pin:
print ("Введите сумму для выдачи от 100 до 10000 руб.:")
сумма = int(input())
if (сумма >= 100) and not (сумма > 10000):
print ("Получите ваши деньги и чек")
else:
#начать ввод суммы сначала, пока пользователь не укажет
правильный диапазон суммы для выдачи

else:
print ("Ошибка. Введите корректный пин-код. У вас осталось 2 попытки")

"""Блок второй попытки"""
.............
..........
...и так далее, т.е. по аналогии идут однотипные первому блоки условий с двумя вариантами завершения программы: пользователь или снимает сумму из обозначенного диапазона чисел или банкомат выводит сообщение о блокировке карты после неудачной последней попытки ввода пин-кода.


Опытные разрабы, помогите советом кто шарит.

Отступы...
без них, код - не читаемый
 
[^]
Aberrant
22.05.2022 - 15:39
1
Статус: Offline


На фоксе! Всегда!

Регистрация: 3.10.20
Сообщений: 2731
Цитата (Beard74 @ 22.05.2022 - 15:35)
Отступы...
без них, код - не читаемый

не читал, но осуждаю lol.gif

в топике это уже обсудили, почти сразу.
 
[^]
rommel13
22.05.2022 - 17:17
2
Статус: Offline


Весельчак

Регистрация: 23.01.13
Сообщений: 179
Цитата (Poligrafist @ 22.05.2022 - 03:29)
весь тред лениво стало. а такое было решение?

да. я на 2 странице писал
 
[^]
Botya666
22.05.2022 - 18:35
0
Статус: Offline


Ярила

Регистрация: 12.01.20
Сообщений: 4004
Цитата (Poligrafist @ 22.05.2022 - 03:29)
весь тред лениво стало. а такое было решение?

Чисто ради интереса - а почему вы пин 0000 не признаете?
 
[^]
Aberrant
22.05.2022 - 19:49
0
Статус: Offline


На фоксе! Всегда!

Регистрация: 3.10.20
Сообщений: 2731
Цитата (Botya666 @ 22.05.2022 - 18:35)
Цитата (Poligrafist @ 22.05.2022 - 03:29)
весь тред лениво стало. а такое было решение?

Чисто ради интереса - а почему вы пин 0000 не признаете?

сейчас не вспомню в каком это банке было,
но 4 одинаковые цифры не давали пином сделать.
возможно, что это распространённая практика.
 
[^]
MPR
22.05.2022 - 20:51
1
Статус: Offline


Ярила

Регистрация: 22.01.16
Сообщений: 6426
Цитата (Botya666 @ 22.05.2022 - 02:02)
Не читал всю тему, но ТСу явно стоит постичь что либо большее, чем if-then-else

Вот что ты злой то такой, ты сейчас всю идею стартапа убил на корню, человек тут захотел собственный банкомат построить и сильно обогатится в кратчайшие сроки не делая нихуя и не открывая мануалы, а вот ты пришел и все обломал
 
[^]
Poligrafist
23.05.2022 - 02:00
0
Статус: Offline


Ярила

Регистрация: 4.12.11
Сообщений: 2356
Цитата (Botya666 @ 22.05.2022 - 18:35)
Цитата (Poligrafist @ 22.05.2022 - 03:29)
весь тред лениво стало. а такое было решение?

Чисто ради интереса - а почему вы пин 0000 не признаете?

признаю. я его установил как пин юзера.
конечно вместо '0000' можно запрашивать любой рандомный пин. но тогда нужно ТС-у дополнительный блок вводить, под названием "Получение карты в банке: установка PIN". Кстати, интересно, как ТС его реализует.
 
[^]
Poligrafist
23.05.2022 - 02:13
0
Статус: Offline


Ярила

Регистрация: 4.12.11
Сообщений: 2356
Цитата (rommel13 @ 22.05.2022 - 17:17)
Цитата (Poligrafist @ 22.05.2022 - 03:29)
весь тред лениво стало. а такое было решение?

да. я на 2 странице писал

посмотрел. при блокировке карты по-моему он у тебя лишний раз выводит строку про пин. а зачем ты зациклил обнал?
 
[^]
Ежек
23.05.2022 - 08:20
0
Статус: Offline


Юморист

Регистрация: 23.09.21
Сообщений: 540
2 Poligrafist
У меня выпадает ошибка синтаксиса why.gif

Это сообщение отредактировал Ежек - 23.05.2022 - 08:27

Нужна помощь Python программистов
 
[^]
Gexxo
23.05.2022 - 08:33
-1
Статус: Offline


Ярила

Регистрация: 4.04.16
Сообщений: 3044
Цитата (Aberrant @ 21.05.2022 - 14:44)
не писал раньше на пайтоне,
но вот глаз задёргался от этого "not"
это зачем тут вообще, если можно тут же написать просто "сумма < 10000"
вторая часть условия всё равно проверяется только после первой,
так что меньше 100 уже не будет.

Сумма

Размещено через приложение ЯПлакалъ
 
[^]
rommel13
23.05.2022 - 08:41
0
Статус: Offline


Весельчак

Регистрация: 23.01.13
Сообщений: 179
Цитата (Poligrafist @ 23.05.2022 - 02:13)
Цитата (rommel13 @ 22.05.2022 - 17:17)
Цитата (Poligrafist @ 22.05.2022 - 03:29)
весь тред лениво стало. а такое было решение?

да. я на 2 странице писал

посмотрел. при блокировке карты по-моему он у тебя лишний раз выводит строку про пин. а зачем ты зациклил обнал?

Ну, чтобы обналичивать частями например... После первой операции должна следовать процедура продолжения операции или прекращения, поэтому и зациклил. Хот я уже не помню :D
 
[^]
Gexxo
23.05.2022 - 10:04
0
Статус: Offline


Ярила

Регистрация: 4.04.16
Сообщений: 3044
Мда, охренительное приложение ЯПлакал, писал там че то писал, в итоге одно слово Сумма запостилось faceoff.gif Короче суть там была в том что not Сумма > 10000 должно инвертироваться в Сумма <= 10000, а не в Сумма < 10000
 
[^]
UlcerMordor
23.05.2022 - 11:32
1
Статус: Offline


Порою нестерпимо хочется

Регистрация: 15.05.20
Сообщений: 853
Цитата (Ежек @ 23.05.2022 - 08:20)
2 Poligrafist
У меня выпадает ошибка синтаксиса why.gif

В предыдущей строке закрывающей скобки не хватает.
 
[^]
Ежек
23.05.2022 - 12:26
0
Статус: Offline


Юморист

Регистрация: 23.09.21
Сообщений: 540
Цитата (UlcerMordor @ 23.05.2022 - 11:32)
Цитата (Ежек @ 23.05.2022 - 08:20)
2 Poligrafist
У меня выпадает ошибка синтаксиса why.gif

В предыдущей строке закрывающей скобки не хватает.

Точно. Исправил, проверил. Код рабочий, но прога имеет небольшой недостаток — нет счетчика количества попыток ввода пин-кода.
 
[^]
Poligrafist
23.05.2022 - 13:02
0
Статус: Offline


Ярила

Регистрация: 4.12.11
Сообщений: 2356
Цитата (Ежек @ 23.05.2022 - 12:26)
Цитата (UlcerMordor @ 23.05.2022 - 11:32)
Цитата (Ежек @ 23.05.2022 - 08:20)
2 Poligrafist
У меня выпадает ошибка синтаксиса why.gif

В предыдущей строке закрывающей скобки не хватает.

Точно. Исправил, проверил. Код рабочий, но прога имеет небольшой недостаток — нет счетчика количества попыток ввода пин-кода.

намеренно не стал вводить.
а так то можно, пятую строчку заменить на:
Код
       print('Неверный пин. Попробуйте повторно. Остаток попыток: ', 2 - count)  
 
[^]
Понравился пост? Еще больше интересного в Телеграм-канале ЯПлакалъ!
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии. Авторизуйтесь, пожалуйста, или зарегистрируйтесь, если не зарегистрированы.
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) Просмотры темы: 6312
0 Пользователей:
Страницы: (13) « Первая ... 10 11 [12] 13  [ ОТВЕТИТЬ ] [ НОВАЯ ТЕМА ]


 
 



Активные темы






Наверх