Форум сайта python.su
186
Еленочка Если вы учитесь на курсах, то лучше бегите от туда. Вас там “плохому” учат…
Офлайн
0
Ребят, критиковать всегда легко. Я пришла с Си, даже не пришла, а так шторочку открыла офигела, - “какой умный язык”. Данные курсы оплачены работадателем, который сэкономил (“просили, на те”).
Теория вот такая, к данному заданию - https://github.com/alexopryshko/advancedpython/tree/master/1, https://habr.com/ru/post/122082/ .
Второй месяц решаю “ … ” задания, 16 из них сделала, осталось 4, в которых очень тяжело без базы(спасибо, что предложили такой вариант, учту).
Я прекрасно понимаю, как назвать такие курсы.
Мне сейчас “стремно” отступать, что от меня зависит я хочу сделать, тем более осталось несколько дней.
Есть предложения как решить? Отбор ключей - “топорный”, зато голову даю, что работает:D.
________
И это раздел для новичков, так что сохраняйте уважение, сами тоже когда-то были “зеленые”)))))
Офлайн
0
Кстати, __setitem__ и __setattr__ вполне уживаются вместе)
class B(): my_list = {} def __setitem__(self, key, value): self.my_list[key] = value def __setattr__(self, key, value): self.__setitem__(key.lower(), value) b = B() b['a1'] = 25 b.A2 = 30 print(b.my_list)
Офлайн
186
Посмотри курсы на степики. Я не знаю насколько они качественные, но зато бесплатно.
Офлайн
857
ЕленочкаКакие-нибудь программы написала хоть на чём-нибудь?
Я пришла с Си
ЕленочкаМожно было ещё купить акции МММ. И дивиденды потом грести лопатой.
Данные курсы оплачены работадателем, который сэкономил (“просили, на те”).
ЕленочкаПрикрылись именем Бауманки. Продают её имя фактически.
Я прекрасно понимаю, как назвать такие курсы.
ЕленочкаДа много чего можно делать. Только вот надо мышление иметь. И формируется оно через тренировки, которые задаёт теоретическая база, фундаментальная причём, а не высосанная из пальца маленькими мальчиками, прикрывающимися Бауманкой. А если ты пальцем тычешь то туда, то сюда, типа что-нибудь да и выйдет, то это просто метод тыка, который максимум для трактора работает. А программирование гораздо сложнее устроено. Надо иметь мышление, прикреплённое к мышлению, прикреплённому к мышлению, прикреплённому к мышлению. Только тогда будет что-то получаться. А плоскоумное мышление даёт ноль программ в итоге. А без собственных программ ты не программист.
Кстати, __setitem__ и __setattr__ вполне уживаются вместе)
Офлайн
0
Py.user.next, про “прикрепленное мышление” - перебор, в остальном здраво (“правда” она колючая). За первый ответ, когда написал “надо так: …. ”, вот за это спасибо отдельное, учла.
Всем спасибо, за отклики и неравнодушие.
Офлайн
857
ЕленочкаЕсли ты пытаешься плыть, загребая только руками, то ты утонешь. Если ты пытаешься плыть, болтая только ногами, то ты утонешь. А вот если ты пытаешься плыть и загребая руками, и болтая ногами, то ты поплывёшь. Но ты далеко не проплывёшь и утонешь. Нужно ещё правильно дышать и следить за сердцем и температурой воды, чтобы не получить переохлаждение и судороги.
Py.user.next, про “прикрепленное мышление” - перебор
Отредактировано py.user.next (Дек. 24, 2021 02:44:06)
Офлайн
0
py.user.nextЕсли есть время, напиши что подразумеваешь под фундаментальной базой и как формируется мышление. “На нет и суда нет”)
У тебя должны быть выработаны несколько разных мышлений и сцеплены друг с другом
Офлайн
857
ЕленочкаЕсли я тебя спрошу “сколько будет два умножить на три?”, ты станешь калькулятор искать или в уме это вычислишь? Скорее всего, ты скажешь “шесть”, не задумываясь, а ещё знаешь, что “три умножить на два даст то же самое”, потому что их ещё местами можно менять. Откуда у тебя эта способность быстро перемножать в уме и откуда у тебя это знание вполне конкретного свойства множителей в произведении? Это из тренировок, проведённых до этого, и это из теории, рассказанной до этого.
напиши что подразумеваешь под фундаментальной базой и как формируется мышление
ЕленочкаЭта функция - просто говнокод какой-то. Именно из-за этого тебе очень скоро понадобится комментировать чуть ли не каждую строчку в нём типа “смотрите! этот else относится к такому-то if'у! смотрите не перепутайте! так как сама я уже запуталась давно в них, но пишу, пишу, как героиня, как Ленин в ссылке - нас бьют, а Ленин всё равно такой молодой и юный Октябрь впереди”. А после того, как ты его откомментируешь до подробностей, в нём надо будет поменять какой-то участок в связи с чем-нибудь и все эти чудесные комментарии тоже надо будет менять следом за этим участком, а то они будут ложь содержать из-за своей устарелости и запутывать читающего этот код с ними ещё больше (он-то не знает, о чём ты там думала, когда делала этот код, какой рой мыслей был у тебя в голове и каким всё умным и понятным казалось). Через полгода ты не сможешь разобрать этот свой же собственный код, а на вопрос “а в нём есть ошибки?” ты будешь честно отвечать “не знаю… я не знаю…” с каким-то ужасом в глазах.def to_my_list_tuple(self, str_val1, str_val2): key_str = None key_int = None if isinstance(str_val1, int): if str_val1 > 0: if isinstance(str_val2, str): if len(str_val2) == 1 and str_val2.isalpha(): key_str = str_val2.lower() key_int = str_val1 return key_str, key_int else: raise ValueError # return key_str, key_int else: raise ValueError # return key_str, key_int else: raise ValueError # return key_str, key_int elif isinstance(str_val2, int): if str_val2 > 0: if isinstance(str_val1, str): if len(str_val1) == 1 and str_val1.isalpha(): key_str = str_val1.lower() key_int = str_val2 return key_str, key_int else: raise ValueError # return key_str, key_int else: raise ValueError # return key_str, key_int else: raise ValueError # return key_str, key_int elif isinstance(str_val1, str) and isinstance(str_val2, str): if ('.' in str_val1) or ('.' in str_val2) or ('-' in str_val1) or ('-' in str_val2): raise ValueError # return key_str, key_int else: if (str_val1.isdigit()) and (int(str_val1) > 0): if str_val2.isalpha() and len(str_val2) == 1: key_str = str_val2.lower() key_int = str_val1 return key_str, key_int else: raise ValueError # return key_str, key_int elif str_val1.isalpha() and len(str_val1) == 1: if (str_val2.isdigit()) and (int(str_val2) > 0): key_str = str_val1.lower() key_int = int(str_val2) return key_str, key_int else: raise ValueError # return key_str, key_int else: raise ValueError # return key_str, key_int
ЕленочкаЧто это за множество создаётся? и кому оно нужно?def __iter__(self): self.froz_set = frozenset(self.my_set_key) for key in self.my_list: yield key
Отредактировано py.user.next (Дек. 26, 2021 00:14:55)
Офлайн
124
class Field: def __setitem__(self, key, value): setattr(self, self.f(key), value) def __getitem__(self, key): return getattr(self, self.f(key)) def f(self, key): # замечательная функция, представленная pu.user.next if type(key) is str: a, b = key[:len(key) // 2], key[len(key) // 2:] elif type(key) is tuple: a, b = tuple(map(str, key)) out = None if a[0].isalpha() and b[0].isdigit(): out = a.lower() + b elif a[0].isdigit() and b[0].isalpha(): out = b.lower() + a else: raise ValueError return out
Rodegastэтот курс наверное сделан для тех кто программировал на другом языке, чтобы показать какие-то особенности или преимущества языка Python
Если вы учитесь на курсах, то лучше бегите от туда. Вас там “плохому” учат…
Отредактировано xam1816 (Дек. 25, 2021 23:00:40)
Офлайн