Сохранен 540
https://2ch.hk/pr/res/1569408.html
24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Тред, посвящённый языку программирования Питон, #77 /python/

 Аноним 11/01/20 Суб 02:52:50 #1 №1569408 
zmeya1.jpg
pythonfunctionargs.png
446558438954f001f2778b.jpg
Тред, посвящённый языку программирования Питон, #77, вечно живому. Встречаем старый новый год и провожаем новогодние каникулы и отпуска.
Предыдущий >>1563834 (OP)

ЧАВО: https://github.com/TheKnightsWhoSayNi/info/wiki/Hat актуальность примерно 2015 года

Книжки: https://yadi.sk/d/HQhhsBsq3TVRUq
Тоже книжки: https://yadi.sk/d/tArKKuQu3Kejuq
Больше книжек: https://yadi.sk/d/H-00n-UG3RSQem
Очень много книжек: https://drive.google.com/drive/folders/13YaFijvuH4dtv-PjUKVWLQ7ZIqXIfCLK <-- похоже ссылка больше не работает, а жаль
Автоматизация рутинных задач ч.2 - https://anonymousfiles.io/3CBCoy1o/ <-- тут только одна книжка. Ради неё держать ссылку в шапке неразумно.

Анон, вместо того, чтобы без разметки постить код, лучше шарь его через специальные ресурсы:
https://ideone.com/ - возможность постить листинги кода и онлайн-запуска, не требует регистрации
https://dumpz.org/ - можно постить листинги, не требует регистрации
https://pastebin.com/ - для листингов, регистрация не обязательна
https://www.codepile.net/ - можно расшарить код в том числе на редактирование, особая полезная опция - чат при каждом листинге, где можно код обсудить
https://pyfiddle.io/ - запуск python кода онлайн, но чтобы шарить, надо регистрироваться
#######################################
Вопросы-ответы:
А стоит ли читать Лутца, том номер N? Мнения в треде разделены. Кто-то за (очень неплохая база даётся), кто-то против (слишком много воды и объём книг убивает всё рвение). В общем - решать тебе, книга вредна не будет, то ты можешь её просто не дочитать и забросить.

Стоит ли читать %книга_нейм%, если там питон версии 2.х? - Нет, не стоит. 100% есть более актуальная книга, для пистона 3.х

А что ещё можно читать? - Питон сам по себе очень хорошо задокументирован, и для уровня начинающих, и для продвинутого. Смотри официальную документацию. Можно начать вот с этого https://docs.python.org/3/tutorial/introduction.html

Есть у кого на примете годный курс лекций по алгоритмам? Формат лекций мне как-то ближе, нежели просто чтение книги. - МФТИшный курс, например, https://www.youtube.com/playlist?list=PLRDzFCPr95fK7tr47883DFUbm4GeOjjc0

Что можно почитать/посмотреть по многопоточности/параллелизации в питоне, да и вообще в целом? - очень годный ролик на американском языке про многопоточность и асинхронность https://www.youtube.com/watch?v=MCs5OvhV9S4

А как учить джангу? Нахожу только книги по джанге 1.х - У джанги отличные доки (одни из лучших для пистоновских либ, имхо), почитай их для начала. Книгу по джанге можно читать и для версий <2, это не проблема, т.к. принципы остаются теми же. Для переката на 2.х хватит changelog`a или тех же самых доков/статей. Начни изучать с разбора учебного приложения с голосовалкой, из официальной документации.

В ньюфаг-треде написано, что нужно начинать с SICP, чтобы научиться программировать - Вот, пожалуйста, та же самая программа, но переработанная под язык Python http://composingprograms.com/ (нужно знать ангельский или уметь пользоваться переводчиком)

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

https://dumpz.org/b37erFzCnRmW
Аноним 11/01/20 Суб 02:57:00 #2 №1569412 
>>1569408 (OP)
>https://dumpz.org/b37erFzCnRmW
По этой ссылке исходник шапки. Если кто готов из неё сделать что-нибудь такое, чтобы тни смотрели и мокли, а остальные слезали с джав и вкатывались в питон - You are welcome!
Аноним 11/01/20 Суб 12:01:46 #3 №1569525 
Анон, недавно начал учить питон, есть вопрос касательно синтаксиса.
Допустим, есть логическая конструкция, которая должна выполняться, если переменная будет иметь несколько значений (допустим, 1, 3 и 5). Есть ли способ записать такое условие проще, чем перечислять условия навроде: x == 1 or x == 3 or x == 5? По наитию попробовал написать x == 1, 3, 5 и x == (1 or 3 or 5) - ни то не другое не работает. Мой первый вариант - единственный рабочий адекватный способ?
Аноним 11/01/20 Суб 12:10:18 #4 №1569526 
>>1569525
if x in {1, 3, 5}:
Аноним 11/01/20 Суб 12:15:40 #5 №1569529 
>>1569526
Спасибо! В этих целях можно также использовать и кортежи, и списки?
Аноним 11/01/20 Суб 12:37:41 #6 №1569542 
>>1569529
и словари ещё можно.
Аноним 11/01/20 Суб 13:05:49 #7 №1569568 
>>1569529
Все итерируеиое.
Аноним 11/01/20 Суб 13:08:41 #8 №1569574 
>>1569412
Гуд джоб, Анон.
Насчёт одной книги в шапке - видимо никого нет из владельцев крупных хранилищ книг, т.к. ее никто никуда не добавил.
Видать придется пилить новое свое хранилище и поддерживать его.
Аноним 11/01/20 Суб 17:15:20 #9 №1570028 
Как в flask файл принять?
Аноним 11/01/20 Суб 17:22:20 #10 №1570035 
>>1570028
хтмл:
<form method="POST" enctype="multipart/form-data">
<input type="file" name="file">
<button type="submit">Отправить</button>
</form>

Контроллер:
if "file" in flask.request.files:
..f = flask.request.files["file"]
..bs = f.read()
..f.close()
Аноним 11/01/20 Суб 17:36:26 #11 №1570047 
>>1570035
Спасибо
Аноним 11/01/20 Суб 17:38:57 #12 №1570050 
image.png
image.png
image.png
>>1569408 (OP)
Заехал в тред на ньюфажий угол.
В общем дрочу себе черепашку, по практикуму курса из шапки и дошел вот до задания с правильными многоугольниками. Никак не доеду, как мне добавить угол, что бы все они получились как на пикрл 1., у меня выходит пик 2.
Пробовал по всякому, но сейчас мне уже как-то настоебало, листинг пик 3. Кто знает/просто хочет помочь, просветите, в долгу не останусь, с меня нихуя
Аноним 11/01/20 Суб 18:06:11 #13 №1570072 
turtle.PNG
>>1570050
ну ты говна наворотил, я тоже по этой хуйне учился, вот нашел свой говнокод
Аноним 11/01/20 Суб 18:06:44 #14 №1570073 
>>1570072
>>1570050
https://pastebin.com/AjMefQNN
Аноним 11/01/20 Суб 18:59:43 #15 №1570109 
>>1570072
>>1570073
Мое увожение, после этой
>turtle.circle()
хуйни пошел в документацию к черепахе, и действительно, там она есть, а в методичке не удосужились поставить почему-то просто пол дня впустую ебался в угадайку с координатами.
Аноним 11/01/20 Суб 19:17:37 #16 №1570120 
Что за хуета, а я не пользовался никаким цирклом, сам считал. Сейчас найду своё
Аноним 11/01/20 Суб 19:26:19 #17 №1570125 
а что насчёт GUI. Кто знает в какой среде программировать начинать лучше, где больше уроков по этим GUI? Где проще и быстрее можно создать приложения для PC?
Аноним 11/01/20 Суб 19:31:20 #18 №1570130 
image.png
>>1570109
>>1570072
Вот мой код, я считаю, нужно было использовать только то, что было дано в методичке. да, названия в кэмэлкэйзе и я присваиваю делаю странную хуйню с переменными в функции, я был молод, так делать не надо
https://pastebin.com/NVvLV9GP
Аноним 11/01/20 Суб 19:35:04 #19 №1570133 
>>1570125
Ты там норкотой закинулся и думаешь, что ты в начале 80-х?
Аноним 11/01/20 Суб 19:37:53 #20 №1570134 
.png
Скину и я свой вариант.

мимо
Аноним 11/01/20 Суб 20:03:05 #21 №1570149 
>>1570125
Гуй на питоне пишут редко. Найти иде для питоне, где из коробки есть Qt Designer или его аналог, ты вряд ли сможешь, придётся всё прикручивать самому. Просто и быстро не будет точно.
Можно вручную создавать формы через PyQt или Tkinter. Кода придётся писать много, но простое приложение сделать сравнительно несложно.
А проще и быстрее делать на плюсах или шарпе. Но они сами по себе намного сложнее питона.
Аноним 11/01/20 Суб 20:43:12 #22 №1570214 
Как можно изменить метод next, чтобы итерироваться по строкам в файле?
Аноним 11/01/20 Суб 21:01:44 #23 №1570229 
>>1570214
Вопрос поставлен супер хуево.
Аноним 11/01/20 Суб 21:06:01 #24 №1570235 
>>1570229
У меня есть класс A,
При создании объекта я передаю туда имя файла
b = A(2ch.hk)
Как переопределить магический метод таким образом, чтобы можно было итерироваться по объекту и выводить информацию, которая есть в файле построчно?

for _ in b:
--print(_)

>сап двач
>мать ебал
Аноним 11/01/20 Суб 21:16:36 #25 №1570242 
>>1570235
Если у тебя функционал класса ограничивается этим, то проще вместо класса сделать функцию, котора принимает имя файла и через yield выдает строки.
Если же нужен класс, то в __iter__ делаешь что-то вроде self.file.seek(0), в __next__ делаешь self.file.readline() и возвращаешь или строку или StopIteration.
Аноним 12/01/20 Вск 01:18:45 #26 №1570454 
Я написал код и не совсем понимаю, как он работает. Можете помочь?
n = int(input())

for i in range(0,n):
____lst = list(map(int, input().split()))
____lst.sort()
____ print(lst[1], end = ' ')

Интересует определение lst. Он берет на вход информацию из инпута в виде целых чисел, дальше выполняется split, потом map, потом это все заворачивается в список, так? А что именно тут делает сплит и мап?
Аноним 12/01/20 Вск 01:27:04 #27 №1570458 
>>1570454
input() - на выходе дает строку (тип str), то есть там будет что-то вроде '24 2 10 11'
str.split() - берет строку и разбивает по пробелам, получая список
'24 2 10 11' -> ['24', '2', '10', '11']
map(f, l) - берет f и для каждого элемента x из l применяет f(x), здесь map(int, ['24', '2', '10', '11']) тоже самое что и:
int('24'), int('2'), int('10'), int('11')
Но map возвращает не список, а специальный объект, поэтому его превращают в список list
Аноним 12/01/20 Вск 01:40:10 #28 №1570464 
15497185776591.mp4
>>1570458
Охуеть. Спасибо большое!
Аноним 12/01/20 Вск 13:26:51 #29 №1570715 
Что быстрей?
Получать один кусок данных из бд(монгодб) и сортировать его через пайтон.
Или сразу получать несколько но уже отсортированных кусков данных из бд.
Аноним 12/01/20 Вск 13:29:25 #30 №1570716 
>>1570715
Запусти профилировщик и посмотри. Вангую, что сортировка в питоне будет жрать памяти немерено.
Аноним 12/01/20 Вск 13:52:27 #31 №1570744 
>>1570715
Кстати, монгодб уже умеет не загружать всю базу в оперативную память при восстановлении после некорректного завершения работы?
Аноним 12/01/20 Вск 14:07:00 #32 №1570755 
>>1570235
def __iter__(self):
__with open(self.filepath) as f:
____for line in f.read().splitlines():
______yield line
Аноним 12/01/20 Вск 14:20:53 #33 №1570772 
Простите за глупый вопрос.

Есть желание выучить python. Вернее мне предложили это сделать на работе. Но навыки программирования у меня следующие:
1)Писал что-то для микроконтроллера на си в универе. Писал криво, без каких-либо правил программирования
2) писал скрипты и макросы для эксель
3) написал сайт в универе, который хранил логины и пароли в SQL
4) написал табличку в борлэнд с++ билдер на ~250 строк кода.
То есть мне нужно обучаться почти с самого нуля в целом программированию, а не только пайтону. И это вводит меня в ступор. Все ссылки выглядят так будто они уже для тех, кто знает программирование.

Я правильно понимаю, что лекции от мфти будет идеальным вариантом для начала вкатывания? Или лучше какую-нибудь книжку.
И где брать практику.
Аноним 12/01/20 Вск 15:05:58 #34 №1570806 
function all_the_same at 0x0181C220

Подскажите, плиз, что с этой ебаниной делать? Бесит ужасно, но всегда проёбываю , что я сделал перед ней и потому не знаю из-за чего это и как фиксить
Аноним 12/01/20 Вск 15:09:07 #35 №1570811 
>>1570806
М... Вызвать?
Наверное, ты принтишь саму функцию вместо того, чтобы её вызвать и принтить результат.
Аноним 12/01/20 Вск 15:09:42 #36 №1570813 
>>1570811
Спасибо, на будущее запомню
Аноним 12/01/20 Вск 15:31:55 #37 №1570821 
>>1570772
>выучить python
Что именно ты под этим подразумеваешь? Веб-разработка, фуллстак, машин лернинг, шкрепты для автоматизации какой-нибудь хуйни на работе?
Аноним 12/01/20 Вск 16:32:47 #38 №1570854 
>>1570821
Нейронные сети. Именно они. Скрипты я умею писать
Аноним 12/01/20 Вск 16:35:40 #39 №1570855 
>>1570854
не лезь блять, дебил сука ебаный. ты чо хуел, я те сказали чтоли. залесь нахрен нахуй обратно блять! Дебил бляять.
ОНА ТЕБЯ СОЖРЁТ, БЛЯТЬ! НАХУЙ ТЫ..
ААААААААА
БЛЯЯЯТЬ! СС
ЁЁЁЁЁ
СУКА! ЕБАН (АААААААААА)
(кряхтя) блиять
ААААААААААААААААААААААААААА

ДА БЛЯЯЯЯЯЯТЬ СУКА
Аноним 12/01/20 Вск 16:47:46 #40 №1570868 
>>1570855
ахахах мемы))
Аноним 12/01/20 Вск 17:18:46 #41 №1570901 
>>1570855
Я молод, у меня все в порядке с математикой (знаю хорошо ТОЭ, ТАУ, думаю выучить что-то еще не составит труда, у меня есть желание заниматься чем-то сложным, но хоть на 5% интересным, я думаю, что я буду хорошим и уникальным специалистом если совместить мои знания технологии с навыками работы нейросетей.
Но если опишешь подводных медведец то буду рад
Аноним 12/01/20 Вск 17:29:10 #42 №1570909 
>>1570901
Так а зачем тебе питон тогда? Если ты знаешь математику и хочешь чем-то интересным с нейросетями заниматься, тебе скорее нужны алгоритмы и плюсы.
Аноним 12/01/20 Вск 17:42:42 #43 №1570920 
>>1570909
В компании уже с python'ом работают. Да и , вроде, все курсы онлайн школ, что я видел на нем учат с нейросетями работать.
Я хочу к этим курсам подготовиться
Плюс моя математика не отличная, просто лучше, чем у рядового выпускника тех. вуза по моей специальности. Я же не на примате учился и не в MIT.
Аноним 12/01/20 Вск 17:51:16 #44 №1570923 
>>1570909
Ну я не против начать изучать программирование с азов. Но только не стой скоростью, что предлагают всякие скиллбоксы. Начать я могу и с самообучения, а уже потом думаю взять курс на нетологии по машинному обучению
Аноним 12/01/20 Вск 18:12:05 #45 №1570932 
>>1570050
Какого такого курса ?
Аноним 12/01/20 Вск 18:33:25 #46 №1570943 
>>1570854
Тогда тебе лучше в машоб тред. Тут учат циклы и манипуляции со списками.
Аноним 12/01/20 Вск 18:38:23 #47 №1570946 
cachedfile15779973884321.mp4
>>1570943
Аноним 12/01/20 Вск 20:06:38 #48 №1571007 
>>1570943
Спасибо, анон
Аноним 12/01/20 Вск 20:51:26 #49 №1571047 
image.png
>>1570932
Из шапки
Аноним 12/01/20 Вск 21:37:22 #50 №1571085 
Это немного не по теме треда, но как вы печатаете? Я сейчас пытаюсь научиться десятипальцевой печати, но прогать ей вообще невозможно, из-за того, что половина символов приходится на правый мизинец, ещё эти постоянные нижние подчёркивания
Аноним 12/01/20 Вск 21:41:10 #51 №1571089 
>>1571085
Как придётся, никогда не заморачивался с этим. Открыл как-то картинку, где было изображено правильное положение пальцев в десятипальцевом, попробовал, не осилил, закрыл.
Вот бы хоть один из этих "методов правильного печатания" помогал быстрее переучиваться с одной клавиатуры на другую.
Аноним 12/01/20 Вск 21:53:25 #52 №1571097 
>>1571085
Переходи на дворак, намного удобнее для десятипальцевой печати
Аноним 12/01/20 Вск 21:54:30 #53 №1571098 
У меня есть большой список из 365 интов. Мне нужно сумму каждых 7 интов в этом списке поделить на первое, второе, третье и т.д. число в другом списке и сложить их в другой список, т.е. грубо говоря:
result = []
lst1 = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,....,365]
lst2 = [5,10,15,.......]

result = [
((1+2+3+4+5+6+7)/5),
((8+9+10+11+12+13+14)/10),
........
]

Как это сделать?
Аноним 12/01/20 Вск 22:03:52 #54 №1571107 
>>1571098
Бежать по первому списку циклом с шагом 7, брать от текущего элемента слайс из 7 элементов и делить на нужный элемент второго списка
Например, так:
j = 0
for i in range(0, len(lst1), 7):
..result.append(sum(lst1[i:i+7]) / lst2[j])
..j += 1
Аноним 12/01/20 Вск 22:10:54 #55 №1571110 
Есть файл с n-нным количеством строк, нужно эти строки считать, но так, чтобы все было в одну строчку (без переходов на новую строку). Пробовал replace() заменить все '\n' на ' ', но никаких изменений не произошло. Може кто знает как эти строки из файла соеденить в одну сплошную строку?
Аноним 12/01/20 Вск 22:15:02 #56 №1571113 
ААААААААААААААААААААААААА
ЁБАНЫЙ ЗАПРОС НЕ РАБОТАЛ ИЗ-ЗА ССАНОЙ ЗАПЯТОЙ БЛЯТЬ ПИЗДЕЦ
СУКА
Аноним 12/01/20 Вск 22:16:42 #57 №1571114 
>>1571089
У меня как придётся получается 25 слов в минуту, во всяких туториалах не успеваю, за ютуберами, догоняю, пока они пиздят.
>>1571097
Посмотрел, реально удобнее выглядит, но надо ещё, наверное, скобки куда-нибудь на левую руку перенести
>>1571113
sqlite3? Подавал туда одну переменную, вместо кортежа? Мне хватило минут 15 чтобы понять в чём проблема
Аноним 12/01/20 Вск 22:18:51 #58 №1571117 
>>1571114
> Подавал туда одну переменную, вместо кортежа?
Ага.
Надо '''запрос, (a,)''' вместо '''запрос, (a)'''.
Аноним 12/01/20 Вск 22:24:53 #59 №1571126 
>>1571110
>
Может, у тебя там ещё и '\r' ?
Аноним 12/01/20 Вск 22:31:35 #60 №1571135 
>>1571113
Это не ссаная запятая, это разные типы данных.
Аноним 12/01/20 Вск 22:35:08 #61 №1571141 
>>1571126
Ну да, я же файл на чтение открываю
Аноним 12/01/20 Вск 22:42:02 #62 №1571155 
>>1571141
Не, я про символ возврата каретки. Короче, кроме замены \n попробуй ещё сделать replace('\r', ' ')
Аноним 12/01/20 Вск 23:45:43 #63 №1571223 
>>1571107
От души, братишка.
Аноним 12/01/20 Вск 23:47:27 #64 №1571224 
cover4.jpg
Какие часто используемые паттерные в flask/django?
Хочу почитать, так бы банду четырех почитал бы, но время ограниченно
Аноним 12/01/20 Вск 23:49:53 #65 №1571230 
>>1571155
Спс, сработало )
Аноним 12/01/20 Вск 23:59:24 #66 №1571243 
a = [[1,2,3]]*2
a[0].remove(1)
print(a[1])

почему?
Аноним 13/01/20 Пнд 00:06:26 #67 №1571255 
>>1571243
v = [1,2,4]
a = [v,v]
v.remove(1)
Аноним 13/01/20 Пнд 00:08:54 #68 №1571256 
>>1571255
ясно, это пиздец
Аноним 13/01/20 Пнд 00:11:10 #69 №1571258 
image.png
>>1571243
Ты берешь один объект списка [1,2,3] и два раза ложишь ссылку на него в список a. Потом этот объект меняешь.
Аноним 13/01/20 Пнд 00:15:07 #70 №1571262 
>>1571243
Можно ещё так, чтобы списки были разными объектами:
a = [[1,2,3] for _ in range(2)]
Аноним 13/01/20 Пнд 00:25:49 #71 №1571282 
>>1571258
Клево объяснил, спасибо
Аноним 13/01/20 Пнд 00:49:59 #72 №1571302 
Сап, ньюфаг на связи. Куда можно вкатиться с питоном? Только в бэкэнд и дата сайнс? Или есть еще что-то?
Аноним 13/01/20 Пнд 01:03:17 #73 №1571314 
>>1571302
В цирк
Аноним 13/01/20 Пнд 01:06:43 #74 №1571316 
>>1571314
Питонист слабее тигра и льва, но в цирке не выступает.
Аноним 13/01/20 Пнд 09:08:50 #75 №1571410 
Годнота на подходе
https://www.kickstarter.com/projects/sentdex/neural-networks-from-scratch-in-python
Аноним 13/01/20 Пнд 09:09:56 #76 №1571411 
>>1571302
Тестирование автоматизированное
Аноним 13/01/20 Пнд 11:18:10 #77 №1571498 
Нашёл видос на ютубе, как написать парсер на питоне для headhunter
https://www.youtube.com/watch?v=lgGkBh8IUok

Списал код, а он не пашет, это вообще нормальная ситуация в программировании?

Полный 0 в программировании пытается пиздить чужой код
Аноним 13/01/20 Пнд 11:20:01 #78 №1571500 
>>1571498
Код забыл!


import requests
import csv
from bs4 import BeautifulSoup as bs

headers={'accept': '/',
'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10 14 2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'}

base_url='https://hh.ru/search/vacancy?area=1&search_period=3&text=python&page=0'

def hh_parse(base_url, headers):
jobs=[]
urls=[]
urls.append(base_url)
session=requests.Session()
request=session.get(base_url, headers=headers)
if request.status_code == 200:
request = session.get(base_url, headers=headers)
soup = bs(request.content, 'lxml')
try:
pagination = soup.find_all('a', attrs={'data-qa': 'pager-page'})
count = int(pagination[-1].text)
for i in range(count):
url = f'https://hh.ru/search/vacancy?area=1&search_period=3&text=python&page={i}'
if url not in urls:
urls.append(url)
except:
pass

for url in urls:
request = session.get(url, headers=headers)
soup = bs(request.content, 'lxml')
divs = soup.find_all('div', attrs={'class': 'vacancy-serp-item'})
for div in divs:
try:
title = div.find('a', attrs={'data-qa': 'vacancy-serp__vacancy-title'}).text
href = div.find('a', attrs={'data-qa': 'vacancy-serp__vacancy-title'})['href']
company = div.find('a', attrs={'data-qa': 'vacancy-serp__vacancy-employer'}).text
text1=div.find('div', attrs={'data-qa': 'vacancy-serp__vacancy_snippet_responsibility'}).text
text2=div.find('div', attrs={'data-qa': 'vacancy-serp__vacancy_snippet_requirement'}).text
content = text1 + ' ' + text2
jobs.append({
'title': title,
'href': href,
'company': company,
'content': content
})
except:
pass

print(len(jobs))
else:
print('ERROR or Done' + str(request.status_code))
return jobs

def files_writer(jobs):
with open('parsed_jobs.csv', 'w') as file:
a_pen = csv.writer(file)
a_pen.writerow(('Название вакансии', 'URL', 'Название компании', 'Описание'))
for job in jobs:
a_pen.writerow((job['title'], job['href'], job['company'], job['content']))

jobs = hh_parse(base_url, headers)
files_writer(jobs)


Полный 0 в программировании пытается пиздить чужой код
Аноним 13/01/20 Пнд 11:20:55 #79 №1571501 
>>1571500
Сука, чё за tttt

Полный 0 в программировании пытается пиздить чужой код
Аноним 13/01/20 Пнд 11:26:31 #80 №1571505 
>>1571501
И что ты хочешь чтобы мы сделали? Покормили тебя с ложечки?
Аноним 13/01/20 Пнд 12:17:27 #81 №1571542 
>>1571498
Не списывай просто, пока хуй в видосе печатает, ты тоже печатай. Когда он будет пробовать, как работают куски его программы ты тоже пробуй, короче, делай, всё что он делает.
Аноним 13/01/20 Пнд 12:29:43 #82 №1571549 
>>1571542
Хорошо, спасибо, попробую
Аноним 13/01/20 Пнд 12:31:16 #83 №1571552 
1379502562830.jpg
Почему при наполнении множества уникальными словами (>2000) из 3мб текста мне не хватает 30 гигов озу?
Аноним 13/01/20 Пнд 12:34:31 #84 №1571556 
>>1570464
что за фильм?
Аноним 13/01/20 Пнд 13:01:59 #85 №1571566 
>>1571552
Множество как и словарь по своему условию потребляет больше памяти чем другие типы данных, но у тебя очевидный косяк.
Аноним 13/01/20 Пнд 13:05:43 #86 №1571570 
>>1571552
Вангую 2000 множеств и код в функцианальном стиле.
Аноним 13/01/20 Пнд 13:14:19 #87 №1571574 
>>1571047
не могу найти
Аноним 13/01/20 Пнд 13:17:29 #88 №1571578 
>>1571570
input_characters = set()

for sent in input_texts:
____input_sentlist = sent.split(' ')
____for word in input_sentlist:
________if word not in input_characters:
____________input_characters.add(word)
Аноним 13/01/20 Пнд 13:28:14 #89 №1571597 
>>1571578
input_characters = {}

for sent in input_texts:
____input_sentlist = sent.split(' ')
____for word in input_sentlist:
________input_characters[word] = True

input_characters = input_characters.keys()


попробуй вот так, должно меньше кушоть
Аноним 13/01/20 Пнд 13:44:54 #90 №1571623 
>>1571597
На 3% быстрее.
Аноним 13/01/20 Пнд 13:54:15 #91 №1571642 
Я ничё понять не могу. Вот у меня есть функция os.rename(name,nName). Она выполняется только при условии, что я нажал кнопку (Гуи запилен на tkinter)

yesButton=Button(frameButtons12, text="Rename", command=BSave(entryRe))

Если я заместо nName подставляю какую-то определённую строку, то код выполняется. Но когда я оставляю там переменную, которая должна браться из поля ввода entry

nName = entryRe.get()

то выскакивает ошибка

FileNotFoundError: [WinError 3] Системе не удается найти указанный путь: 'New_Text_3' -> ''

Да, как бы там действительно пусто и я понимаю, почему система не может записать файл с нулевым названием. Но я не понимаю, почему программа заранее считает что в поле ввода entry пусто, ведь команда os.rename идёт уже после получения содержимого поля entryRe

nName = entryRe.get()
os.rename(name,nName)

Следовательно сперва должно идти получение содержимого а уже потом переименование

Полный код
https://pastebin.com/tHa6QLDm
Аноним 13/01/20 Пнд 14:07:10 #92 №1571656 
image.png
image.png
Не могу понять, как мне составить гистограмму с частотой показателей в массиве c числами.
Я хочу, чтобы по оси у была указана частота в процентах, сколько у меня встречается это значение, а по оси х - сам показатель, как на первом пикрелейтеде.
А выходит у меня второй пикрелейтед, что являет собой полную хуету.
Код: https://pastebin.com/UNX3wuNs
Аноним 13/01/20 Пнд 14:35:38 #93 №1571681 
>>1569408 (OP)
Аноны, как вы увидели, эта ссылка не работает https://drive.google.com/drive/folders/13YaFijvuH4dtv-PjUKVWLQ7ZIqXIfCLK
Возможно есть другая ссылка на такой же диск, что был по этой? Поскольку по этой ссылке было больше всего книг, не хотелось бы терять такой замечательный диск.
Аноним 13/01/20 Пнд 15:08:26 #94 №1571704 
>>1571681
Забей на рутрекере "python pdf" и получишь точно такой же замечательный диск.
Аноним 13/01/20 Пнд 16:29:08 #95 №1571805 
TcgnM9r0TuI.jpg
Ребзи, я тоже нуфаня, поэтому строго не обоссывайте. Суть: Работаю с джангой, про рест апи почти ничего не знаю. Вообщем появилась задача сделать рест апи сервис для джанго приложения, однако рест джанги (Django Rest Framework) использовать нельзя. Вопрос: где-то можно посмотреть, как это реализовывать? Может туторы/гайды где-то есть, или видео? Подскажите пожалуйста молодому джуну
Аноним 13/01/20 Пнд 16:34:40 #96 №1571811 
>>1571805
Джуны умеют гуглить, а ты нет, ты не джун.
Аноним 13/01/20 Пнд 17:05:38 #97 №1571844 
SELECT song_name FROM Info WHERE id=1
как выполнить такой запрос через sqlalchemy?
делаю так:
db.session.query(Info.song_name).get(1)
выдает:
sqlalchemy.exc.InvalidRequestError: get() can only be used against a single mapped class.
Аноним 13/01/20 Пнд 17:25:54 #98 №1571866 
euros_count = 100
euros_per_dollars = 100 1.25
dollars_per_rubles = euros_per_dollars
60
print(euros_per_dollars\ndollars_per_euros)


Как при помощи \n перенести строку между переменными ?


Аноним 13/01/20 Пнд 17:27:49 #99 №1571867 
>>1571866
print(..., end="\n") ???
Аноним 13/01/20 Пнд 17:28:15 #100 №1571869 
>>1569408 (OP)
Сап, как крякнуть pycharm про, если 30 дней триала прошло? В инструкции написано зайти в "Configure" или "Help" и зайти в "Edit Custom VM Options..."

А я не могу туда зайти, из-за того что триалка кончилась
Аноним 13/01/20 Пнд 17:28:55 #101 №1571872 
>>1571867
нет только \n можно end не проходили еще
Аноним 13/01/20 Пнд 17:31:31 #102 №1571876 
>>1571869
все, фиксанул, сорян
Аноним 13/01/20 Пнд 17:32:08 #103 №1571877 
>>1571872
Что значит не проходили? У вас в школе для даунов запрещено брать информацию с интернета? Лол
Аноним 13/01/20 Пнд 17:32:27 #104 №1571879 
>>1571867
А всё нашел сорян эта поебота только внутри ковычек
Аноним 13/01/20 Пнд 17:37:28 #105 №1571880 
>>1571869
на торрентах без триала крякается, для линухи и для венды есть
Аноним 13/01/20 Пнд 17:39:10 #106 №1571882 
>>1571811
Я нашёл только принципы как это работает и небольшие примеры. А мне нужно создание полноценного сервиса, ибо я полный ноль в этом, к тому же время сильно ограничено. Поэтому тут и спросил, мб кто знает.
Аноним 13/01/20 Пнд 17:42:10 #107 №1571884 
>>1571877
незя и ваще это то же не работает я ужу сделал даунским методом
Аноним 13/01/20 Пнд 17:44:43 #108 №1571886 
>>1571882
как вариант глянуть в книге django by example или там best practics
Аноним 13/01/20 Пнд 17:54:42 #109 №1571891 
>>1571877
Точнее способом
Аноним 13/01/20 Пнд 18:44:04 #110 №1571912 
>>1571877
Это всё каадратно-гнездовой способ преподавания людьми, которые ни дня не работали программистами, но зато "уважаемые профессора, которые преподают больше 50 лет".
Аноним 13/01/20 Пнд 19:23:49 #111 №1571932 
>>1569408 (OP)
Ребят, подскажите, плиз больше сайтов с задачками, желательно чтобы был раздел с элементарными. Ебусь с обработками массивов по два дня, хочу надрочиться на лайтовых задачках чтобы легче телега ехала
Аноним 13/01/20 Пнд 19:32:05 #112 №1571938 
B8DD1A7D-416E-4D6B-AD59-9EED3371092D.jpeg
>>1571932
но... в питоне нет массивов
Аноним 13/01/20 Пнд 19:39:00 #113 №1571946 
>>1571938
ну списки ёпта какая разница то =) одна хуйня
Аноним 13/01/20 Пнд 19:39:18 #114 №1571947 
>>1571912
Да я курс на сайте прохожу нету там вообще никого успокойся
Аноним 13/01/20 Пнд 19:40:15 #115 №1571948 
Утро в хату. Есть один скрипт на питоне, который я хочу зараспространить среди свой компании в виде веб-сервиса (доменное имя для меня уже подготовили, нжинкс я поднял).
Вопрос в том, как мне запиздрячить на страничку свой питоновский код?
Иными словами, хочу поднять на нжинксе страничку, где будет кнопка, например "зделоть пиздато". По нажатии на кнопку запускается мой питоновский скрипт, и юзер получает результат, например выводится сообщение "зделоно".

В идеале мне нужно будет подучить жс, чтобы вывести кнопки к себе на страничку, но в целом, я даже хз, куда копать, что смотреть, какие гайды брать?
Аноним 13/01/20 Пнд 19:47:34 #116 №1571956 
>>1571948
> нжинкс
Ахахахах

Поднимай uwsgi. Или хотя бы апач с mod_wsgi
Аноним 13/01/20 Пнд 20:05:17 #117 №1571977 
>>1571956
Почему? Какая разница?
Аноним 13/01/20 Пнд 20:12:05 #118 №1571985 
>>1571977
nginx - это по большей части либо раздача статического контента (то есть никакого бекенда с логикой), либо прокси, то есть пересылка всех запросов на другой порт, на котором запущено приложение.
Аноним 13/01/20 Пнд 20:46:25 #119 №1572033 
>>1571985
По-твоему на нжинксе нельзя поднять веб аппликуху, которая сделает одно действие?
Аноним 13/01/20 Пнд 20:52:04 #120 №1572039 
>>1572033
Можно, конечно. Есть даже какие-то плагины.
А ещё можно вообще без отдельного сервера обойтись и всё сделать на питоне.
Аноним 13/01/20 Пнд 20:53:33 #121 №1572041 
>>1571948
Не проще ли на фласке это сделать?
мимопытаюсьвкатиться
Аноним 13/01/20 Пнд 21:04:33 #122 №1572046 
>>1572039
>>1572041
Вот я и прошу помощи. Если можно сделать на фласке - есть ли годный гайд, как это все организовать? Особенно по сетевой части, а то я вообще в этом не разбираюсь. Мне вот в нашей корпоративной локалке выдали домен - vpupkin.ln, я смогу на нем захостить свое приложение? Я просто думал, что это ток через веб сервер можно сделать, там резолв просто организуется.
Аноним 13/01/20 Пнд 21:04:38 #123 №1572047 
>>1571938
А не пиздишь ли ты часом?
import array
Аноним 13/01/20 Пнд 21:17:05 #124 №1572055 
>>1572046
Почитай по фласку пару туториалов каких-нибудь. Там можно на определённый URL (например, /) повесить функцию-обработчик, в которой можно вызвать твой скрипт, например.
Фласк сам по себе веб-сервером не является, но с ним идёт сервер для разработки/отладки. Его всерьёз использовать не рекомендуется, но вдруг для нужд вашей организации хватит.
Просто повесить в автозапуск скрипт, он будет слушать какой-нибудь порт и вызывать обработчик.

А ещё можно использовать cgi, но там всё несколько сложнее, да и в 2020 никто так не делает.
Аноним 13/01/20 Пнд 21:18:01 #125 №1572058 
>>1572055
Ну или даже не фласк, а bottle.
Аноним 13/01/20 Пнд 21:18:47 #126 №1572059 
>>1572046
Хостишь приложение не на домене, а на сервере. Для адреса vpupkin.ln необходимо в A записи указать ip адрес сервера на котором будет твое приложение.
Аноним 13/01/20 Пнд 21:22:51 #127 №1572066 
>>1571556
Серьезно? Индиана Джонс 3.
Аноним 13/01/20 Пнд 21:24:57 #128 №1572071 
>>1572059
А что такое А запись?
>ip адрес сервера
Это адрес моего компа в нашей локалке, получается? Доступ к аппликухе будет только из-под нашей локалки.
Аноним 13/01/20 Пнд 21:26:07 #129 №1572072 
>>1572055
Можно с фласком на replit поиграть и понять подойдет или нет
https://repl.it/repls/MindlessFoolhardyDaemons
Аноним 13/01/20 Пнд 21:30:35 #130 №1572081 
>>1572071
>А-запись указывает адрес, куда должен ссылаться Ваш домен. Обычно это адрес хостинг-сервера, на котором располагается контент (содержимое) сайта.
>Это адрес моего компа в нашей локалке, получается?
Если приложение будет на твоем компе запускатся то да, но возможно нужно будет какие-нибудь порты пробросить. Если я ошибаюсь пусть мудрый анон меня поправит
Аноним 13/01/20 Пнд 21:53:05 #131 №1572108 
cover4.jpg
- SELECT song_name FROM Info WHERE id=1
- db.session.query(Info.song_name).filter(Info.id == 1).one()
для sql запроса через alchemy это единственный короткий способ?
Когда пишу Info.query(Info.song_name).filter(Info.id == 1).one() то арёт на TypeError: 'BaseQuery' object is not callable
И стоит ли пользоваться select'ом на чистом sql запрашивать когда есть обертка sqlalchemy

Аноним 13/01/20 Пнд 22:52:35 #132 №1572153 
Запихивать в докер небольшой скрипт пингующий сервера и алертящий в слак, если они легли, ок или из пушки по воробьям?
Аноним 13/01/20 Пнд 23:18:45 #133 №1572182 
>>1572153
А зачем в докер? Пускай так крутится.
Аноним 13/01/20 Пнд 23:56:11 #134 №1572229 
>>1572182
>А зачем в докер?
¯\_(ツ)_/¯
Аноним 14/01/20 Втр 02:45:28 #135 №1572308 
>>1572182
Ты шо, сейчас же модно все докер сунуть, что б было.
>>1572153
Сама идея то норм, почему нет? Сунуть в докер возможно не стоило, но ради опыта - ок.
Если тебе по работе надо такое, то взгляни на готовые сервисы ибо функционал там шире.
Аноним 14/01/20 Втр 05:23:06 #136 №1572320 
>>1571642
Бамп
Аноним 14/01/20 Втр 08:06:53 #137 №1572348 
>>1571947
М-да, вот вам и курсы. А ещё кто-то говорит, что книги/учебники нинужны.
Аноним 14/01/20 Втр 08:18:50 #138 №1572352 
>>1572348
По книжке я тож занимаюсь, иди нах уже короче быдло
Аноним 14/01/20 Втр 11:41:44 #139 №1572459 
>>1572352
Вангую у тебя было задание по конкатенации строк и тебе надо было
Str1 + '\n' + str2 но ты попал под троллинг
Аноним 14/01/20 Втр 13:43:48 #140 №1572508 
>>1572459
Все так, я почему то забываю про кавычки все время. Книга эта конечно пиздец "Изучаем питон", сначала две три страницы "отборных" данных и прочих примеров, а потом -"Ну если вы новичок можете не акцентировать на этом внимание"
В этом плане курсы героиновые https://ru.code-basics.com/ подиничамичнее, поэтому я комбинирую.
Аноним 14/01/20 Втр 15:11:06 #141 №1572588 
>>1572508
Я лично щитаю, что нужно сначала пройти укус питона, получить знания синтаксиса, а потом зная синтаксис сразу в курс хирьянова по алгоритмам, там практики дохуя, как раз надрочишься.
А лутц хуета.
Аноним 14/01/20 Втр 15:13:49 #142 №1572593 
>>1572588
А пройти пару курсов на метаните норм?
Аноним 14/01/20 Втр 16:15:34 #143 №1572634 
>>1572588
Этого чела когда начал сразу кинул в избранное, нихуя не понятно но ясно что пригодится
Аноним 14/01/20 Втр 16:19:41 #144 №1572635 
>>1572593
Ачо батее codebasics или метанин ?
Аноним 14/01/20 Втр 16:26:55 #145 №1572642 
>>1572593
>>1572635
Тут многие почему-то гонят на метанит, так что.
Аноним 14/01/20 Втр 16:32:32 #146 №1572648 
как реализовать пустой указатель на python
Нужно что-то проинициализировать, а уже потом присваивать
Аноним 14/01/20 Втр 16:34:46 #147 №1572649 
>>1572648
имя = None
Аноним 14/01/20 Втр 19:22:37 #148 №1572777 
Сап, питонач, есть пара полей на форме, и нужно проверить их на содержимое. Надо ли проверку по каждому полю выделять в отдельную функцию а потом вызывать их в рамках ещё большей функции или захуячить в одну большую? Не много if-else'ов будет?
Аноним 14/01/20 Втр 20:24:57 #149 №1572839 
>>1572777
Если пишешь код, который будут читать другие люди то с таким подходом захуячить нужно тебя, то конечно нужно сделать несколько коротких легкочитаемых методов. А еще лучше нати готовое решение для валидации.
Аноним 15/01/20 Срд 06:18:53 #150 №1572994 
Практика программирования на Python 3, лекция №1 или
Алгоритмы на Python 3. Лекция №1

Это одно и то же ??? Что выбрать ? Есть кто уже Хирьянова смотрел ?
Аноним 15/01/20 Срд 06:23:55 #151 №1572995 
>>1572994
Алгоритмы выбирай
Аноним 15/01/20 Срд 06:26:43 #152 №1572996 
>>1572995
Ты смотрел или на слово сбайтился ? дело в том что это один и тот ж курс прост названия разные прост один новее (вроде так)
Аноним 15/01/20 Срд 07:29:24 #153 №1573000 
>>1572996
Нет, не так
Аноним 15/01/20 Срд 07:36:29 #154 №1573001 
>>1573000
Смотрю, первую лекцию, то же самое
Аноним 15/01/20 Срд 08:38:44 #155 №1573012 
>>1573001
Остальные посмотри, заебал
Аноним 15/01/20 Срд 08:40:02 #156 №1573014 
>>1573012
Бля у этих лекций даже одна и та же практика. Твои действия ? Хочешь сказать разница только в риторике ?
Аноним 15/01/20 Срд 08:41:41 #157 №1573015 
Не очень понимаю, что значит stateless. Вот например есть antihammering защита какая-то на сервере, сохраняется некоторый список айпишников или логинов и время, в течение которого от них нельзя принимать попытки войти, это же уже некоторое состояние?
Аноним 15/01/20 Срд 08:49:32 #158 №1573019 
>>1573014
Блядь, ты заебал, какого хуя ты такой тормозной? Не одна у них практика нихуя, я специально зашел, чтобы ещё раз посмотреть. В КУРСЕ ПРАКТИКА ПРОГРАММИРОВАНИЯ НЕТ АЛГОРИТМОВ. В КУРСЕ ПО АЛГОРИТМАМ НЕТ ПРО ГИТ, ПРО ПЕП, ПРО ТЕСТИРОВАНИЕ, МЕНЬШЕ ПРО ООП. Это тупо разные курсы. Может программирование это не твоё, если ты не можешь просто покликать по видосам в разных местах и посмотреть что там?
Аноним 15/01/20 Срд 08:53:59 #159 №1573021 
>>1573015
>это же уже некоторое состояние
Да. Но обычно стейтлесс говорят про приложение. Это означает, что любой запрос может быть обработан любым сервером. Т.е. состояние вынесено наружу приложения, например, в бд. Например, сессию хранишь ты в jwt, а его юзеру записываешь в куки, запускаешь 10 копий приложения и теперь сессию берешь из каждого реквеста, т.е. у тебя в приложухе нет состояния сессии, которое надо поддерживать.
Аноним 15/01/20 Срд 09:03:18 #160 №1573025 
>>1573015
Даже Keep-Alive-соединения - это уже atateful в каком-то смысле.
Стейтфул изначально подразумевает архитектуру вида "подключился - отправил один или более запросов, получил на каждый ответ - отключился", причём построено всё так, что в общем случае нельзя отправить все запросы в новых подключениях (сессиях), всё обязательно должно идти через одно. Например, FTP или SSH.
Стейтлесс же наоборот говорит: можете отправлять запросы в одном подключении, можете в разных, но результат от этого зависеть не должен. В результате, состояние не связывается с конкретным соединением, а гоняется туда-сюда при каждом подключении, как куки.
Аноним 15/01/20 Срд 09:06:18 #161 №1573026 
>>1573021
>Т.е. состояние вынесено наружу приложения, например, в бд.
То есть если есть какая-то база данных, к которой все сервера обращаются, то это всё равно stateless приложение?
Как я понимаю, сам jwt нужен, чтобы избежать хранения сессий в такой базе данных, но с защитой от брутфорса так не получится, клиент не будет ничего хранить.
Аноним 15/01/20 Срд 09:07:56 #162 №1573028 
>>1573019
Спасибо за информацию, с тебя инфы хуй дождешься. Не рили спс не нервничай, теперь можно и покумекать что выбрать кек пук.
Аноним 15/01/20 Срд 09:20:56 #163 №1573032 
>>1573025
Но ведь браузеры на каждый запрос делают новое соединение, тогда получается, что в вебе всё stateless? Или тогда правильно сказать, что сам http протокол stateless, но серверное приложение само по себе может сохранять состояние, а может нет и при этом сохранение состояния в бд != сохранение состояния у приложения...
Аноним 15/01/20 Срд 09:20:59 #164 №1573033 
>>1573026
>То есть если есть какая-то база данных, к которой все сервера обращаются, то это всё равно stateless приложение?
Конечно. Суть в том, что конкретный процесс твоего конкретного приложения не имеет внутреннего состояния, от которого завит обработка запроса. Если он это состояния при каждом запросе берет из постороннего сервиса, то это не делает его стейтфул, а наоборот как раз.
>Как я понимаю, сам jwt нужен, чтобы избежать хранения сессий в такой базе данных, но с защитой от брутфорса так не получится, клиент не будет ничего хранить.
Jwt нужен чтобы хранить сессию на стороне клиента. Да вообще в данном контексте это не важно, главное что ты хранишь состояние не в своем приложении, а снаружи.
Аноним 15/01/20 Срд 09:26:29 #165 №1573035 
>>1573032
Не обязательно новое, см. Keep-Alive.

Stateless говорится про протокол HTTP, приложение практически никогда не бывает stateless (кроме простейших случаев, где что-нибудь налету считается и сразу возвращается пользователю).
Аноним 15/01/20 Срд 09:31:27 #166 №1573038 
>>1573035
>приложение практически никогда не бывает stateless
Да ну ты чего, наоборот же, практически всегда делают стейтлесс приложения, уж в вебе то точно. Иначе очень трудно масштабировать.
Аноним 15/01/20 Срд 09:38:41 #167 №1573039 
>>1573038
Ну, стейтлесс оно может быть в плане того, что не хранит дополнительную информацию в ОЗУ. Но оно же всё равно грузит кучу данных из БД и иногда из файлов. Хотя это скорее философский вопрос, считать ли это частью приложения, или приложение - это чисто логика.
Аноним 15/01/20 Срд 09:55:07 #168 №1573043 
В чем отличия этих двух импортов?
from bokeh.plotting import figure, show, output_file, output_notebook
import bokeh

Типо они по разному жрут память?
Аноним 15/01/20 Срд 10:08:59 #169 №1573046 
Суп питонач. Вопрос к адептам django по организации БД. Есть достаточно классическая задача. Хочу узнать у семпаев как ее лучше решить в БД:

Есть таблица "Финансовая операция". Операция может быть на положительную или отрицательную сумму, пополнение или списание средств. Для этой операции должна быть причина. Вот собственно вопрос, как должна выглядеть и чем вообще быть эта таблица "причина".
Аноним 15/01/20 Срд 10:40:56 #170 №1573053 
>>1573043
import jopa
Импортирует библиотеку с ее неймспейсами. Т.е. вызов метода govno будет выглядеть как jopa.govno()
from jopa import govno
Импортирует только метод govno в неймспейс проекта, т.е. этот метод ты можешь вызывать просто govno()
from jopa import (звездочка блять)
Импортирует все из библиотеки в неймспейс проекта, т.е. ты можешь вызвать какой-нибудь fart(), которого в твоем проекте нет, но есть в той библиотеке
Будет лучше, если на самом деле разбирающиеся аноны меня поправят и дадут более четкий ответ
Аноним 15/01/20 Срд 10:49:54 #171 №1573055 
>>1573046
Может сделать таблицу с Generic Foreign Key и привязывать к разным таблицам-причинам?
Аноним 15/01/20 Срд 12:08:58 #172 №1573073 
>>1573053
Я знаю что различие в сокращенном варианте написания. Будет меньше писанины. Но меня интересует вопрос ресурсопотребления.
Есть ли разница или нет?

Просто я как ньюфаг, считаю что мне нужно прописывать полные пути к функциям. А в примерах постоянно импортируют методы и я путаюсь.
Аноним 15/01/20 Срд 12:18:26 #173 №1573075 
>>1573035
>>1573033
Понял, спасибо.
Аноним 15/01/20 Срд 13:28:40 #174 №1573178 
Бывает есть такая запись "слова-слова at 0x106fa2390"
Эти циферы что означают? Ячейка памяти?
Аноним 15/01/20 Срд 14:13:16 #175 №1573216 
Питонисты, этой херней правда можно DDoS'ить?

import threading
import requests

def dos():
while True:
requests.get("http://example.com")

while True:
threading.Thread(target=dos).start()
Аноним 15/01/20 Срд 14:15:57 #176 №1573218 
Я в начале января говорил, что делаю онлайн магазин и не хочу брать бустрап, буду сам фронт делать.
Не делайте так, пацаны, вы погрязните в этой хуете, если вы никаких нормальных курсов по фронту не проходили, вы проебете просто десятки часов дрочась методом тыка, пока не будет красиво.
Лучше сделайте супер рест эйпиай, чисто в консоли без фронта, как в демке в этом выступлении https://youtu.be/pZYRC8IbCwk
Аноним 15/01/20 Срд 14:27:57 #177 №1573222 
image.png
>>1573216
Ну прямо вот так особо не получится, но по сути да. Вот так ещё лучше.
Аноним 15/01/20 Срд 14:32:55 #178 №1573229 
>>1573216
Я так уничтожил ядерную программу Ирана.
Аноним 15/01/20 Срд 14:37:23 #179 №1573235 
>>1573216
Попробуй заодно slow headers.
Аноним 15/01/20 Срд 18:38:10 #180 №1573514 
>>1573073
разницы в производительности нет
Аноним 15/01/20 Срд 20:04:52 #181 №1573618 
.png
Анон помоги, где я накосячил? Писал скрипт, считающий хэши файлов и столкнулся со след. проблемой: во время обработки больших файлов (>1gb) рандомно выдаёт другой хэш. Также имеет место высокая загрузка носителя во время работы(наверное это как-то связано)
Аноним 15/01/20 Срд 20:07:42 #182 №1573622 
>>1569408 (OP)
Во что можно вкатиться с питоном, кроме веба, системного администратора и DS/ML?
Аноним 15/01/20 Срд 20:09:53 #183 №1573623 
>>1573178
0x обозначает, что дальше идут цифры в 16-ой системе счисления, at - вероятно о памяти.
Аноним 15/01/20 Срд 20:28:11 #184 №1573641 
>>1573622
Визуалки на renpy писать и язык движка godot очень на питон похож. ни во что
Аноним 15/01/20 Срд 20:49:40 #185 №1573665 
>>1573514
Не обращайтесь к атрибутам

Ещё один механизм, способный замедлить программу — это оператор точка (.), который используется для доступа к атрибутам объектов. Этот оператор вызывает выполнение процедуры поиска по словарю с использованием __getattribute__, что создаёт дополнительную нагрузку на систему. Как ограничить влияние этой особенности Python на производительность?

# Медленно:
import re

def slow_func():
for i in range(10000):
re.findall(regex, line) # Медленно!

# Быстро:
from re import findall

def fast_func():
for i in range(10000):
findall(regex, line) # Быстрее!

>https://habr.com/ru/company/ruvds/blog/483678/
Аноним 15/01/20 Срд 20:53:05 #186 №1573668 
>>1573622
Что ж, некоторые и под мобилки, и тырпрайз пишут на питоне. Но слишком некоторые.
Аноним 15/01/20 Срд 20:57:37 #187 №1573677 
>>1573622
Если с ориентацией на рынок, то ни во что кроме обозначенного тобою, при том веб намного приоритетнее.
Аноним 15/01/20 Срд 20:59:16 #188 №1573678 
>>1573665
Писать на питоне с оглядкой на производительность - пидорская тема. На питоне нужно писать читабельный код, близкий к английскому тексту. Если все работает и хочется быстрее, тогда уже запускаешь профилировщики и переписываешь проблемные методы на сишечке. Оператор точка им, блядь, тормозит. Пиздец просто.
Аноним 15/01/20 Срд 22:31:52 #189 №1573755 
>>1569408 (OP)
По какой причине любые дескрипторы надо объявлять как атрибуты класса? Почему если я буду ставить дескрипторы скажем внутри метода __init__ они не будут работать? Что за пидорство?
Аноним 15/01/20 Срд 23:03:45 #190 №1573779 
Даже он вкотился, а ты нет.
https://opensource.com/article/20/1/prison-to-python
Аноним 15/01/20 Срд 23:06:01 #191 №1573783 
>>1573779
Наш ответ Чемберлену: https://tjournal.ru/flood/70906-navalnyy-reshil-nauchitsya-programmirovaniyu-na-python-poka-nahoditsya-pod-arestom

А ещё есть это: https://life.ru/p/118196
Аноним 15/01/20 Срд 23:22:50 #192 №1573802 
Нужно ли знать SQL для бэка на Питоне выше базовых быдло-команд?
Аноним 15/01/20 Срд 23:50:17 #193 №1573851 
>>1573802
Смотря какой бек. Если примитивный круд, можно обмазаться ORM и вообще не знать скл.
Аноним 16/01/20 Чтв 00:55:37 #194 №1573883 
>>1573802
Нужно знать про типы данных и индексы, что/куда/почему.
Еще было бы неплохо про транзакции и прочее БД-специфичное иметь представление.
Аноним 16/01/20 Чтв 11:58:40 #195 №1574071 
>>1573783
Ну пиздец, теперь питон запретят.
Аноним 16/01/20 Чтв 19:40:22 #196 №1574523 
изображение.png
>>1573665
>https://habr.com/ru/company/ruvds/blog/483678/
обоссан в комментах
Аноним 16/01/20 Чтв 21:19:41 #197 №1574597 
С фига ли в Питоне по умолчанию не стоит JIT компиляция?
Аноним 16/01/20 Чтв 21:28:49 #198 №1574615 
>>1574597
Потому же, почему и GIL.
Аноним 16/01/20 Чтв 21:50:52 #199 №1574633 
Если хочу вкатиться в питон, то норм будет начать с этого Dive Into Python 3 ???
Аноним 16/01/20 Чтв 22:30:27 #200 №1574688 
>>1574633
Да
Аноним 16/01/20 Чтв 22:38:34 #201 №1574701 
>>1574633
Мне "погружение" зашло после официального туториала у последнего есть старый, но более-менее актуальный перевод: https://ru.wikibooks.org/wiki/Python/Учебник_Python_3.1
Аноним 16/01/20 Чтв 22:49:34 #202 №1574719 
Где есть годные туториалы по написанию вирусов на Питонухе? Червь или вирус шпион?
Аноним 16/01/20 Чтв 22:57:50 #203 №1574732 
>>1574719
Ты ебанулся? Тебе в С-тред.
Аноним 16/01/20 Чтв 23:09:07 #204 №1574743 
>>1574732
Быдлокожу именно на Змее уже почти год. Подумал, будет полезным подрочить системное программирование на нем (пусть оно и более каличное чем на любой низкоуровневой ебале вроде того же С)
Аноним 16/01/20 Чтв 23:13:12 #205 №1574747 
>>1574719
Пишешь вирус, собираешь в py2win. Profit.
Аноним 16/01/20 Чтв 23:16:22 #206 №1574752 
>>1574743
Есть обёртки WinAPI/POSIX API для питона. Можно написать какой-нибудь системный сервис. Что-то более низкоуровневое получится вряд ли.
Аноним 16/01/20 Чтв 23:17:03 #207 №1574754 
>>1574597
Потому что Гвидо не осилил даже ast-парсер, а с тех пор всем стало похуй. Если тебя ебёт скорость, тебе не нужен питон.
Аноним 16/01/20 Чтв 23:17:51 #208 №1574755 
Что происходит когда я сравниваю результаты функций и почему всегда выдает True?
def inta():
a = 1
print(a)
def intb():
b = 2
print(b)
>>inta() == intb()
1
2
True
>>
Аноним 16/01/20 Чтв 23:20:14 #209 №1574760 
>>1574755
Потому что обе возвращают None
Аноним 16/01/20 Чтв 23:20:42 #210 №1574763 
>>1574755
Не имеет значения, что ты принтишь в функции, важно только возвращаемое значение. Ты ничего не возвращаешь, то есть неявно возвращаешь None. None, очевидно, равен None.
Аноним 16/01/20 Чтв 23:20:59 #211 №1574766 
>>1574755
Твои функции печатают единицу и двойку, но ничего не возвращают. Поэтому == сравнивает два None
Аноним 16/01/20 Чтв 23:21:33 #212 №1574767 
>>1574760
Лол. Можно было и догадаться. Мне просто мысль пришла что я могу так сравнивать содержимое самой функции, идентичны ли они.
Аноним 16/01/20 Чтв 23:26:11 #213 №1574774 
>>1574767
Такое сравнение было бы без скобок:
inta == intb

Но это сравнит ссылки на функции, но не их код. Простого способа сравнить код нет.
Аноним 16/01/20 Чтв 23:28:29 #214 №1574778 
>>1574767
Это тоже можно делать. Но не нужно. Например, сериализовав функцию через pickle.
Аноним 16/01/20 Чтв 23:31:46 #215 №1574788 
Еще вопрос. Есть декоратор и функция для обертки
пусть декоратор
. def decor(func):
. def wrapper():
. print('govno')
. func()
. print('mocha')
. return wrapper
и есть функция hello() которая выводит hello_world
и есть функция decor_hello, которая делает тоже самое но обернута в @decor
получается @decor каким то образом меняет код функции decor_hello и этот самый decor_hello вместо обычного hello_world выводит
>>decor_hello()
govno
hello_world
mocha
>>
Это значит что каким то образом, не знаю каким, @decor меняет код функции decor_hello и если бы у меня был способ сравнить код, пример
code_cmpr(hello, decor_hello)
он мне бы выдал False?
>>
Аноним 16/01/20 Чтв 23:32:13 #216 №1574789 
>>1574788
Думал он мне нормально с точками отобразит отступы, но обосрался.
Аноним 16/01/20 Чтв 23:32:23 #217 №1574791 
>>1574778
Ты хоть раз пробовал так делать?
Аноним 16/01/20 Чтв 23:33:49 #218 №1574796 
>>1574788
Декораторы ничего не меняют. Они оборачивают вызов одних функций в другие. Что-то типа
f = decor(f)
Аноним 16/01/20 Чтв 23:38:30 #219 №1574803 
>>1574796
Действительно, получилось в ручную так сделать, спасибо. Немного непривычно правда, зато понятно как декораторы работают. Получается вот зачем он wrapper() возвращает, чтобы потом его функцией оберткой и активировать.
Аноним 16/01/20 Чтв 23:43:37 #220 №1574817 
Какие профиты от тайпинга? Если:
>The Python runtime does not enforce function and variable type annotations. They can be used by third party tools such as type checkers, IDEs, linters, etc.
Не троллю, просто интересуюсь.
Аноним 16/01/20 Чтв 23:45:04 #221 №1574819 
>>1574817
Документирование кода. Не нужно лезть в доки, достаточно глянуть на объявление функции.
Аноним 16/01/20 Чтв 23:45:30 #222 №1574821 
165484556498410.png
>>1574767
выебан лично Гвидо
Аноним 16/01/20 Чтв 23:47:27 #223 №1574827 
>>1574821
давнич
g() == f()
Аноним 16/01/20 Чтв 23:50:56 #224 №1574835 
>>1574827
Ты нихуя не понял.
Аноним 16/01/20 Чтв 23:51:02 #225 №1574836 
>>1574827
Давнич ты. Я сравнивал не вызовы функций __call__, а сами функции как объекты. Как видишь, оператор == для функций не имеет смысла можно канешн сравнить f == f, но что конкретно ты захочешь этим получить я хз
Аноним 16/01/20 Чтв 23:54:53 #226 №1574847 
>>1574836
ну так это два разных объекта, как один может быть равен другому?
Аноним 16/01/20 Чтв 23:59:30 #227 №1574865 
3037807807.png
>>1574847
Гвидо провёл шершавым уже во второй раз
Аноним 17/01/20 Птн 00:04:52 #228 №1574874 
36873687365823.png
>>1574865
Вместо того чтоб спать хуйней маюсь бля
Аноним 17/01/20 Птн 01:27:58 #229 №1575036 
image.png
Есть два питоновских скрипта. В скрипте №1 крутится бесконечный цикл (опрос оборудования), и по сигналу из скрипта №2 этот цикл должен прерываться. Как это можно реализовать? я правильно понял что это можно сделать только с помощью многопоточности и модуля threading
Аноним 17/01/20 Птн 01:32:44 #230 №1575039 
>>1575036
да, запускаешь первый цикл в треде, добавляешь в него опрос переменной типа while not peremennaya:. А потом из второго цикла выставляешь peremennaya в 1, чтобы остановить первый цикл
Аноним 17/01/20 Птн 10:07:53 #231 №1575163 
>>1575036
Можешь при запуске скрипта1 создавать файл и в цикле проверять его наличие. Если файл удален, то завершаешь скрипт. В скрипте2 удаляешь этот файл если надо завершить скрипт1.
Аноним 17/01/20 Птн 11:46:02 #232 №1575220 
>>1575036
https://stackabuse.com/handling-unix-signals-in-python/
Аноним 17/01/20 Птн 13:00:24 #233 №1575279 
>>1575220
Увы, это все происходит на windows 7.
Аноним 17/01/20 Птн 13:14:08 #234 №1575287 
Как в питоне реализовать проверку ошибок?
То есть, если происходит ошибка - то запускается определённая ветка if
Аноним 17/01/20 Птн 13:19:55 #235 №1575295 
>>1575287
Или что-нибудь вроде
if error == 'oshibka_1':
...
elif error == 'oshibka_2':
....
это если возвращаются функциями или ты их сам на генеришь в функции-методе, в которых надо обрабатывать.

или по сути примерно тоже самое, но с механизмом исключений try-except, он более мощный, но для более сложных случаев.

Аноним 17/01/20 Птн 13:33:52 #236 №1575308 
>>1575039
И производительность на ровном месте падает ровно в 2 раза. Збс
Аноним 17/01/20 Птн 13:45:20 #237 №1575319 
Есть телеграм бот, который задеплоил на сервер pythonanywhere, теперь хочу прикрутить к нему базу данных, скорее всего sqlite3
Подскажите как ее залить на сервер
Аноним 17/01/20 Птн 14:22:47 #238 №1575367 
>>1575308
Можно обмазаться подпроцессами.

>>1575036
Можно обмазаться IPC через сокеты или файлы. Или очереди.
Аноним 17/01/20 Птн 14:33:05 #239 №1575374 
Как в pyCharm редактировать одинаковое слово во всем проекте ? Знает кто ? Или где узнавать такое ? Не гуглитсо
Аноним 17/01/20 Птн 15:12:29 #240 №1575415 
>>1575374
Оно? https://www.jetbrains.com/help/pycharm/rename-refactorings.html
Первая ссылка в нигуглитсо
Аноним 17/01/20 Птн 15:16:05 #241 №1575423 
Какаю библиотеку учить, чтобы создавать GUI на подобии Windows Forms/WPF ???
Я не тролль
Аноним 17/01/20 Птн 15:17:38 #242 №1575425 
>>1575415
Не ну а хуля ты внатуре конечно бля на не русском бля делаешь уеба бля ? (Спасибо)
Аноним 17/01/20 Птн 15:19:13 #243 №1575429 
>>1575423
Tkinter
>>1575425
>на не русском бля
Кожевенник, тред 1С двумя блоками ниже.
Аноним 17/01/20 Птн 15:20:40 #244 №1575431 
cachedfile15779973884321.mp4
>>1575429
Аноним 17/01/20 Птн 15:28:39 #245 №1575439 
>>1575429
у меня будет около 35-45 окон, я должен все это руками писать ????
Аноним 17/01/20 Птн 15:30:21 #246 №1575448 
>>1575439
Напиши программу, которая будет вместо тебя окна писать.
Аноним 17/01/20 Птн 15:53:20 #247 №1575472 
>>1575374
ctrl + shift + r
Аноним 17/01/20 Птн 16:04:24 #248 №1575492 
>>1575439
Можешь взять PyQt и попробовать прикрутить Qt Designer, но хз, уживаются ли они вместе.
Аноним 17/01/20 Птн 16:05:56 #249 №1575497 
Народ пробую сделать конвертер с cp1251-cp1252 но что-то идет не так
https://pastebin.com/zVeSikLG
Аноним 17/01/20 Птн 16:11:58 #250 №1575508 
>>1575497
Что происходит?
Аноним 17/01/20 Птн 16:15:05 #251 №1575515 
>>1575508
на экране суде по всему всё хорошо, кодировка срабатывает, а вот в файл заливается то же что и было до. Т.е. без изменений.
Аноним 17/01/20 Птн 16:30:59 #252 №1575543 
>>1575295
class Oshibca(Exeption):
__pass

def fun():
__raise Oshibca

try:
__fun()
except Oshibca:
__print('')
Аноним 17/01/20 Птн 18:38:03 #253 №1575655 
>>1575497
>f.read().encode('cp1251').decode('cp1252')
Ты сначала кодируешь в 51, потом раскодируешь 52. По логике надо всё наоборот. С другой стороны ты уже расписал кодировки когда файлы открывал, так что я не уверен, что это вообще нужно. Хз короче, я у себя не пробовал.
Аноним 17/01/20 Птн 18:41:23 #254 №1575657 
Блять помогите а. Смотрю курс Хирьянова и первая практика задание про Робота я скачал но там задачи а куда ответы то пихать уже решенные что бы видеть как сам робот ходит. Где графен то как на картинке ? Нихуя не понятно
Аноним 17/01/20 Птн 18:57:37 #255 №1575667 
>>1575657
Все начинаю догадываться ткинкер какой то ебаный насрал блеать
Аноним 17/01/20 Птн 19:05:15 #256 №1575676 
>>1575657
Ты скачиваешь, открываешь питонофайл с лабой, там функция есть, её меняешь так, чтобы робот выполнил что надо
Аноним 17/01/20 Птн 19:37:36 #257 №1575705 
>>1575676
Это понятно, просто не открывалась графика у меня не было tkinker
Аноним 17/01/20 Птн 21:56:01 #258 №1575842 
А где лучше всего искать удалёнку на западного барина сегодня? Опыт 6 лет, английский в порядке. Есть у кого такой опыт?
Аноним 17/01/20 Птн 22:05:11 #259 №1575851 
>>1575842
Апворк, все ещё.
Аноним 17/01/20 Птн 22:09:04 #260 №1575860 
>>1575851
Ну это фриланс, а я нацелился на конкретную фирму. Я пробовал несколько раз вкатиться в фриланс, кстати, и всегда заканчивалось ничем.
Аноним 17/01/20 Птн 22:53:29 #261 №1575923 
Как просмотреть в консоли от чего зависит конкретный пакет и какие установленные пакеты зависят от него самого?.. Помню, как-то можно было сделать, но хз как
Аноним 17/01/20 Птн 23:33:00 #262 №1575998 
>>1575923
pip show
Аноним 18/01/20 Суб 07:50:04 #263 №1576191 
Надеюсь недочеловек не будет опять агриться. Короч нажал что то и теперь pyCharm не дописывает имена которые уже были, а показывает какие то методы или что то типо, не могу найти как вернуть как было. Классека даунизма короч.
Аноним 18/01/20 Суб 12:19:07 #264 №1576271 
Никто не помог: печатаю уже 340 слов в минуту. Ждите конкуренцию дауны.
Аноним 18/01/20 Суб 12:30:30 #265 №1576278 
>>1576271
че
Аноним 18/01/20 Суб 12:31:54 #266 №1576281 
>>1576191
>>1576271
Еблан, учись объяснять свою проблему
Аноним 18/01/20 Суб 13:15:26 #267 №1576329 
В Джанго проектах видел импорт с точкой в начале как:
from .models import Post
Что это значит?.. Модуля с именем .models нет нигде. Думал что это означает "из той же папки где находится этот скрипт обратись к файлу models.py и импортируй оттуда Post". Пробовал сделать так же в рандомном проекте - вылетает ошибка: ModuleNotFoundError: No module named '__main__.test111'; '__main__' is not a package
Аноним 18/01/20 Суб 13:30:35 #268 №1576346 
>>1576329
Это файл models из твоей директории. Когда делаешь импорт через точку, то импортируешь компоненты из файла своей директории. Например from .urls import urlpatterns
Аноним 18/01/20 Суб 13:43:53 #269 №1576357 
>>1576281
Все ж чотко обьяснил. Дописатор слов не работает. Он работает только на функции, операторы и всякое такое а раньше работал на любые слова(имена) если они повторялись. Можт как настройки можно сбросить к стандартным или чото типо этого
Аноним 18/01/20 Суб 13:54:58 #270 №1576372 
>>1576357
Да забей, ты быстрее переустановишь и настроишь всё заново, чем кто-то тут тебе поможет.
Погугли, где пайчарм хранит папку с настройками, и удали её, либо сохрани в другом месте.
Аноним 18/01/20 Суб 14:13:44 #271 №1576390 
>>1576346
Только почему у меня такой импорт не прокатил?
Аноним 18/01/20 Суб 15:07:22 #272 №1576440 
image.png
Сап двач! Почему эта хуесосина пишет мне, что train.py нет в директории, если я в нее перешел?
Аноним 18/01/20 Суб 15:10:48 #273 №1576442 
>>1576440
Рабочая директория может быть другая
Аноним 18/01/20 Суб 15:11:19 #274 №1576443 
>>1576442
а как ее сменить?
Аноним 18/01/20 Суб 15:21:18 #275 №1576449 
image.png
блядь, я в ней, но какого хуя. Я уже и новый колаб проверил, там без проблем запускает py файлы
Аноним 18/01/20 Суб 16:04:07 #276 №1576488 
Снимок.PNG
Почему робот красит все клетки подряд а не только те на которых нету краски ??
Аноним 18/01/20 Суб 16:10:30 #277 №1576497 
>>1576357

Вот по code completion

If code completion doesn't work, this may be due to one of the following reasons:

The Power Save Mode is on (File | Power Save Mode). Turning it on minimizes power consumption of your laptop by eliminating the background operations, including error highlighting, on-the-fly inspections, and code completion.

Your file doesn't reside in a content root, so it doesn't get the required class definitions and resources needed for code completion.

Refer to Configuring folders within a content root for more details.

A file containing classes and functions that you want to appear in completion suggestions list is marked as a plain text file.

External libraries that contain functions that you want to appear in the completion suggestions list are not added as dependencies or global libraries.

https://www.jetbrains.com/help/pycharm/auto-completing-code.html

мимо нуб
Аноним 18/01/20 Суб 16:28:48 #278 №1576516 
>>1576497
не подходит, у меня функции и всякое такое дописывает а имена перестало дописывать
Аноним 18/01/20 Суб 16:30:36 #279 №1576519 
>>1576440
Потому что хуесосина eto ti.
Аноним 18/01/20 Суб 16:45:30 #280 №1576541 
>>1576516
ты про переменные? если они у тебя ранее не определены, определены внутри класса/функции или не импортированы, то дальше по коду они не будут автокомплитится.

вообще скриншот покажи, так проще будет.
>мимо нуб
Аноним 18/01/20 Суб 16:46:51 #281 №1576542 
>>1576541
А точно! Спс. А еще можешь помочь с роботом выше скрин ?
Аноним 18/01/20 Суб 16:47:19 #282 №1576543 
>>1576488
Насколько я помню, эта проверка на то, красил ли ты сам уже ячейку. Тебе нужно проверять верхнюю стену
Аноним 18/01/20 Суб 16:58:09 #283 №1576560 
>>1576543
Пиздец, спасибо
Аноним 18/01/20 Суб 17:38:51 #284 №1576598 
Снимок.PNG
Как лучше сделать а то как то ебано ?
Аноним 18/01/20 Суб 17:49:58 #285 №1576611 
работают ли библиотеки tf, cyclegan на картах от амд?
Аноним 18/01/20 Суб 17:51:20 #286 №1576613 
>>1576598
Ну можно переделать в while true и в конце, если стена справа то break. Но по сути как-то особо красиво переделать не получится
Аноним 18/01/20 Суб 18:35:59 #287 №1576653 
Screenshot 2020-01-18 at 20.34.46.png
Зачем писать название ошибки в except, если и без него ошибку обрабатывает нормально?
Аноним 18/01/20 Суб 18:43:45 #288 №1576659 
>>1576653
Типа чтоб не проебать непредвиденную ошибку наверное
Аноним 18/01/20 Суб 19:22:18 #289 №1576681 
За какое время можно осилить http://composingprograms.com/ , хочу поставить себе рамки самообучения для дисциплины. В день могу тратить 3-4 часа на это.
Аноним 18/01/20 Суб 19:25:54 #290 №1576685 
А есть какой-то грамотный курс, чтобы бэкэндер мог быстро и уверенно вкатиться в современный фронт? Чтобы там было ориентировано на людей, которые уже собирали фронт кусками, парсили html, спокойно пишут на жс и всё такое, но нихуя не понимают, как верстать страницы правильно.
Аноним 18/01/20 Суб 19:57:45 #291 №1576715 
>>1576653
Наверное, чтобы обрабатывать определённые ошибки определённым образом? Или в чём вопрос?
Аноним 18/01/20 Суб 20:14:08 #292 №1576734 
15551767753250.jpg
Подскажите сервис генерации sql кода в в класс моделей питон кода
Аноним 18/01/20 Суб 20:34:33 #293 №1576766 
>>1576734
https://editor.ponyorm.com/
Аноним 18/01/20 Суб 20:48:28 #294 №1576777 
15353848915230.jpg
>>1576766
Нихуя себе! Так можно было ! Анон спасибо, ты даже не представляешь как выручил.
Аноним 18/01/20 Суб 20:53:19 #295 №1576785 
>>1576766
Да да, я уже вспомнил, жаль што импорт там платный, мб есть фришное типо umbrello?
Есть конечно vertabelo.com но там нет генерации в питон
Аноним 18/01/20 Суб 20:53:54 #296 №1576787 
>>1576785
Хотя чет импорта в pynyorm и нет вроде
Аноним 18/01/20 Суб 21:50:16 #297 №1576859 
>>1576785
Какой импорт?
Аноним 19/01/20 Вск 00:30:47 #298 №1577155 
>>1576859
импорт sql и потом уже ER, наподобие vertabelo, и штоп в питон модели можно было, дада я губу раскатал
Аноним 19/01/20 Вск 09:38:11 #299 №1577254 
>>1576659
>>1576715
Т.е. тут прописан KeyError  и если вылезет ошибка другого типа, то он её не отработает и напишет?
Аноним 19/01/20 Вск 12:01:22 #300 №1577311 
>>1576613
mov(r, v) Поместить значение v в регистр r

что это за ебола и как в этих заданиях про робота использовать
?
Аноним 19/01/20 Вск 12:32:53 #301 №1577339 
>>1577311
Это в последнем задание понадобиться. Пока забей.
Аноним 19/01/20 Вск 13:33:55 #302 №1577407 
cover4.jpg
Нашёл проект на жидхабе с django, в файлах пишет шо версия 1.9
Какой вариант проще, создать сразу на версии 3 или 2 lts, или же попытаться запустить под 1.9 (что не получается)?
Аноним 19/01/20 Вск 13:51:01 #303 №1577439 
>>1577407
Да.
Аноним 19/01/20 Вск 13:53:40 #304 №1577446 
Пизда.
Аноним 19/01/20 Вск 13:53:57 #305 №1577447 
>>1577439
ПИЗДА!
Аноним 19/01/20 Вск 13:54:12 #306 №1577448 
Чтото я найти не могу.
При таком раскладе
./main/root/lala.py
./main/repository.py

Как мне в лала заимпортить репозиторий?

from main.repository import * не работает.
Аноним 19/01/20 Вск 14:20:18 #307 №1577503 
>>1577407
Охуительные ошибки которые вылазили 1.9 и 1.11 сами ушли
Аноним 19/01/20 Вск 14:37:27 #308 №1577531 
PyCharm, или VS Code? До недавнего времени я всегда склонялся к PyCharm, потому что я с ним уже 4 года и знаю его довольно хорошо. Но железо (mac pro 2013, 8Gb memory) побудило меня испробовать VS Code. И теперь я сижу только на нем. VS Code ничем не уступает, а работает гораздо быстрее. Рекомендую всем, у кого оперативки менее 12Gb.
Аноним 19/01/20 Вск 14:43:30 #309 №1577546 
>>1577531
А третью версию питона не пробовал? Лучше, чем вторая?
Аноним 19/01/20 Вск 15:00:05 #310 №1577573 
1-8.png
Суть такова. Есть простой код на Си, надо его переписать на питоне.

Пример кода на Си представлен здесь:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/accounting/psi.rst

В Линуксах начиная с 5.2 появилось улучшение подсистемы PSI, позволяющее определять превышение заданных метрик с использованием epoll().

Первым этапом прелагается вписать строку в дескриптор файла /proc/pressure/memory, и далее проводить опрос с помощью epoll().

На первом этапе возникает проблема.

Открываю дескриптор, получаю его номер, все ОК. Но при попытке записи предлагаемой строки получаю ошибку [Errno 22] Invalid argument. С сишным кодом проблем нет, все работает как задумано.

Код на питоне: https://pastebin.com/5Sj98iTQ

В чем ошибка? Как исправить?
Аноним 19/01/20 Вск 15:35:07 #311 №1577598 
изображение.png
>>1577573
на винде твой код работает. Только у тебя в коде 2 раза fd вместо fd1 упоминается + в моём модуле os нету os.O_NONBLOCK, а dir_fd=None вабще неизвестный судя-по всему аргумент
Аноним 19/01/20 Вск 15:35:53 #312 №1577599 
Как вообще искать работу в Дата Саенсе на Питоне ньюфагу?.. В бэкенд в портфолио можно представить свои проекты сайтов, которые ты напилил, а с датасаенсом что? Потешные ML-модельки на собес приносить? Там в одиночку ничего существенного родить все равно не выйдет
Аноним 19/01/20 Вск 15:45:15 #313 №1577614 
>>1577599
Ты немного не в тот тред зашел.
К МЛщикам иди.
У датасаентистов питон просто как инструмент, не более, думаю тебя спросят про научные либы питоновские и все.
Аноним 19/01/20 Вск 15:48:46 #314 №1577623 
>>1577339
if not wall_is_on_the_right():
while not wall_is_on_the_right():
move_right()
if not wall_is_on_the_right():
fill_cell()
move_down()
if not wall_is_on_the_left():
while not wall_is_on_the_left():
move_left()
if not wall_is_on_the_left():
fill_cell()
move_down()
if not wall_is_on_the_right():
while not wall_is_on_the_right():
move_right()
if not wall_is_on_the_right():
fill_cell()
move_down()
if not wall_is_on_the_left():
while not wall_is_on_the_left():
move_left()
if not wall_is_on_the_left():
fill_cell()
move_down()
if not wall_is_on_the_right():
while not wall_is_on_the_right():
move_right()
if not wall_is_on_the_right():
fill_cell()
move_down()
if not wall_is_on_the_left():
while not wall_is_on_the_left():
move_left()
if not wall_is_on_the_left():
fill_cell()
move_down()
if not wall_is_on_the_right():
while not wall_is_on_the_right():
move_right()
if not wall_is_on_the_right():
fill_cell()
move_down()
if not wall_is_on_the_left():
while not wall_is_on_the_left():
move_left()
if not wall_is_on_the_left():
fill_cell()
move_down()
if not wall_is_on_the_right():
while not wall_is_on_the_right():
move_right()
if not wall_is_on_the_right():
fill_cell()
move_down()
if not wall_is_on_the_left():
while not wall_is_on_the_left():
move_left()
if not wall_is_on_the_left():
fill_cell()
move_down()
if not wall_is_on_the_right():
while not wall_is_on_the_right():
move_right()
if not wall_is_on_the_right():
fill_cell()
move_down()
if not wall_is_on_the_left():
while not wall_is_on_the_left():
move_left()
if not wall_is_on_the_left():
fill_cell()
move_down()
move_right()

Заценщи какой я тупой, у меня или так или робот просто убегал за край карты
Аноним 19/01/20 Вск 15:52:47 #315 №1577627 
Kc651HQgTA.jpg
>>1577623
Аноним 19/01/20 Вск 16:15:11 #316 №1577651 
>>1577598
спасибо
Аноним 19/01/20 Вск 16:16:25 #317 №1577653 
jfv6f2r.png
>>1577623
Аноним 19/01/20 Вск 16:23:48 #318 №1577663 
>>1577598
Мой код работает с произвольными файлами, но дает ошибку с /proc/pressure/memory.
Аноним 19/01/20 Вск 16:30:06 #319 №1577666 
>>1577598
поставил перевод в конце строки - все везде заработало
Аноним 19/01/20 Вск 16:49:11 #320 №1577682 
>>1577653
непонятно, там кароч сложность в том нужно как то повторить функицию нужное количестов раз по отделности, что бы между повтороми делать операцию
Аноним 19/01/20 Вск 19:40:35 #321 №1577841 
Да! Третья версия питона вообще огонь! Сейчас изучаю новую версию 3.4, говорят питон стал асинхронным, там появились корутины
Аноним 19/01/20 Вск 19:41:50 #322 №1577844 
>>1577546
Да! Третья версия питона вообще огонь! Сейчас изучаю новую версию 3.4, говорят питон стал асинхронным, там появились корутины
Аноним 19/01/20 Вск 20:17:37 #323 №1577884 
>>1572839
Спасибо.
Теперь нубовопрос: есть несколько полей, у каждого из которых надо проверить заполнено или нет. Чтобы не писать по функции на каждое поле, надо использовать классы?
Аноним 20/01/20 Пнд 10:38:08 #324 №1578382 
>>1577884
Необязательно, можешь написать одну функцию проверки и применять ее к каждому полю.
Аноним 20/01/20 Пнд 10:48:42 #325 №1578388 
>>1578382
Т.е., например, есть поля EditLine1 и EditLine2, мы пишем что-то вроде:
def(self, x):
--val = self.x.toPlainText()
--if val is '':
...
Вместо x подставляем эдитлайны?
Аноним 20/01/20 Пнд 10:55:54 #326 №1578398 
Опять троллинг какой-то в треде? Есть WTForms. Я не пользовался, но это должно быть именно то, что надо.
Аноним 20/01/20 Пнд 11:23:29 #327 №1578431 
>>1578388
Если ты проверяешь поля по отдельности, то используешь эту функцию по событию onChanged или textChanged или что там у тебя. Если проверяешь все поля формы вместе, допустим, по нажатию кнопки, собираешь все нужные поля формы и в цикле передаешь значение каждого поля в функцию проверки. На чем ты эти формочки пишешь?
Аноним 20/01/20 Пнд 11:44:02 #328 №1578442 
1. Укус Питона
2. Документация по Джанге
3. Актуальная книжка по Джанге

Нормальный план чтобы освоить веб-разработку или перед вторым пунктом еще что-то почитать?
Аноним 20/01/20 Пнд 12:16:01 #329 №1578482 
1579511760084.png
>>1578442
Два томика душного Лутца.
Аноним 20/01/20 Пнд 12:17:37 #330 №1578486 
Снимок.PNG
Здесь y
это не переменная и я не могу больше y использовать нигде ?
Аноним 20/01/20 Пнд 12:17:42 #331 №1578487 
>>1578482
А можно хотя бы только один?
Аноним 20/01/20 Пнд 12:27:13 #332 №1578505 
>>1578442
Ты читать книжки или писать код собираешься? Бери туториал по
джанге, и по ходу дела читай документацию по мере необходимости.
Аноним 20/01/20 Пнд 12:34:45 #333 №1578510 
>>1578505
Это прошлый век. Пускай открывает видосы Хауди Хо/Гоши Дударя и по ним хуярит.
Аноним 20/01/20 Пнд 12:43:50 #334 №1578517 
>>1578510
Так даже лучше. А то на том же реддите очередная волна читателей книжечек плачется, что программирование не дается.
Аноним 20/01/20 Пнд 13:01:22 #335 №1578527 
>>1578505
Тутора достаточно будет чтобы хотя бы немного понять как самому делать веб-приложения?
Пока нихрена не понимаю зачем нужны эти views, models, urlconf.
Аноним 20/01/20 Пнд 13:02:11 #336 №1578531 
>>1578517
А где практику приматам искать ? Не подскажете ? Кроме говнокурсов есть что ? А то там раз сделал и забыл.
Аноним 20/01/20 Пнд 13:15:13 #337 №1578550 
>>1578531
Не понял, зачем искать практику, бери и пили что-нибудь.
Аноним 20/01/20 Пнд 13:19:45 #338 №1578555 
>>1578486
Ты шо творишь, демон? Иди читай про функции, передачу значений в функции и локальные переменные.
Аноним 20/01/20 Пнд 13:30:27 #339 №1578566 
>>1578527
Для этого туториалы и существуют, потыкаешь, поймешь что куда примерно писать, какой путь твой запрос проходит, будет хоть какая-то картина происходящего в голове, сможешь конкретные вопросы задавать, а тут мы тебе уже поможем, здесь все твои друзья.
Аноним 20/01/20 Пнд 13:36:56 #340 №1578574 
>>1578555
Эта хуйня сработала кроме нижней строки где у. Но в самой функции у не переменная ? Как это называется что ето ? Оно как бы работает а как хуй его знает
Аноним 20/01/20 Пнд 13:54:22 #341 №1578577 
>>1578486
>while not x == y вместо x != y
Братишка...
Аноним 20/01/20 Пнд 13:59:24 #342 №1578582 
>>1578574
>Эта хуйня сработала кроме нижней строки где у
В move_left(y) ты где-то y задаешь?
Аноним 20/01/20 Пнд 14:08:48 #343 №1578589 
>>1578517
>очередная волна читателей книжечек плачется, что программирование не дается
О таком обычно любители учиться по видосикам на ютюбчике плачутся.
Аноним 20/01/20 Пнд 14:16:22 #344 №1578595 
>>1578589
>I started with Codecademy in 2016-ish when almost everything was still free. I have finished the Python modules of that as well as with SoloLearn. I have read Automate the Boring Stuff and Python Crash Course as well as following along with the examples cover to cover. Now I am re-reading Automate, Crash Course, and Mark Lutz Learning Python, 5th edition. To add to these books I have: Complete Guide For Python Programming Deep Learning with Python, Fluent Python, Learning Python Network Programming, Rapid GUI Programming with Python and Qt, Python High Performance Programming.

>I understand syntax, can usually fix an error and debug, but to actually sit down and program anything of any real value eludes me.

Ну вот человек курсы проходил, книги читал и даже перечитывал. И не может понять что не так.
Аноним 20/01/20 Пнд 14:21:49 #345 №1578600 
>>1578595
>Starting to lose hope with learning Python
I have been interested in Python for over 7 months. I have read and followed along through Python Crash Course. I felt pretty confident with it. I wanted to learn more so I decided to start following along with Automate the Boring Stuff. Im starting to feel discouraged from learning, when it comes to writing code in the Practice Projects; I am 100% completely lost.

Вот второй такой же. Книжки, курсы. Так может лучше говнокодить тогда, чем книжки просто читать.
Аноним 20/01/20 Пнд 14:26:35 #346 №1578606 
image.png
У них бекэнд на джанго, судя по вакансиям. А я думаю, почему всё так хреново грузится и даже зайти с первого раза не может.
Аноним 20/01/20 Пнд 15:10:43 #347 №1578650 
>>1578600
Он учился семь месяцев, и после этого он не мог осилить задания из боринг стаффа? Это блять шутка?
Аноним 20/01/20 Пнд 15:17:04 #348 №1578657 
>>1578595
>I started with Codecademy
Начал с бесполезного дерьма, которое ничему не учит, и каждый новый курс объясняет одни и те же вещи, как будто я двенадцатилетний дебил, в первый раз увидевший компьютер.
>>1578600
>Так может лучше говнокодить тогда, чем книжки просто читать
Так их и не надо просто читать. Естественно, что практике можно научиться только через практику. Но начинать надо с базы, которая берётся из книг. А потом уже книги используются, чтобы разобрать непонятные моменты. А курсы обычно по-быстрому дают основы, ничего не объясняют, и в конце говорят "всё, вы готовы", что вселяет в человека ложную уверенность.
Аноним 20/01/20 Пнд 15:38:04 #349 №1578673 
>>1578606
Да они просто пожалели деньги на нормальное железо, сайт вообще не работает нихуя
Аноним 20/01/20 Пнд 17:16:34 #350 №1578767 
Снимок.PNG
Я мощно заебался. Если x за пределами функции не робит, если внутри то всегда одно число 1. А мне надо что бы я возвращался к переменной и в ней всегда было на +1 больше
Аноним 20/01/20 Пнд 17:21:13 #351 №1578772 
>>1578577
ок спс
Аноним 20/01/20 Пнд 17:33:41 #352 №1578781 
>>1578767
https://python-scripts.com/scope просвящайся (хз, насколько там хорошо объяснено, но там как раз про это).
В твоём случае нужно написать:
global x
над
x += 1
Аноним 20/01/20 Пнд 17:51:13 #353 №1578802 
>>1578781
Пасибо
Аноним 20/01/20 Пнд 17:52:40 #354 №1578803 
>>1578767
В то время как в JS и Lua локальность указывается вручную (иначе интерпретатор ищет переменную во внешних областях видимости), в питоне вручную указывается нелокальность (nonlocal и global).

ты всё равно что написал на JS:
function step() {
var x += 1
print(x)
}

Естественно, получишь UnboundLocalError: local variable 'x' referenced before assignment
Аноним 20/01/20 Пнд 17:55:43 #355 №1578808 
>>1578803
чел да мне похуй я тут робота делаю
Аноним 20/01/20 Пнд 17:56:36 #356 №1578810 
Снимок.PNG
>>1578803
Какой JS какой функшн
Аноним 20/01/20 Пнд 17:57:12 #357 №1578811 
>>1578803
РОБОТ БЛЯТЬ
Аноним 20/01/20 Пнд 18:18:03 #358 №1578829 
>>1578781
Пусть найдёт как без глобалов сделать
Аноним 20/01/20 Пнд 19:09:36 #359 №1578875 
>>1578767
Я тебе выше что написал?
> Иди читай про функции, передачу значений в функции и локальные переменные.
Почему не сделал? Считаешь, что такое должен двачик объяснять?
Аноним 20/01/20 Пнд 19:10:08 #360 №1578876 
Есть два датафрейма пандас
первый:
A = 1,2,3,4,5
B = q,w,e,r,t

второй:
A = 1,2,3,4,5
С = a,s,d,f,g


Я хочу получить следующее:
A = 1,2,3,4,5
B = q,w,e,r,t
С = a,s,d,f,g


Но через метод pandas.concat(frames)
получаю:
A = 1,2,3,4,5,1,2,3,4,5
B = q,w,e,r,t,NaN,NaN,NaN,NaN,NaN
С = NaN,NaN,NaN,NaN,NaNa,s,d,f,g


Весь день пытаюсь. Ниче не выходит. Помогите.
Аноним 20/01/20 Пнд 19:37:59 #361 №1578898 
>>1578876
Всё. Нашел решение.

frames = [df1, df2]

result = pandas.merge(right=df1, left=df2, how="outer")
Аноним 20/01/20 Пнд 20:01:58 #362 №1578924 
>>1569408 (OP)
В реальных проектах может совмещаться orm и запросы на чистом sql? Или там выбирают только что-то одно?
Типо основную crud логику на орм написать, а что-то сложнее писать самому?
Аноним 20/01/20 Пнд 20:03:28 #363 №1578925 
Есть какие-то расширения для VS, чтобы консолька рядом красиво отображалась?
ньюфак
Аноним 20/01/20 Пнд 20:10:26 #364 №1578930 
>>1578924
Алсо, вот у меня есть 300 строк питоновских функций с sql запросами внутри, мне надо их пытаться как-то в ооп стиле организовать? Выглядит сейчас это говняно, но я не уверен, что ооп много даст
Аноним 20/01/20 Пнд 20:21:57 #365 №1578936 
>>1578924
Да, так делают.
Аноним 20/01/20 Пнд 20:40:22 #366 №1578955 
>>1578431
pyqt5
Аноним 20/01/20 Пнд 20:50:54 #367 №1578958 
>>1578925
ctrl+`
Аноним 20/01/20 Пнд 20:52:24 #368 №1578959 
>>1578930
> ооп много даст
В твоем случае как минимум инкапсуляцию.
Аноним 20/01/20 Пнд 22:16:01 #369 №1579051 
Метаклассы и дескрипторы - эта шняга же обычному разработу нахрен не пригодится? Только красноглазым, разрабатывающим Питон-фреймворки?
Аноним 20/01/20 Пнд 22:28:28 #370 №1579062 
>>1579051
Да.
Аноним 21/01/20 Втр 06:22:40 #371 №1579201 
image.png
>>1578875
Мне примерно сорок лет понадобилось бы что бы догадаться до такого, я пытался 2 переменных сделать но вообще не так.
Аноним 21/01/20 Втр 06:24:58 #372 №1579203 
Есть что нить бодрое полуприкладное книжное для матики ? Что бы такие штуки не ставили мозг в тупик ???
Аноним 21/01/20 Втр 06:50:57 #373 №1579207 
>>1578767

Я решал такую проблему чкрез класс + справочник, типа:

test_dict ={}

class VarClass:
def __init__(self, user_id):
self.user_id = user_id
self.hui = None
self.pizda = None

test = 'маня'
test2= 'id мани'


user = VarClass (test)
test_dict[test2]= user

def func1 (x):
user.hui = 1 + x

def func2(y):
user.hui = user.hui - 15

ВАЖНО: если перезапишешь класс в справочник, то данные проебутся



Аноним 21/01/20 Втр 06:52:36 #374 №1579208 
>>1578767
Сейчас бы static иметь в языке, конечно.
Аноним 21/01/20 Втр 06:54:45 #375 №1579209 
>>1579201
И кст если ты игру пишешь, то может с классом тебе даже удобнее будет хранить информацию о объектк
Аноним 21/01/20 Втр 07:55:36 #376 №1579214 
>>1579203
Какие такие?
Аноним 21/01/20 Втр 08:12:12 #377 №1579220 
>>1578767
Осильте уже генераторы, что ли. Их же специально для этого придумали.

def step():
..x = 0
..while True:
....yield x
....x += 1

s = step()
next(s)
next(s)
Аноним 21/01/20 Втр 09:43:12 #378 №1579249 
>>1579220
спс
Аноним 21/01/20 Втр 09:47:36 #379 №1579254 
cachedfile15779973884321.mp4
>>1579207
>>1579208
>>1579209
>>1579220
Аноним 21/01/20 Втр 09:49:00 #380 №1579255 
>>1579214
Ты читать не умеешь ?
Аноним 21/01/20 Втр 10:22:12 #381 №1579273 
image.png
image.png
Ну что, челы, уже можно пробовать искать роботу? Хотя бы за еду...
Аноним 21/01/20 Втр 10:24:03 #382 №1579275 
>>1579273
Ищи практику за так, интервьюируйся у них, а потом, когда перезвонят, скажи что уже нашёл за деньги.
Аноним 21/01/20 Втр 10:31:44 #383 №1579281 
>>1579255
Ясно.
Аноним 21/01/20 Втр 10:38:53 #384 №1579287 
Я просто в ахуе, какие проблемы у вас вылезают при выполнении заданий робота, они блядь на циклы, условия и функции, какие нахуй генераторы, какие классы, чего вы делаете вообще там?

>>1579273
А что за сайт?
Аноним 21/01/20 Втр 10:56:01 #385 №1579303 
>>1579287
hackerrank.com
Аноним 21/01/20 Втр 11:12:03 #386 №1579317 
>>1579303
Похоже на упрощенную версию литкода
Аноним 21/01/20 Втр 11:23:13 #387 №1579323 
>>1579275
>>1579287
>>1579317
Собственно, эти скрины были к тому, что я год с полного нуля учился делать некоторые штуки с пистоном и алгоритмами, а теперь думаю, что зря потратил это время. Нужно было вротендом заниматься, в моем мухоебинске хоть какие-то вакансии для этого есть.
Блин, ещё и не в тот тред похоже написал, простите.
Аноним 21/01/20 Втр 13:05:38 #388 №1579386 
>>1579281
Понятно.
Аноним 21/01/20 Втр 13:07:22 #389 №1579390 
>>1579287
Тут уже высшая математика в ход идет братуха, ты пойми РОБОТ ДОЛЖЕН ДОЙТИ ДО КОНЦА БЛЕАДЬ
Аноним 21/01/20 Втр 14:31:01 #390 №1579440 
Анон, помоги новичку.

https://ideone.com/oZzZ0a
Аноним 21/01/20 Втр 14:46:13 #391 №1579457 
>>1579323
Вряд ли ты напрасно время потратил. Хотя лучше сам питон за год задрочил бы, чем алгоритмы.
При этом, если ты был полный ноль, то сейчас уже нет и все твои текущие знания не будет лишними при изучении жс, если уж решил на него перейти.
Аноним 21/01/20 Втр 14:46:15 #392 №1579458 
>>1579440
https://younglinux.info/python/feature/zip
Аноним 21/01/20 Втр 14:57:24 #393 №1579472 
>>1579440
Ты берёшь каждый элемент первого списка и к нему подставляешь каждый элемент второго. А тебе нужен один цикл, чтобы брать по элементу из двух
Аноним 21/01/20 Втр 15:21:06 #394 №1579491 
>>1579458
>>1579472
Понял, усвоил, спасибо!
Аноним 21/01/20 Втр 15:57:06 #395 №1579519 
Снимок.PNG
У меня верхняя поебота не работает как надо хотя все правильно делаю, встает в левом нижнем
а надо в правом нижнем
Аноним 21/01/20 Втр 16:09:27 #396 №1579534 
>>1579519
Все сделол
Аноним 21/01/20 Втр 16:44:26 #397 №1579574 
Объясните штуку с табуляцией и пробелами. Искал инфу - наткнулся на два лагеря из тех, кто топит за одно или другое. Что, собственно использовать? Читал, что можно сделать автоматическую разбивку табуляции на пробелы. Как реализовать это в PyCharm'е?
Аноним 21/01/20 Втр 16:47:47 #398 №1579578 
>>1579574
>Как реализовать это в PyCharm'е?
там всё реализовано по дефолту. И вабще, почему тебя этот вопрос волнует?
Аноним 21/01/20 Втр 17:02:25 #399 №1579587 
image.png
Насколько этот код говнокод?
Аноним 21/01/20 Втр 17:05:37 #400 №1579591 
>>1579587
Хуже только литирали кал
Аноним 21/01/20 Втр 17:06:39 #401 №1579593 
>>1579587
это просто цикл
Аноним 21/01/20 Втр 17:15:41 #402 №1579596 
>>1579578
Я раньше работал с другими языками, потому и удивился, увидев такой подход к ограничению скоупа. Вспомнил клин код и у меня возник этот вопрос, ведь если кто-то другой будет использовать код, всё должно быть чисто в этом плане. Но раз в PyCharm'е с этим всё норм, то ладно. Пожалуй, изучу его получше, дабы таких вопросов не возникало. Спасибо.
Аноним 21/01/20 Втр 17:25:04 #403 №1579601 
что такое литирали кал?
Аноним 21/01/20 Втр 17:49:33 #404 №1579610 
Есть 42 совета для pycharma, какие считаете полезными?
https://www.jetbrains.com/pycharm/guide/playlists/42/
Что еще юзаете в чарме?
Аноним 21/01/20 Втр 19:33:59 #405 №1579683 
Посоветуйте каких-нибудь материалов(лучше курсов) по структурам данных и их представлению в питоновской стандартной библиотеке. Ну и вообще про стандартную библиотеку, про итертулс и всё такое.
Аноним 21/01/20 Втр 19:40:27 #406 №1579690 
>>1579574
Только проблемы. Никаких табов нахуй.
Аноним 21/01/20 Втр 19:52:22 #407 №1579696 
>>1573618
Так ты ж весь файл в память читаешь, просто read() где-то отсекается и всё. Тебе надо читать файл блоками и подавать на хеширование
https://askdev.ru/q/poluchit-md5-hesh-bolshih-faylov-v-python-10548/
Аноним 21/01/20 Втр 21:22:14 #408 №1579849 
изображение.png
>>1579587
1) score1, score2 = 0 не работает. Надо score1, score2 = 0, 0 или score1 = score2 = 0. Второе предпочтительнее, на мой взгляд.
2) такой цикл через while нет смысла использовать, когда можно:
for _ in range(100): ("_" используется, когда нам значение не нужно это, как тут)
3) хз, какой лучший вариант для рандома, но точно не твой. Проще random.randint(0, 1). Плюс, если у тебя будет 1.00, то ни одна переменная не получится +1, так и задумано? Переделанный вариант - пикрил.
4) также можно, вообще рандомом сгенерировать себе score1, а затем вычесть из 100 его и это будет score2.
Либо score1 можно генератором списка, а не циклом получить, а затем уже опять же получить score2 = 100 - score1:
>>> import random
>>> score1 = sum(random.randint(0, 1) for _ in range(100))
>>> score2 = 100 - score1
>>> print(score1, score2)
51 49
Аноним 21/01/20 Втр 21:24:44 #409 №1579862 
>>1579849
Лишние пробелы (6 вместо 4) в цикле поставились в отступах, ну да ладно.
Аноним 21/01/20 Втр 21:49:13 #410 №1579915 
Сап питонисты. Пишу свой ламповый манга-сайт с помощью джанго. Сейчас на сайте присутствуют следующие адреса:
1. /manga/ -> здесь отображаются все обьекты моей модели MangaList (название манги, описание)
2. manga/<slug:post>/ - детальная страница манги. Здесь указаны название манги, описание и т.д. (т.е например есть манга Naruto, следовательно она имеет адрес manga/naruto-is-cool)

Теперь непосредственно проблема:
Бд имеет две таблицы (и связь один ко многим): MangaList(здесь название манги описание и т.д), а также MangaImages(здесь есть поле mangaid = models.ForeignKey(MangaList, on_delete=models.CASCADE, related_name='manga_images') а также после с картинкой).
Вроде все работает, картинки сохраняются под айдишкой MangaList. Но у меня вообще нет идей как отображать адрес с картинкой определенной манги.
Т.е я в manga/naruto-is-kruto/ должен клацать по "прочитать" и попадать в /manga/naruto-is-kruto/watch/. Но ничего не получается, я и метод absolute_get_url прописывал для второй таблицы и {% url "manga_watch" %} в шаблоне прописывал, но все не получается.

Прошу помощи у вас. Я хз как это прописывать.
https://pastebin.com/4Yq6caW8
Аноним 22/01/20 Срд 07:05:45 #411 №1580317 
Помогите написать генератор случайных чисел отсюда https://docs.rs/GSL/0.4.26/rgsl/types/rng/algorithms/fn.cmrg.html
У меня как-то не очень выходит
def seedE(x, y,
a_1 = 0,
a_2 = 63308,
a_3 = -183326,
b_1 = 86098,
b_2 = 0,
b_3 = -539608,
m_1 = 231 - 1,
m_2 = 2145483479):
def randE():
nonlocal x, y, a_1, a_2, a_3, b_1, b_2, b_3, m_1, m_2
x = (a_1 x[i-1] + a_2 x[i-2] + a_3 x[i-3]) % m_1
y = (b_1
y[i-1] + b_2 y[i-2] + b_3 y[i-3]) % m_2
z=(x - y)%m_1
return x_n
return y_n
return z_n
return randE
По -идее там надо еще первые 3 штуки x и y задать, но массивы в функцию как-то не запихиваются.
Аноним 22/01/20 Срд 07:06:57 #412 №1580318 
>>1580317
Вот с форматированием https://pastebin.com/zwnnp1Hv
Аноним 22/01/20 Срд 07:19:51 #413 №1580322 
0205d74ecaba34bad025ebebea1dd979.jpg
>>1580317
Побуду твоей уточкой. Объясни, зачем ты разбил это на две функции именно таким образом?
Аноним 22/01/20 Срд 07:26:54 #414 №1580325 
>>1580322
Был аналогичный пример с более простым генератором https://pastebin.com/B5Djw8f0
Попытался сделать нечто похожее.
Аноним 22/01/20 Срд 07:29:42 #415 №1580326 
>>1580325
Хорошо, но зачем это сделано в более простом генераторе?
Аноним 22/01/20 Срд 07:36:50 #416 №1580328 
>>1580326
Там хитрая closure функция. Чтоб значения из внутренней записывать во внешнюю. Я просто попытался повторить. Есть у такого подхода перспективы или сразу ясно, что тут такое не сработает? Я не до конца с closure функциями разобрался, поэтому не знаю. В простом примере там просто переменные были, а тут надо еще 3 предыдущих значения запихнуть как-то.
Аноним 22/01/20 Срд 07:42:15 #417 №1580333 
>>1580328
Уточка думает, что нужно в первую очередь понять, как идёт поток выполнения программы. Что меняется, где и когда. Если хочешь, начни с более простого примера.
Аноним 22/01/20 Срд 07:46:10 #418 №1580338 
>>1580333
Лучше маленькими сообщениями по 2-3 шага, чтобы уточка не потерялась.
Аноним 22/01/20 Срд 07:53:32 #419 №1580342 
>>1580338
>>1580333
Если бы я знал, то не спрашивал. Алгоритм сам простой, но закодить я хз как. Причем именно в виде функции.
Надо задать первые 3 значения x, y. Дальше
x = (a_1 x[i-1] + a_2 x[i-2] + a_3 x[i-3]) % m_1
y = (b_1 y[i-1] + b_2 y[i-2] + b_3 y[i-3]) % m_2
z=(x - y)%m_1
будут давать новые значения. Но вот как записать эти первые 3 значения и куда и как добавлять новые я не знаю.
Аноним 22/01/20 Срд 08:05:17 #420 №1580348 
>>1580342
Уточка имела в виду поток программы здесь >>1580325 описать простыми словами. Тогда можно будет двигаться в более сложную. (Если ты, конечно, хочешь именно через клозуры генератор сделать)
Аноним 22/01/20 Срд 08:15:41 #421 №1580356 
>>1580348
Там lcg генерит новые seed и дает их в seed2. seed2 как бы хранит значения.
> (Если ты, конечно, хочешь именно через клозуры генератор сделать)
Какие еще варианты? Если там проще, то хорошо. Главное чтоб потом можно было массив сгенерировать длины N rand(N).
Аноним 22/01/20 Срд 08:20:48 #422 №1580365 
>>1580356
Давай ещё подумаем, чем отличается тот алгоритм, что ты сейчас пишешь, от этого более простого примера. Мы начнём с того, что посмотрим, с чего начинаются они. С чего начинается простой?
Аноним 22/01/20 Срд 08:27:44 #423 №1580369 
>>1580365
Задаем seed например 1, seed переписывается на (1*а+b)%m и так по кругу. Как я понимаю в сложном надо 6 сидов задать по 3 на x и y?
Аноним 22/01/20 Срд 08:29:30 #424 №1580371 
>>1580369
Ладно я спатки пойду. Может позже рожу чего.
Аноним 22/01/20 Срд 08:30:51 #425 №1580375 
>>1580369
>и так по кругу
И так далее. Потому что этот алгоритм движется вперёд.

А куда движется >>1580317?
Аноним 22/01/20 Срд 08:46:41 #426 №1580387 
image.png
>>1579915
Долго с джангой не работал, сидел плотно на SQL. Но я бы сделал так:
Делаешь связь много ко многим и уже с помощью этой сущности делаешь представление например: (manga_id, manga_pic_url) и от сюда хуяришь url-ки на сайт. Или можно без представление, просто через отношение много ко многим как например в пикрелейтед.
Аноним 22/01/20 Срд 09:24:33 #427 №1580408 
>>1580387
https://dpaste.org/2cqf
>Долго с джангой не работал
Ну что то вроде этого. Потом с помощью запросов кидаешь все что нужно на сайт.
Аноним 22/01/20 Срд 10:42:10 #428 №1580456 
>>1580371
https://pastebin.com/VdPCRduT
Ну, уточка что-то накалякала, может пригодится, когда проснёшься.
Аноним 22/01/20 Срд 10:51:24 #429 №1580458 
>>1580456
рейт
Аноним 22/01/20 Срд 11:21:21 #430 №1580472 
>>1580456
Или, если хочется совсем клозурами обмазаться (и получить доступ к изменению семян), то так
https://pastebin.com/rMAwGMMY
Аноним 22/01/20 Срд 15:44:16 #431 №1580781 
Тест
Аноним 22/01/20 Срд 16:44:18 #432 №1580832 
Как перебрать список через 1 элемент?
For (i=1, i<100, i+2);
Аноним 22/01/20 Срд 16:49:20 #433 №1580837 
>>1580832
for i in range(1, 100, 2):
print(i)
3-е число и есть шаг
Аноним 22/01/20 Срд 16:51:59 #434 №1580839 
>>1580837
Спасибо.
Аноним 22/01/20 Срд 17:07:56 #435 №1580847 
Гайз, а подскажите как создавать обьекты классов с консоли ввода, а не внутри самого кода? То есть чтобы вывести "введите имя, введите номер и т д" и это записывалось в класс.
https://pastebin.com/ciJhGrHh
Аноним 22/01/20 Срд 18:59:25 #436 №1580915 
>>1580847
Через x = input("какой-то текст для инфы:"), не?
Аноним 22/01/20 Срд 20:16:43 #437 №1580960 
>>1580915
это да, но я хз как этот инпут к конкретному полю класса привязать. И ещё я пока не очень понимаю как сделать так, чтобы с каждого последующего инпута создавался новый экземпляр класса: типа сначала мы вводим х1.имя, х1.номер, х1.ещечтонибудь, а потом то же самое для х2, х3 и до хn
Аноним 22/01/20 Срд 20:36:15 #438 №1580969 
изображение.png
Есть ли способ напрямую получать доступ к областям памяти объектов?
(вон на пикриле дефолтное repr-представление объекта)
Можно ли: также получить у рандомного у объекта во время выполнения проги область памяти, на которую он ссылается? И можно ли по полученной области памяти получить ссылку на сам объект?..
Аноним 22/01/20 Срд 20:43:29 #439 №1580972 
>>1580969
По хорошему - нет.
Но ты можешь написать расширение на сишке, которое будет принимать объект и возвращать адрес, функцию для обращения к адресу и чтения/записи... И получить UB в высокоуровневом и безопасном питоне.
Аноним 22/01/20 Срд 22:00:19 #440 №1581051 
>>1580960
> я хз как этот инпут к конкретному полю класса привязать
Можно разбить введенную строку на список, а затем распаковать при инициализации класса, как пример построчно:
new_contact_input = 'Alice Unknown,89001234567,01.01.1999'
new_contact_list = new_contact_input.split(",") # вернет ['Alice Unknown', '89001234567', '01.01.1999'] в new_contact_list
new_contact = FRIEND(new_contact_list) # распаковка списка, то же самое, если передать в качестве аргументов: 'Alice Unknown', '89001234567', '01.01.1999'

> И ещё я пока не очень понимаю как сделать так, чтобы с каждого последующего инпута создавался новый экземпляр класса: типа сначала мы вводим х1.имя, х1.номер, х1.ещечтонибудь
Аналогично первому варианту, только аппендить в список:
new_contact_list = []
for i in range(3):
....new_contact_list.append(input(f"Ввод поля #{i + 1}: "))
new_contact = FRIEND(
new_contact_list)

> а потом то же самое для х2, х3 и до хn
Полагаю, что тебе нужно это в список складывать (или словарь). В данном случае это нужно вложить еще в один цикл и, например, спрашивать после создания первого, нужно ли еще одного создавать. Твой код нерабочий, но если убрать numContacts (нейминг тоже неправильный, правильно типа num_contacts), то вот такой пример можешь попробовать, чтобы увидеть как оно работает:

contacts = [FRIEND('Alice Unknown', '89001234567', '01.01.1999'), FRIEND('Suika Ibuku', '8999999999', '09.09.1999')] # два экземпляра класса FRIEND (тоже неправильный нейминг, классы в CamelCase) в списке
contacts[0].displayInfo()

выдаст:
Создание нового контакта...
Создание нового контакта...

Имя: Alice Unknown,
Номер телефона: 89001234567,
Дата рождения: 01.01.1999.
Аноним 22/01/20 Срд 22:02:10 #441 №1581053 
>>1581051
Съело зведочки, в этих строках они перед new_contact_list:

new_contact = FRIEND(new_contact_list)

new_contact = FRIEND(new_contact_list)
Аноним 22/01/20 Срд 23:58:31 #442 №1581165 
>>1580472
Спасибо. Даже немного сложнее чем я ожидал, но работает.
Аноним 23/01/20 Чтв 00:49:57 #443 №1581186 
>>1581165
Работает-то оно понятно, что работает. Ты понял почему и как?
Аноним 23/01/20 Чтв 02:50:04 #444 №1581207 
>>1581186
Примерно понятно. Тут точно не скажешь пока самому не придется аналог написать.
Аноним 23/01/20 Чтв 02:51:23 #445 №1581208 
>>1581207
Так пиши. Потом объяснишь.
Аноним 23/01/20 Чтв 03:32:06 #446 №1581215 
>>1569408 (OP)
Как отсортировать dictionary:
{'1': '7', '0': '13', '3': '4', '2': '1', '5': '2', '4': '3'}
чтобы было:
{'0': '13', '1': '7', '3': '4', '4': '3', '5': '2', '2': '1'}
?

python 3.2.5
Аноним 23/01/20 Чтв 03:39:43 #447 №1581217 
>>1581215
https://docs.python.org/3/library/collections.html#collections.OrderedDict
Аноним 23/01/20 Чтв 04:00:26 #448 №1581222 
>>1581217
Ну и чё мне делать-то с ним? Хреново сортирует: https://rextester.com/KLZ89135
Аноним 23/01/20 Чтв 04:17:11 #449 №1581223 
>>1581222
Всё, я понял.
>t[1]
->
>int(t[1])
В dict чёт криво конвертируется, ну и ладно: https://rextester.com/HXZU89024
Аноним 23/01/20 Чтв 08:02:05 #450 №1581257 
>>1581215
А зачем тебе сортировать словарь? Это же словарь, он по определению не должен быть сортирован. Может тебе для твоей задачи другая структура данных нужна?
Аноним 23/01/20 Чтв 09:21:39 #451 №1581290 
>>1581257
Очевидно, что анон хочет не dict, а что-то подобное с ключами и значениями, но отсортированное. Например, чтобы вывести красивую упорядоченную табличку на экран.
Аноним 23/01/20 Чтв 09:54:56 #452 №1581304 
>>1581290
Список кортежей? Или просто достать список ключей, отсортировать и вызывать по нему.
Аноним 23/01/20 Чтв 10:22:26 #453 №1581319 
>>1581304
Ага, самый очевидный вариант.
Аноним 23/01/20 Чтв 12:08:25 #454 №1581386 
Салют, как сделать чтобы числа выводились до сотых, даже если второе число 0.
8.2 > 8.20
5.0
10
0 > 0.00
4.50
и так далее
Считал я перцентиль, среднее, медиану, самое большое число и самое маленькое из файла с числами. Использовал NumPy
Аноним 23/01/20 Чтв 12:32:04 #455 №1581412 
Самое время поработать над шапкой, пацаны.

https://dumpz.org/bqyrfCbEPA9t
Немного скорректировал то, что уже имеется. Вносите свои изменения.
Аноним 23/01/20 Чтв 12:37:45 #456 №1581419 
>>1581386
print("%.2f" % x)
Подойдёт такое?
Аноним 23/01/20 Чтв 12:43:35 #457 №1581422 
1232.png
>>1581419
Или я просто не понимаю как записать это правильно.
Аноним 23/01/20 Чтв 12:54:22 #458 №1581432 
Screenshot20200123130146.png
>>1581422
https://docs.python.org/3/library/stdtypes.html#str.format
как-то так
Аноним 23/01/20 Чтв 13:00:03 #459 №1581439 
>>1581432
Ноль перед двоиточием необязательно, пробелы после не нужны (если в формате их получить не хочешь).
Аноним 23/01/20 Чтв 13:45:20 #460 №1581476 
>>1581432
>>1581439
Спасибо!
Аноним 23/01/20 Чтв 15:12:40 #461 №1581559 
>>1581051
>>1581053
Спасибо!
Аноним 23/01/20 Чтв 16:49:58 #462 №1581648 
Хочу сделать сайт, который будет брать данные из эксель-файла и с ними работать: строить графики, анализировать, выводить данные за год, за месяц, за неделю. Так же хотелось бы добавить возможность самому вводить данные в некую бд, без эксель-файла.
1. Как все это организовать? Нужно ли заставлять пользователя регистрироваться чтобы добавить его в базу, а затем привязать к каждому пользователю его данные или можно без этого обойтись?
2. Что посоветуете почитать помимо тутора с документации по джанге и тутора от мазилы?
Аноним 23/01/20 Чтв 16:57:09 #463 №1581655 
>>1581648
Я бы сделал так, но я такой же нюфаг как и ты.
Поднял базу, в базу раз в какое то время забирал инфу из экселя через celery, если значения не совпадают - не копировал бы их.
Плюс через формы разрешил бы вбивать новые записи уже через саму джангу. Регистрацию бы пилил в случае, если сервер будет смотреть в инет, если он в локалочке, то строго поебать.
Ну и графики на фронте отрисовать просто каким нибудь жс фремворком. Хотя, вероятно, думаю, можно и чем нибудь вроде pandas, но мне бы было лень в нем разбираться.
Аноним 23/01/20 Чтв 17:32:25 #464 №1581672 
>>1581648
Я бы посоветовал для начала глянуть такую штуку как SuperSet.
Аноним 23/01/20 Чтв 17:46:07 #465 №1581684 
>>1580969
А зачем тебе питон с такими проблемами?
Аноним 23/01/20 Чтв 17:50:17 #466 №1581686 
Есть две картинки, нужно наложить маску второй на первую по альфа каналу, дополнительно делаю resize до размера первой картинки. Делаю через pil, создаю пустую картинку и делаю так
>new_image = Image.composite(im, empty_image, mask)
Все открываю как RGBA. По краям остается слегка заблюренный черный контур при сохранении, когда делаю show, то мне кажется, что этого контура нет (или он просто не виден на этом фоне). Это нужно что-то дополнительно с картинкой/маской делать, что бы его не было?
Аноним 23/01/20 Чтв 17:57:43 #467 №1581691 
>>1581412
В полезные ссылки мб впихнуть
https://www.youtube.com/channel/UCCezIgC97PvUuR4_gbFUs5g
Хорошие туториалы по Фласку/Джанго для начинающих и еще пару полезных плейлистов по Сублиму, гиту, командной строке и т.д.
https://github.com/tuvtran/project-based-learning#python
Название говорит само за себя. Есть гайды по интересным проектам на разные темы + такие же гайды по другим языкам.

Аноним 23/01/20 Чтв 22:11:02 #468 №1581878 
>>1581686
Понял, что это из-за цвета пустой картинки в которой при применении метода composite почему-то игнорируется выкрученный на полную альфа канал
Аноним 24/01/20 Птн 01:17:08 #469 №1581986 
>>1581290
>>1581319
Не совсем, это, но примерно так.

>>1581257

Моя задача, в некоем массиве:
x = [0, 1, 3, 0, 5, 0, 1, 0, 4, 1, 0, 1, 4, 0, 0, 3, 0, 2, 0, 1, 3, 0, 3, 0, 1, 4, 0, 1, 5, 0];
закодировать уникальные значения:
['0', '1', '2', '3', '4', '5'];
префиксным кодом - кодом Хаффмана:
0
10
110
1110
11110
11...1

При этом, наиболее коротким кодом,
должно кодироваться значение - с наибольшей частотой повтора.

Поэтому, в dictionary = {'1': '7', '0': '13', '3': '4', '2': '1', '5': '2', '4': '3'}
я положил количества повторов этих уникальных символов.
Следовательно, стояла задача - отсортировать этот dictionary,
и заменить количества повторов на соответствующие коды.

Но я и так разобрался.
Вот полный код, если чо: https://rextester.com/XSMSF58499
Я из треда https://2ch.hk/math/res/62709.html пытаюсь сжать несжимаемые данные.
Получается пока хреново, но что-то всё-таки, вроде, получается. :3
Аноним 24/01/20 Птн 01:18:17 #470 №1581987 
>>1581257
И да, какие структуры данных лучше использовать в подобном случае - я так и не понял.
- [-] - 24/01/20 Птн 01:18:41 #471 №1581988 
-
Аноним 24/01/20 Птн 03:17:03 #472 №1581999 
>>1581672
>>1581655
Спасибо, анончики.
Аноним 24/01/20 Птн 06:28:24 #473 №1582017 
>>1581987
Список таплов, где тапл = (символ, частота)
Сортируешь список с ключом lambda x: x[1]
Если хочешь чуть более красивый код, можешь ещё про namedtuple погуглить
Аноним 24/01/20 Птн 08:45:43 #474 №1582050 
Ой сложно мне, сложно.
Не могу найти как обратиться к значению kolichestvo в цикле.
Store={
'gvozdi':[
{'kolichestvo':27,'cena':50},
{'kolichestvo':30,'cena':50},
{'kolichestvo':40'cena':50},
],
...
...
...
}
Аноним 24/01/20 Птн 08:58:23 #475 №1582057 
>>1582050
for gvozd in store["gvozdi"]:
..print(gvozd["kolichestco"]

Не извращайся с траслитом, в питоне идентификаторы можно писать кириллицей.
Аноним 24/01/20 Птн 09:03:17 #476 №1582059 
>>1582050
Если тебе надо те только гвозди, то
for _, l in Store.items():
..for b in l:
....print(b['kolichestvo'])

Ну и у тебя пиздец, а не структура данных. Игла в яйце, яйцо в дятле. Хотя бы от 'kolichestvo','cena' в каждом кортеже избавься. named tuples тебе нужны.
Аноним 24/01/20 Птн 09:24:48 #477 №1582065 
>>1582057
О, спасибо большое.
>>1582059
Не обращай внимание, дятел с иглой в заднице - это ты хорошо меня описал.
sageАноним 24/01/20 Птн 10:43:33 #478 №1582114 
>>1569408 (OP)
>В ньюфаг-треде написано, что нужно начинать с SICP, чтобы научиться программировать - Вот, пожалуйста, та же самая программа
Не та же самая. Собственно и название неспроста поменяли.
Аноним 24/01/20 Птн 12:57:46 #479 №1582187 
>>1581986
Корябаю твою задачу потихоньку, нашёл ошибку. В def how_many_nulls(binary_data) у тебя никак не обрабатываются нули в конце binary_data. Даже если их был десяток, то счётчик про них забывает и они никуда не аппендятся.
Аноним 24/01/20 Птн 16:13:23 #480 №1582319 
Пишу скрапер для внутреннего сайта своей говноконторы. При открытии страницы с браузера html вываливается полностью, а при реквесте с пайтона все, кроме того что нужно. Сам сайт древнее говно мамонта, написанное на пхп. Для загрузки юзаю bs4 + requests. Есть идеи куда копать? Если что я ньюфаг во всем этом.
Аноним 24/01/20 Птн 16:47:29 #481 №1582339 
>>1582319
Вангую что там ЖС к тебе не прилетает.
Копай в сторону Ф12 на хроме и selenium webdriver headless
Аноним 24/01/20 Птн 16:55:13 #482 №1582347 
https://hastebin.com/uhakilalod.py

Зацените,

Вот это говно раз в 5 минут качает вебмки из вебм-тредов и fap-тредов и качает себе
Аноним 24/01/20 Птн 16:58:31 #483 №1582353 
>>1582339
Да хуй там, гет запрос и все. В ф12 жабаскриптом и не пахнет. Чисто вывалило html и все. Может я совсем даун, конечно, но я никаких упоминаний скриптов, или .js в хтмл не вижу.
Аноним 24/01/20 Птн 17:02:15 #484 №1582355 
>>1582353
>строки генераторов в пол экрана ЛИШЬБЫНЕВЦИКЛЕ
Аноним 24/01/20 Птн 17:06:39 #485 №1582357 
1.PNG
Привет писюки, скажите как сделать это не таким ебаным?
Тройное if как записать проще ?
Аноним 24/01/20 Птн 17:14:16 #486 №1582364 
>>1582357
словари они же хеши и проверка по ключу
Аноним 24/01/20 Птн 17:20:22 #487 №1582370 
>>1582319
Может там есть проверка юзерагента и он ошибку выкидывает, когда ты без него обращаешься? Посмотри, что он тебе присылает.
Аноним 24/01/20 Птн 17:21:22 #488 №1582372 
>>1582357
if x_raw % 10 in [1, 2 ,3]:
fill_cell()
Аноним 24/01/20 Птн 17:40:31 #489 №1582378 
>>1582372
>>1582364
Спс нямсики, пидорасики мои
Аноним 24/01/20 Птн 18:13:48 #490 №1582401 
>>1582353
Мда уж.
Открой вкладку нетворк, она тебе нужна, а не ебучий ЖС в ХТМЛ коде.
Аноним 24/01/20 Птн 18:14:38 #491 №1582406 
image.png
>>1582401
К примеру пикрил
Аноним 24/01/20 Птн 20:27:51 #492 №1582481 
>>1581684
Потому что я байтоёб
Аноним 24/01/20 Птн 21:38:41 #493 №1582505 
Реально ли выучить питон + базовые алгоритмы за 3 дня 72 часа без сна ? Имею слабоумие и две банки рэдбула
Аноним 24/01/20 Птн 21:39:50 #494 №1582506 
>>1582505
До этого почти не программировать кста
Аноним 24/01/20 Птн 21:41:41 #495 №1582508 
>>1582505
Нет.
Аноним 24/01/20 Птн 21:42:34 #496 №1582509 
>>1582508
Вообще без шансов? А что можно успеть?
Аноним 24/01/20 Птн 22:02:42 #497 №1582516 
>>1582509
Много что можно, но это много от чего зависит. Эффективно учиться ты сможешь всё равно часа 4-5 в день и это крайний максимум.
Аноним 24/01/20 Птн 22:03:35 #498 №1582518 
>>1582509
Ну, самые основы за день можно осилить и закрепить, наверное. Но это не то же самое, что выучить питон.
И если тебя интересуют самые базовые алгоритмы, то есть для чайников книга "грокаем алгоритмы", там примеры на питоне. Наверное, за три дня какой-нибудь выхлоп получишь с этого суммарно. Плюс была ещё какая-то книга, где алгоритмы на разных языках, в том числе и на питоне. В неё тоже, наверное, ты мог бы поглядеть.
Но если ты будешь проходить собеседование или что-то такое, то тебя очень быстро раскусят, что ты питон едва знаешь.

Возможно, у других анонов иное мнение будет.
Аноним 24/01/20 Птн 22:20:38 #499 №1582529 
>>1582516
>>1582518
Ок, спасибо сахарки
Аноним 24/01/20 Птн 22:25:24 #500 №1582531 
>>1581986
>x = [0, 1, 3, 0, 5, 0, 1, 0, 4, 1, 0, 1, 4, 0, 0, 3, 0, 2, 0, 1, 3, 0, 3, 0, 1, 4, 0, 1, 5, 0];

>>1581215
>Как отсортировать dictionary:
>{'1': '7', '0': '13', '3': '4', '2': '1', '5': '2', '4': '3'}
>чтобы было:
>{'0': '13', '1': '7', '3': '4', '4': '3', '5': '2', '2': '1'}

Ты можешь получить такого рода результат с помощью collections.Counter:

from collections import Counter
x = [0, 1, 3, 0, 5, 0, 1, 0, 4, 1, 0, 1, 4, 0, 0, 3, 0, 2, 0, 1, 3, 0, 3, 0, 1, 4, 0, 1, 5, 0]
c = Counter(x)
print(c)

Результат:
Counter({0: 13, 1: 7, 3: 4, 4: 3, 5: 2, 2: 1})

При этом ты можешь его сделать словарем dict(c), но все равно порядок элементов тебе питон 3.2 не гарантирует для стандартного словаря, но и не ясно до сих пор зачем тебе это надо. Если же тебе нужно цикл прогнать по его ключам-значениям, то это делается также, как и для обычного словаря и как раз оно будет в порядке убывания, как тебе и надо:
for k, v in c.items():
....print(k, v)

По ссылке https://rextester.com/XSMSF58499 у тебя какой-то треш. Откуда-то точки с запятыми, а еще условные операторы обернутые без необходимости в скоки, что требуется в других языках, но не здесь.
Аноним 24/01/20 Птн 23:33:08 #501 №1582590 
>>1582516
ну вообще мне помогает подремать полчасика в процессе поглощения тяжелого материала.
Аноним 25/01/20 Суб 13:31:59 #502 №1582733 
968540378602570.png
Блэт кто-нибудь объяснит какого хуя строки, в конце которых символ \ не создаются? Я ж блин символ r перед строкой поставил, он означает, что любые специальные и экранирующие символы игнорятся
С фига ли не работает?
Аноним 25/01/20 Суб 13:34:41 #503 №1582734 
Как войти в айти, ребятушки?
Аноним 25/01/20 Суб 14:04:29 #504 №1582748 
t22.png
Я совсем запутался с циклами этими, как эти сраные точки сравнивать? Вершину, допустим, легко найти. Внутри/снаружи я что-то слышал про метод луча, но так и не смог разобраться. А со сторонами вообще не понял. Хелпаните, друзья, хоть направление дайте куда двигаться
Аноним 25/01/20 Суб 14:11:37 #505 №1582752 
>>1582748
Учи геометрию за 6 класс и уравнение прямой
Аноним 25/01/20 Суб 14:44:39 #506 №1582762 
Как нахуячить FTP-сервер на Питонухе?.. FTP-клиент то без проблем пишется с помощью стандартной либы ftplib
Аноним 25/01/20 Суб 14:48:29 #507 №1582764 
>>1582748
Как кстати 3 и 4 делать? Если точка снаружи то можно построить прямые до каждой вершины и измерить угол между этими вершинами и он окажется всегда меньше 180, а если точка внутри то построив прямые до вершин и измерив угол между ними то как минимум 1 будет больше 180 градусов и значит точка внутри?
мимо
Аноним 25/01/20 Суб 14:49:10 #508 №1582766 
>>1582733
https://docs.python.org/3.7/reference/lexical_analysis.html
> Even in a raw literal, quotes can be escaped with a backslash, but the backslash remains in the result; for example, r"\"" is a valid string literal consisting of two characters: a backslash and a double quote; r"\" is not a valid string literal (even a raw string cannot end in an odd number of backslashes). Specifically, a raw literal cannot end in a single backslash (since the backslash would escape the following quote character). Note also that a single backslash followed by a newline is interpreted as those two characters as part of the literal, not as a line continuation.

>>1582734
python -m vhod.py "Aiti"

>>1582762
https://serverpilot.io/docs/how-to-run-a-simple-ftp-server/
Оно?
Аноним 25/01/20 Суб 14:49:39 #509 №1582767 
>>1582764
2 и 3*
Аноним 25/01/20 Суб 14:55:26 #510 №1582774 
123.PNG
Что написано в верхней строке ??
Мне надо так:
Покуда нет стены справа И нет стены снизу:
ебашу код.


Но нихуя не получается



Аноним 25/01/20 Суб 15:00:08 #511 №1582775 
>>1582774
Ха ха жду тебя на пятой лекции.
Там так и написано как ты хочешь, но попробуй
while wall_os_on_the_right() == False and wall_is_beneath() == False
Аноним 25/01/20 Суб 15:02:55 #512 №1582777 
image.png
>>1582748
>>1582764
Это твое тестовое задание? Если да, то у меня плохие новости к твоему работодателю
У тебя есть диапазон X и Y. Ты смотришь как точки из второго файла относятся к нему: внутри диапазона (2), совпадают с одним граничным значением (1), совпадают с двумя граничными значениями (0), не лежат в диапазоне (4).
Сложность уровня школьных задачек по паскалю или что у вас там в школьной программе было.
Аноним 25/01/20 Суб 15:03:17 #513 №1582779 
>>1582017
Благодарю.
>>1582187
>у тебя никак не обрабатываются нули в конце binary_data
Да, достаточно раскомментировать это после цикла в how_many_nulls:
>#array.append(count); #number of nulls in the end
>>1582531
Благодарю, так проще даже, и меньше кода.

>По ссылке https://rextester.com/XSMSF58499 у тебя какой-то треш.
>Откуда-то точки с запятыми,
>а еще условные операторы обернутые без необходимости в скоки,
>что требуется в других языках, но не здесь.
Я с JavaScript'a в пистон перебрался, пишу коряво, но зато работает кот.

Если чо, пишите пожелания в треде https://2ch.hk/math/res/62709.html , чтобы тут не флудить.
Там тоже есть некие наброски черновые, можете глянуть их, чисто по фану.
Аноним 25/01/20 Суб 15:04:59 #514 №1582782 
>>1582777
Рисунок хуевый для пояснения нарисовал. С точкой B я хотел показать что это одна и та же точка (один и тот же случай), в которой одно из значений x1, x2, y1 или y2 совпадает с координатой точки В.
Аноним 25/01/20 Суб 15:05:14 #515 №1582783 
>>1582777
Да я в принципе понимаю как это работает. Я не могу это нормально в код преобразовать
Аноним 25/01/20 Суб 15:10:56 #516 №1582788 
>>1582775
Нихуя ты лектор бля, гундосик мамин
Аноним 25/01/20 Суб 15:11:33 #517 №1582790 
>>1582777
Что за хуйня? И как ты по одной проверке по диапазону узнаешь находится ли точка внутри или снаружи, там же не обязательно прямоугольник параллельный оси Х будет. Кроме как через углы детектить не представляю как.
Аноним 25/01/20 Суб 15:12:26 #518 №1582791 
>>1582748
Откуда задания вестимы ?
Аноним 25/01/20 Суб 15:14:10 #519 №1582793 
>>1582791
Чьи?
Аноним 25/01/20 Суб 15:28:38 #520 №1582807 
>>1582788
Мне просто нужен хелп с пятой лекцией)
Аноним 25/01/20 Суб 15:44:35 #521 №1582817 
image.png
image.png
>>1582783
>>1582790
Звиняюсь, это я дебил и решил что в остальных вариантах, как в примере будут прямоугольники. Тогда положение внутри можно находить методом трассировки луча (дохуя нагромождение на рисунке, но в интернете будет более наглядный рисунок и решение на змеюке).
Нахождение точки на линии можно проверить по формуле прямой (можешь выразить коэффициенты k и b, а потом проверять равенство игреков по формуле y=kx+b)
Аноним 25/01/20 Суб 15:48:20 #522 №1582823 
Анон, есть какая-нибудь команда, которая позволяет быстро повторить отдельно взятую строку или несколько строк кода.

То есть у меня есть например

1 бла бла бла
2 бла бла бла бла
....
....
....

Далее в коде я хочу повторить 1 и 2 строки. Я понимаю, что мне ничего не мешает просто их скопировать, но может есть что-то более элегантное типа repeatline(1), чтоб это одним словом можно было сделать.
Аноним 25/01/20 Суб 15:55:49 #523 №1582829 
>>1582823
Функции.
Аноним 25/01/20 Суб 16:22:50 #524 №1582842 
>>1582807
А
А чо за лекции?
Аноним 25/01/20 Суб 16:24:13 #525 №1582843 
>>1582793
На картинке
Аноним 25/01/20 Суб 16:32:08 #526 №1582847 
Аноны, поясните, какие пакеты использовать для REST api в Flask? В Django понятно - это Django REST framework + swagger. А в Flask что?
Аноним 25/01/20 Суб 16:49:03 #527 №1582850 
>>1582842
Тимофей Хирьянов - ютюб
Аноним 25/01/20 Суб 17:12:36 #528 №1582866 
Вопрос. С аргуметами совсем не дружу. Есть у меня скрипт он читает файлы и делает с ними подсчеты. Нужно открывать скрипт через консоль и аргументом передавать путь к папке с файлами. Как это провернуть?
Аноним 25/01/20 Суб 17:16:48 #529 №1582870 
>>1582866
sys.argv
Аноним 25/01/20 Суб 17:33:05 #530 №1582877 
>>1582817
Видел я про этот метод, но я нихуя не понимаю, как в коде это записать. Есть у меня два списка: список координат четырехугольника и список координат точек. Я элементарно не могу сделать цикл и прогнать, чтобы посмотреть подходят точки или нет. Решал в тетрадки такие задачи раньше, вроде все норм было. Но просто в ебаный код не могу перевести. Сорри, у меня подгорели остатки серого вещества.
Аноним 25/01/20 Суб 18:19:33 #531 №1582889 
>>1582847
https://github.com/humiaozuzu/awesome-flask/blob/master/README.md#framework можешь тут посмотреть.
Аноним 25/01/20 Суб 19:43:35 #532 №1582949 
>>1571574
курс МФТИ http://judge.mipt.ru/mipt_cs_on_python3/
Аноним 25/01/20 Суб 19:47:37 #533 №1582951 
>>1582889
Жесть там библиотек, а я пилю свой пиздецовый велосипед на голом фласке и не знаю, как безопасную аутентификацию сделать с этими токенами
Аноним 25/01/20 Суб 20:14:26 #534 №1582966 
image.png
Что за пиздецома? Код запускается и работает нормально. В гайде написано именно так, как в коде. Как убрать эту желтую хуйню? Помогите нубику...
Аноним 25/01/20 Суб 20:52:22 #535 №1582985 
>>1582966
Начать писать скриптики на 30 строчек в саблайме
Аноним 25/01/20 Суб 21:03:24 #536 №1582993 
>>1582985
А если я уже перешагнул эту ступень и хочу совершенствоваться?
Аноним 26/01/20 Вск 01:53:47 #537 №1583109 
допустим я за полгода задрочил на задачках с литкода этот ваш пистон, парочку стандартных либ и умеренно джангу
прямо сейчас ковыряю flask и субд, хотя думаю на это забить и обойтись одним orm
как теперь вкатится на реальную роботу без опыта? можно ли устроится удаленно за небольшие профиты? интересует только бекенд и чуть-чуть датасаенс но таких вакансий крайне мало и я им точно нахуй не нужен
пробовать искать стажировку в говноконторе за еду или заняться пет-проектами (которые ещё нужно придумать)?
пока что гитхаб состоит из laba1.cpp и блога для кота
Аноним 26/01/20 Вск 03:07:10 #538 №1583122 

Перекат
>>1583121 (OP)
>>1583121 (OP)
>>1583121 (OP)
>>1583121 (OP)
>>1583121 (OP)
Аноним 02/02/20 Вск 15:26:32 #539 №1589250 
image.png
Почитываю Мэтиза ,,Изучаем Питон,, . Не понимаю следующее задание, какое нужно вписать условие завершения цикла?
age = input("enter your age: ")
age = int(age)
while:
if age <= 3 :
print("Бесплатно")
elif 3 < age < 13:
print("10 баксов")
elif 12 < age:
print("15 баксов")
Аноним 10/02/20 Пнд 19:40:51 #540 №1597462 
>>1589250
>
>
я понимаю, что прошло 8 дней,но если тебе надо,просто пропиши
while True:,
и после каждого ифа поставь break, но как по мне это цикл здесь нахуй не всрался
comments powered by Disqus

Отзывы и предложения