Этого треда уже нет.
Это копия, сохраненная 22 сентября 2017 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Python тред #1049766 В конец треда | Веб
Добро пожаловать в тред самого человечного и быстроразвивающегося языка

F.A.Q. https://github.com/TheKnightsWhoSayNi/info/wiki/Hat

Свой код кидайте через https://ideone.com/

Книги: https://yadi.sk/d/tArKKuQu3Kejuq

Прошлый тред: https://2ch.hk/pr/res/1040899.html (М)
39 Кб, 712x413
#2 #1049770
>>1049766 (OP)
А работки то в рашке по-прежнему нет.
#3 #1049773
>>1049766 (OP)
Чутка проебался, вот ссылка на предыдущий треб, простите
https://2ch.hk/pr/res/1046284.html (М)
#4 #1049775
>>1049770
У нас и пых в моде, хотя за рубежом он не так популярен
#5 #1049781
>>1049775

>хотя за рубежом он не так популярен


Отчего же, кто-то же должен чистить сортиры писать лендинги.
PHP за рубежом на 7 месте по популярности:
https://tiobe.com/tiobe-index/
34 Кб, 927x479
#6 #1049782
>>1049781
А что было в 2011 и 2004, что питун так взлетел?
Как на этот сайте считается популярность? Она совсем не коррелирует с количеством работы?
#7 #1049783
>>1049781
Какой-то странный рейтинг, С и жава падают пиздецки как, а остальные языки не растут. Если с жавой еще более менее понятно, есть куда перекатываться, то КУДА УХОДЯТ С СИ? Да еще так массово.
#8 #1049784
>>1049782
в 2004 вышел 2.4 с тучей нововведений https://docs.python.org/2/whatsnew/2.4.html
#9 #1049846
Бля, помогите с sql, а то в том треде вообще никого.
Короче задание удалить всё повторяющиеся емейлы из таблицы, но так чтобы остались с меньшими айдишниками. И там блять на второй проверочной таблице сначала вставляют id=2, а потом id=1
Почему моя уебищная хуйня не работает, может кто объяснить ?
DELETE FROM Person WHERE id NOT IN (SELECT id FROM (SELECT FROM (SELECT FROM person ORDER BY id ASC) AS kek GROUP BY email) AS top)

Знаю, что выглядит оче уебищно, но по моей логике он должен вернуть сначала всё, по порядку id от меньщего к большему, потом вернуть всё сгруппированное по емейлу и уже оттуда выбрать id с которым и сравнивать начальный id. Но что-то идёт не так.
#10 #1049850
>>1049846
https://pastebin.com/6Chduftx
двач похерил звёздочки
#11 #1049872
names='Brad','Brend','Ann','Anus','Herold'
ages=17,53,10
D=dict(zip(names,ages))
print(D)
получаю: {'Brad': 17, 'Brend': 53, 'Ann': 10}
Можно как-то заставить Питон не слать нахуй те имена, которым не хватило предметов из второго iterable, а проставить им None?
#12 #1049873
>>1049872
Можно.
#13 #1049874
>>1049873
Как?
#14 #1049875
>>1049874
Воспользоваться модулем itertools
#15 #1049876
>>1049872
zip_longest гугли
#17 #1049878
>>1049875
Погуглил. Прикольно.
Тогда ещё вопрос. Вот в документации написано:
'zip() Returns an iterator of tuples, where the i-t...'
Почему так? Ведь она возвращает zyp type object. И почему это zip type object, а не список или tuple? В конце концов это iterable максимум, но никак не iterator.
#18 #1049879
>>1049877
Да. Хотя вообще странно, может ли праймари ки быть не автоинкрементом ?
Вот сама задача
https://leetcode.com/problems/delete-duplicate-emails/description/
#19 #1049880
>>1049878
Ты видимо не понимаешь что такое итератор. А возвращает zip type для эффективности, в двойке там лист (или кортеж, не помню точно)
#20 #1049881
>>1049878

>И почему это zip type object, а не список или tuple?


Потому, что итератор универсальнее и меньше потребление памяти.

>В конце концов это iterable максимум, но никак не iterator.


https://wiki.python.org/moin/Iterator
92 Кб, 1366x768
#21 #1049886
Сап, ребяты, я хочу добиться нормального STDIN и STDOUT
Help me
Как запустить процесс (cmd.exe к примеру или тот же интерпретатор питона) с возможностью записывать что-то в STDIN и читать результат в STDOUT?
Че-то попробовал с subprocess и вот результат. У кого есть идеи или наработки?
#22 #1049889
>>1049886
В питоне по умолчанию input читает stdin, а print пишет в stdout
Если тебе это мало, то импортируй их явно и почитай доки
from sys import stdin, stdout
8 Кб, 192x192
#23 #1049890
>>1049889
ну ты жопой читаешь что-ли?
грубо говоря надо скрипт который выпонял бы команды системной оболочки и возвращал ответ, я знаю что делает sys.stdout.write() input() и print() - это не то, было бы все так просто типа print(execute(input())) и циклом весь вывод читать и в сокет отправлять)))
#24 #1049891
>>1049889
но нихуя такого нет, есть только subprocess который сначала дает ввести STDIN а уже потом отдает STDOUT.
#25 #1049894
>>1049766 (OP)
Что желательно изучать, чтобы быстрее устроиться на работу?Без вышки.
Шутка про php
#26 #1049895
>>1049894
Жс/пых конечно, жил бы ты не в россии то над питоном можно было подумать, а так нет
#27 #1049899
>>1049894
Эх, почти что эталонный вкатывальщик, если бы еще написал про зп от 100к, то можно было бы в палату мер и весов отправлять.
#28 #1049905
>>1049781

>Отчего же, кто-то же должен чистить сортиры писать лендинги.


>PHP за рубежом на 7 месте по популярности:


Когда пытался в США найти работу как фрилансер, то основные заказы на пыхе были от всяких нубов установивших вордпресс и им нужен был некий скрипт за 10 баксов. Но чаще всего этот заказ уходил от меня к индусам, который предлагали делать тоже самое за миску супа. И америкоты на радостях соглашались не подозревая, что этот скрипт отвалится через 5 минут, а того индуса уже не сыскать.
#29 #1049909
>>1049783
Рейтинг действительно странноват. Но тенденцию он показывает правильно, хоть и с погрешностью. Давно за этим рейтингом смотрю. Вот например я уверен, что swift популярнее ruby. Потому что swift прост как питон (это раз), и он приносит реальный хлеб сразу (это два). Буквально месяц обучения свифту и вы уже пилите игру под айфон.
#30 #1049946

>ЗАХЕР ВАМ ЭТОТ ПИТОН?


СЕЙЧАС УЖЕ ВСЕ ПИЗДРЯЧАТ НА GOLANG, даже уже бабку показывают на Первом канале, которая осилила Go
https://youtube.com/watch?v=_Z_k5G73ttk
#31 #1049960
>>1049890
А если запускить cmd.exe с опцией /K ?
#32 #1049964
Я нихрена не понимаю в этих ваших CMS, но мне интересно - можно из Django сделать сайтик типа Booru или ImageBoard?

Или оно как WordPress только для блого-подобных сайтов?
#33 #1049966
>>1049946
Go - говно написанное самодурами для себя. Надеюсь, что загнется побыстрее.
#34 #1049975
Как с помощью блядского джанго орм сделать запрос вида select columnname2 from table where columname1 = 'value'
#35 #1049980
>>1049975
Иди учи мат.часть.
#36 #1049983
>>1049980
Заебало. Чувствую, хуйну запросом. Будет не очень красиво, зато просто и понятно.
#37 #1049986
>>1049983
Напиздел. Вот так получилось:

Table.objects.get(columnname2='value'])).columnname1
#38 #1050037
>>1049964

ДЖАНГИСТЫ: ответьте на это.
Насколько в Django сложно написать что-то не напоминающее блог или скроллинг-страницу-презентацию очередного фреймвока? Нужно будет поизвращаться или это легко сделать?
#39 #1050041
>>1050037
Ты ебанутый? На джанге только блоги и пишут. На крайний вариант, имиджборды.
#40 #1050067
>>1050041
Но блог и имиджборда совершенно разные сайты.
И если можно имиджборду запилить - то почему нельзя какой-то обычный статический сайт?
#41 #1050069
>>1050067
Тогда зачем тебе джанга?
#42 #1050074
>>1050067
Для статистического сайта воспользуйся каким нибудь cms лучше
#43 #1050091
>>1050069
Так вот я и пытаюсь взвесить. Как пошли Вордпрессы с Джумлами, так я сразу потерял интерес к вебдизайну. Ибо это не сайты.
И мне интересно - Джанго такая же ограниченная, или ее можно использовать для нестандартных для CMS целей/сайтов? Может там кроме "добавления статей" в ленту есть еще что-то интересное?
#44 #1050092
>>1050091
Как напишешь, так и будет, нынешняя джанга имеет почти все возможности ror, например
Если хочешь совсем свободы, то посмотри в сторону фласка, там ты вообще все сам допиливаешь
#45 #1050093
>>1049782
>>1049784
В это время гвида в гугл перешёл. Я думаю с этим связано.
#46 #1050097
>>1050092
А есть где-то примеры необычных сайтов на Django и Flask, чтобы посмотреть чего максимум можно добиться на них, оценить возможности?
#47 #1050101
>>1050097
Что для тебя необычно? Если ты про оформление, то сейчас это зависит от жс свистелок
Необычное взаимодействие с бд? Необычная аутентификация? Необычный шаблонизатор?
#48 #1050102
>>1050097
Блядь, джанга и фласк это вебфреймворки, а не смски, можешь извращаться с ними как хочешь. По-ходу ты сам не знаешь чего хочешь.
#49 #1050105
>>1050101
Необычный для CMS интерфейс и функционал. То есть не блоги/статьи и не сайты-визитки со скроллингом, а что-то другое хотя-бы, но лучше интересное. Чтобы оценить возможности.

>>1050102

>вебфреймворки, а не смски



А в чем разница? ЦМС-ки вроде тоже со своими фреймвоками встроенными. Джумла например. Да, я не разбираюсь. В чем разница-то?
41 Кб, 1280x720
#50 #1050108
>>1050105

>Необычный для CMS интерфейс и функционал.


>django\flask


Посмотри хоть один демонстрационный видосик на ютубе по этим фреймворкам, ты похоже вообще не понимаешь что такое серверную логику
#51 #1050110
>>1050108
Я так понимаю, что общее в том, как минимум, что CMS и эти "вебфреймворки" ведут базу пользователей, хранят статьи в базе и следят за сессией пользователя?

А меня интересует, кроме зарегестрированных пользователей, работа с сайтом без регистрации, а также мой функционал. Вот например imageboard, или booru, или онлайн-редактор какой-нибудь (photoshop/GIMP/Word/др), или еще что-то помимо этих лент с новостями.
#52 #1050112
>>1050110
Ну посмотри какой-нибудь скайсканнер, вот такое можно.
#53 #1050113
>>1050110

>ведут базу пользователей


Могут вести, а могут и не вести, как напишешь

>хранят статьи в базе и следят за сессией пользователя


Как напишешь, так и будет

>онлайн-редактор какой-нибудь (photoshop/GIMP/Word/др)


Это выполняется на клиентской стороне и скорее всего написано на жс, тут к бэк-энду вообще мало относится
#54 #1050116
пацаны, есть вопрос. скоро пойду вливаться в местную городскую тусовку по "спортивному" программированию, до этого сам сидел дома аутировал на python. так вот, собственно вопрос - как принято говорить у расеянских программистов "питон" или "пайтон"? а то подумают еще, что я деревенский.
#55 #1050117
>>1050116
пифон
#56 #1050119
>>1050116
Говори питухон или гвидабейсик, сразу поймут что ты парень не простой, в теме.
#57 #1050121
>>1050117
>>1050119
не ну я серьезно так-то
#58 #1050122
>>1050113
Ok, но как с необычными сайтами? Вернусь к примерам с imageboard и booru.

imageboard - быстрое обновление, интерактивность, деление на доски и треды (необычная структура для сайтов)

booru - база изображений, тэги, много тэгов, тоже структура необычная.

Такое запилить можно? На Flask? А на Django? И наскольо это геморройно.
И чем, кроме базы пользователей, они помогут, по сравнению с созданием сайта с нуля?
#59 #1050123
>>1050121
Серьезно - пийтфон

Ну если кратко - нельзя смешивать в одном предложении двая языка. Говори Пайтон, когда говоришь по-английски, и используй адаптированное Питон когда говоришь по-русски.
#60 #1050125
>>1050123
благодарю
#61 #1050153
>>1050122
Ты заебал. Сервер Pinterest написан на фласке, сервер Instagram - на джанге.
#62 #1050155
>>1050153
Уже интереснее.
А что кроме базы пользователей и статей в них есть, какие сервисы?
#63 #1050159
>>1050155
Сервис удаленной ебли мамаш дебилов, которые задают тупые вопросы.
#64 #1050161
Как сделать список из нескольких других списков? К примеру, брать рандомное кол-во элементов и перекидывать их в другой список?

А именно
list1 = ['a', 'b', '1']
list2 = ['c', 'd', '2']
И главный список (куда все стаскивается) должен выглядеть так:
main_list = ['2', 'b', 'c']
#65 #1050166
>>1050161

>Как сделать список из нескольких других списков?


Просто без задней мысли берешь и делаешь.
#66 #1050167
>>1050159
Тогда непонятно нахуй нужны, особенно в случае Instagram и Pinterest - зачем им были именно Flask/Django?
#67 #1050168
>>1050167
У их разработчиков и спроси.
#68 #1050233
>>1049766 (OP)
Хочу вкатиться в django. Какую версию использовать? Самую последнюю? Тут в гайде версия 1.8. Если я буду использовать самую последнюю версию, то у меня все будет работать?
#69 #1050234
>>1050161
main_list=random.sample(list1+list2,random.randint(1,len(list1+list2)))
#70 #1050236
>>1050233

>то у меня все будет работать?


Не факт.
#71 #1050241
>>1050234
Спасибо! Но я уже сделал свой костыль
Не подскажешь, как вернуться к началу цикла if?
Мне просто надо, что бы в пароле были цифры, большие и маленькие буквы
#72 #1050244
>>1050241
continue
#73 #1050261
>>1050244
Бля, я сдаюсь, короче.
Надо запилить генератор пароля длиною в 8 символов, в котором обязательно должны быть цифры, маленькие и большие буквы
https://ideone.com/z20OlX
#74 #1050263
>>1050261
>>1050244
Я там остановился на проверке наличия больших букв
#75 #1050271
>>1050261
Так погугли епт, туча готовых примеров.
#76 #1050273
>>1050271
Попробую еще раз.
Кстати, сколько говнокода/10?
#78 #1050277
>>1050275
Бля
6 Кб, 658x74
#79 #1050280
>>1050275
Вот как сделать - при не наличии цифры - сгенерировать пароль заново
#80 #1050284
>>1050280
И при не наличии большой и маленькой буквы
#81 #1050286
>>1050280
Плохой способ, не делай так никогда. Используй join.
144 Кб, 1280x1024
#82 #1050287
>>1050261
ящитаю, что самый охуенный вариант это сделать как на пике. Но теперь у меня у самого вопрос к другим анонам, почему после str(r) нихуя не происходит и Питон все равно выводит мой пароль как список? Кстати, тоже оцените по говнокоду.
Мимо-другой-вкатывальщик.
#83 #1050291
>>1050287
''.join(r)
Спасибо, тоже попробую этот вариант
28 Кб, 742x207
#84 #1050318
>>1050287
Все, ещё догадался как сократить эти 3 одинаковых форов до двух.
Рейт ми плиз.
#86 #1050360
Аноны! Нужна еще маленькая помощь. Есть примеры, и мне надо узнать, правильно ли я написал на питоне:
1. a + b ( c / 2 ) https://ideone.com/d2OwGp
2. (a^2 + b^2) % 2 https://ideone.com/k4HJop
3. (a + b ) / 12
c % 4 + b https://ideone.com/3NO1lA
4. (a - b * c ) / (a + b ) % c https://ideone.com/7oruUo
5. | a - b | / ( a + b )^3 - cos(c) https://ideone.com/cOYWME
6. ( ln(1+c) / -b )^4 + |a| https://ideone.com/P0zoCI
Заранее огромное спасибо!
#87 #1050363
>>1050360
Блядь, я проебался с умножением, ебаная разметка
#88 #1050439
>>1050318
Малаток

>>1050291
Сдается мне, у вас не случайно одинаковые задания в одно и то же время - не советую плагиатить, вычислят.
#89 #1050442
>>1050439
Все возможно.
>>1050287
Это у тебя задание такое, или ты просто так сделал?
#90 #1050456
Анон, чем запись:
dx, dy = -dy, dx
отличается от записи:
dx = -dy
dy = dx

На конкретно этом примере выдается разный результат https://ideone.com/f8Cthu
#91 #1050460
>>1050442
Я просто тоже учусь и делаю любые примеры, которые вижу.
#92 #1050461
>>1050456
Тем, что в первом случае значение dy станет равно -dx, а во втором dy станет равно -dy.
#93 #1050463
>>1050461

>Тем, что в первом случае значение dy станет равно dx, а во втором dy станет равно -dy.


фикс
#94 #1050465
>>1050461
Как-нибудь можно миновать подобную запись с двойным присваиванием?
#95 #1050466
>>1050465
Можно, введением 3-ей переменной, но зачем?
#96 #1050478
Нашел в своей мухосрани джуновскую специальность на джангу, пожелайте мне удачи на собесе
#97 #1050481
>>1050478
Зачем желать удачи, человеку, который уже можно сказать устроился на работу.
Удачи, няша ;3
#98 #1050483
>>1050478
Ты бы еще у себя в кладовке чего нашел и гордился
#99 #1050495
>>1050481
Спасибо
>>1050483
Я думал, что вакансии на питон-джунов есть только в дс/дс2 и думал следующем году понаехать
#100 #1050501
>>1050495
Я сам джанго начал изучать недавно. Живу в дс2. Как думаешь, до января/февраля смогу вкатиться?
#101 #1050604
>>1050360
Бамп!
#102 #1050606
Как при out of range списка, циклически переходить в начало?
#103 #1050679
>>1050606
1) сделать юзердикт со своим итератором
2) while true и переменная в качестве счетчика-индекса, которая бы обнулялась, когда становится равна длине списка
#104 #1050681
>>1050679
юзерлист
фикс
16 Кб, 498x147
#106 #1050710
Делаю задания из django by example
Возникла проблема, когда я пытаюсь получить объект поста, то вылетает 404, если убрать все значения publish, то мы получаем объект, хотя код точь в точь, как в книжке, может бы ли это быть из-за того, что я использую версию 1.11, а в примерах 1.8 ?
#107 #1050714
>>1050710
ну значит в базе нет записей с таким временем
#108 #1050715
>>1050714
Хм, обновил дату в админке, все начало показывать
#109 #1050731
>>1050699
Воу, спасибо! Выглядит просто шикарно
#110 #1050806
>>1049766 (OP)
Аноны, нужна ваша помощь в слегка нестандартном виде. Можете подбросить мне своих гитхабов с проектами, небольшими скриптами, чем угодно, на питоне? Хочу научиться этому пресловутому "умению читать чужой код". Заодно зведу вам влеплю.
74 Кб, 1164x1024
#112 #1050819
>>1050815
У фласка больше звездочек, чем у джанги
#113 #1050821
>>1050819
Ну он и лучше.
#114 #1050822
>>1050821
Он как конструктор, после того, как с фласка на джангу пересел испытал огромное облегчение, там больше батареечек из коробки
64 Кб, 600x599
#115 #1050825
>>1050815
Ахуеть, редит на питоне
#116 #1050829
>>1050825
Ага, а инстаграм на джанге.
442 Кб, 500x331
#117 #1050870
Сап, анончики.
Недавно начал изучать Python 3.
Появилась идея создать свой первый простенький онлайн проект на Django для получения практических навыков и их закрепления.

Для себя нарисовал примерное ТЗ:
1. На главной странице кококо-лендинг с описанием функционала сервиса, тарифами(месяц, полгода, год) и большой кнопкой Зарегистрироваться.
2. Клиент регистрируется с помощью email и пополняет баланс через агрегатор платежей типа Robo/Free/Inter-касса и т.п.
3. В личном кабинете Клиент вводит некие данные в специальное текстовое поле. Например: "анекдоты про блондинок, анекдоты про женщин за рулем, анекдоты про Вовочку".
4. "Клиент" оплачивает нужный ему период предоставления услуги. Например на месяц.
5. Итог: в течение месяца, ежедневно, клиенту на почту приходит информация, которую генерирует мой скрипт. Например: "анекдоты про блондинок, анекдоты про женщин за рулем, анекдоты про Вовочку" соответственно.
Ориентировочное количество клиентов: максимум 5000 в месяц.

Вопросы:
Как такое лучше всего реализовать?
Что изучиать?

Как бы делал ты, анон?

Хотелось бы примерный алгоритм шаблон предстоящей работы.
#119 #1050881
>>1050870
django by example или djangobook
394 Кб, 474x474
#120 #1050882
Чтобы выше написанное не прозвучало как "Анон, придумай за меня всё", поясню:
У меня просто нет представления как создаются онлайн проекты. Пазл в голове не собирается.
Пока мысли такие:
В Джанго уже есть админка и встроенные штуки для регистрации/авторизации пользователей.
Следовательно, там уже есть БД SQLite3. Её и надо будет изучать.
Сделать отдельную БД, в которой будет указаны:
1.Почта
2.Дата регистрации
3.Баланс$
4.ДатаНачалаПодписки
5.ДатаОкончанияПодписки
6.СколькоДнейОсталось
7.ОпцииКлиента(в примере это темы анекдотов)
Морду пилить с использованием Bootstrap. YOBA-дизайн не нужен, а вот адаптивность желательна.
>>1050870 - кун
Анончики, подскажите как бы Вы пилили подобное?
#121 #1050892
>>1050870

>Как бы делал ты, анон?


Нашел бы готовые решения.
#122 #1050915
>>1050882
Ты вообще про джангу хоть что-то читал? Сдается мне что нет. Так вот пройди хоть официальный туториал, что бы впредь подобных дебильных вопросов не задавать.
#123 #1050928
>>1050882
Пилю схему, пилю логику, пилю веб-парашу. В чём проблема?
#124 #1050936
Анон а как сделать что то вроде приложения с консолью под линуксы? Смысл такой что бы можно было запустить и остановить командой, а так же придумать как получать какую то диагностическую инфу через консоль во время выполнения приложения, а может еще счетчик выполнения запустить. Может логи выводить в эту консоль, допустим уровень дебага там настраиваешь. Настройки что бы какие то можно было менять командами определенными находу. Как это все делается?
#125 #1050952
>>1050936

>что то вроде приложения с консолью под линуксы?


Не понял, тебе нужно приложение в терминале или графическое приложение с отдельной консолью?
#126 #1051085
https://pastebin.com/KQtAHjF2
На винде работает, на линуксе первые разы работало, потом стало падать с исключением из-за того, что пыталось выяснить порт у неподключенного сокета. Я предполагаю, что это потому что select засирает дескрипторы, а обратно не очищает, поэтому они все уже помечены. Т.е. насколько я понял, если это на сишке писать, там сначала должен быть FD_ZERO какой-нибудь, а потом уже select идти. А в питоне такого не нашел.
#127 #1051089
>>1051085
Дебилизм какой-то. Перепроверил, google.ru сканируется. Изначально на нем и проверял, потом просто видимо стали блочить такие запросы. А с локалхостом почему-то не работает
#128 #1051140
Аноны, спрошу у вас, стоит ли брать ASUS UX303UA или б/у macbook 2015/2016 на те же 50к?
sage #129 #1051166
>>1051140

>ASUS UX303UA


>4 гб


>i3 серии U


Бери макбук, там будет гарантия, что система не будет зависать несколько нет и жить больше 3 часов без розетки, а с этим асусом все грустно и вообще, лучше бы в вообще хв спросил
А ведь когда то я купил ноутбук с топовой apu от амуды с 8 гб памяти за 28 тысяч, эх...
#130 #1051268
>>1050731
Мда, но только если данных мало. А если много - то сохраненная внутренняя копия всех значений списка может весить слишком много. И тогда лучше самому зацикливать. Итераторы-то делаются, чтобы сократить расход памяти. А тут такой неожиданный поворот - сохранять весь список (вернее весь массив данных, которые может получают/вычисляют динамически) во внутреннем кэше. Спасибо хоть предупредили в доках.
#131 #1051271
>>1051268
Напиши генератор тогда, самое логичное решение
#132 #1051280
#133 #1051290
>>1050952
В терминале. Ну вот например как Астериск есть телефонная атс, там консоль своя запускается старт стоп можно сделать посмотреть какие то параметры.

Я тут уже кой чего накидал за сегодня. Сделал просто скрипт отдельный запуска, он запускает в фоне другой скрипт, этот скрипт в /tmp/ создает файл, если он есть то не запустит - защита от дублирования запуска, если нет то создаст и запустит скрипт, и в циклах проверяет существует ли этот файл. Тоесть когда stop делаешь файл удаляется другой скрипт видит что файла нет и завершает аварийно работу. Наверное это пиздец колхоз какой то, но я ничего умнее не придумал, всякие киллы процесса что то пока сложно и нудно, а демона писать нет необходимости скрипт редко будет запускаться. Думаю для первого скрипта норм. Потом попозже скрипт выложу. Может чего посоветуете.
#134 #1051516
>>1050870
пиши на пхп
#135 #1051707
>>1050915

>про ... хоть что-то читал? Сдается мне что нет.


>Так вот пройди хоть официальный туториал.



Смешной совет анону в стиле /b/

Чтобы узнать хоть что-то нужно прочитать всю документацию. Логично. А чтобы узнать что такое фильм нужно закончить автерские и режиссерские специальности.
#136 #1051708
>>1051290
Если ты хочешь монолитное приложение - просто открой консоль и читай из нее пиши в нее что хочешь. И параллельно делай какую-то работу.

Если хочешь сложнее что-то - делить приложение на управляющий и работающий процессы, - то или запускай другую программу из своей и управляй ей имитируя ввод пользователя, или порождай другой процесс и общайся с ним сообщениями или через файлы.
#137 #1051709
>>1051089
Гугл вообще любит блочить.
#138 #1051710
>>1051140
Лучше эти 50тыр пропить
#139 #1051711
>>1051166

>>б/у macbook


>макбук, там будет гарантия, что система ... будет ... жить больше 3 часов без розетки



А слово б/у тебя не наводит на размышления, что с батареей уже не все в порядке?
#140 #1051716
>>1051707

>А чтобы узнать что такое фильм нужно закончить автерские и режиссерские специальности.


Если ты собрался снимать фильм, то это явно будет не лишним.
#141 #1051731
написал сервер на asyncio

как передавать данные между разными клиентам, которые сохраняются в памяти процесса

то есть один клиент, подключился, передал значение - оно сохранилось в памяти процесса
второй подключился - получил его
#142 #1051739
>>1051731
В переменную положил - достал. Но в текущей скриптопараше так не принято делать.
#143 #1051751
>>1049766 (OP)
Скачиваю какую-нибудь либу через pip для одного юзера, а у другого такой либы нет. Как все синхронизировать, без костылей, вроде симлинков? Питон глотает место на диске, как удав.
ОС - линух. Гугл молчит.
#144 #1051764
>>1051716
А если только узнать - нужно ли мне это? Тоже сначала диплом режиссера получить, а потом решать надо было это или нет?

>>1051739
А как-то сообщениями передавать можно?
#145 #1051765
>>1051764
Ну если найдёшь Акку для питона, то можно. Но обычно для этого ставят Redis, ZeroMQ и тому подобную срань.
#146 #1051805
>>1051711
За год с батареей макбука ничего не случится, он все равно будет жить дольше без розетки, чем этот асус
#147 #1051954
>>1051751
Ставь пакеты в систему. Либо через линукс менеджер пакетов (apt), либо через питон, но в систему (sudo python3 -m pip install ...). Если используешь env-ы, то никак, ибо env-ы для того и созданы, чтобы изолировать пакеты.
#148 #1052000
Как вернуться в начало блока try-except, к примеру:
Надо ввести число, которое должно быть не меньше 5 и введенные данные должны быть числом. Если что то не так, опять ввести число
#149 #1052001
#150 #1052023
>>1052000
while True:
____a = input()
Остальной код
#151 #1052024
>>1052023
Да, уже додумался, спасибо
#152 #1052033
>>1052000
Эх, а вот если бы в программах были какие-то блоки, например, выполняющиеся ЦИКЛИЧЕСКИ, хмм...
1 Кб, 253x53
#153 #1052102
Пистоны, помогите, пожалуйста.
Надо подсчитать количество символов в текстовом файле.
i=0
j=0
for line in open('J:/text.txt'):
if 'с' or 'С' in open('J:/text.txt'):
i+=1
elif 'c' or 'C' in open('J:/text.txt'):
j+=1
print(i, j)
Для файла пикрилейтед выдаёт i=3, j=0, что не так.
И ещё вопрос: у лутца в книге пишется что лучше всего построчно итератором считать если попадутся очень большие файлы. Как изменить код для этого?
#154 #1052111
>>1052102
у тебя уже идет просмотр документа построчно, т.к. открытие файла в цикле for
И ты сделал хуйню, когда проверяешь наличие символа в новом open'е
И для проверки наличия символа есть метод .count или можешь заюзать регулярки
У тебя elif, когда в не выполняется хоть одно из условий тернарник завершается
#155 #1052115
>>1052111
Ага, спасибо.

>И ты сделал хуйню, когда проверяешь наличие символа в новом open'е


Т.е. просто написать if 'с' or 'С' - без 'open'?
Или если учитывать это

>И для проверки наличия символа есть метод >count или можешь заюзать регулярки


list.count('c' and 'C')

>У тебя elif, когда в не выполняется хоть одно из условий тернарник завершается


Поставить continue?
#156 #1052120
>>1052115

>Т.е. просто написать if 'с' or 'С' - без 'open'?


Пиздос блядь, иди лутца дрочи, пока не дойдешь до тернарников

>Поставить continue?


Ух блядь, ты куда лезешь нахуй, какое тебе нахождение символов в файле, иди синтаксис учи
#157 #1052121
есть ли тут аноны с укростана? много будет ебли с получением первой работы web(django/flask)?(знания Python есть)вакансий не так уж и много особенно джунов, там лютая давка или как?в моем городе (Одесса) вообще нихрена нет на, ни стажировок(один .net и жаба, хотя есть постоянная интернатура с++ sic!). Стоит ли смотреть в сторону других технологий с таким раскладом?
47 Кб, 579x798
#158 #1052129
>>1052120
И на том спасибо.
#159 #1052130
>>1052121

>в моем городе (Одесса)


Земляк в треде

>Стоит ли смотреть в сторону других технологий с таким раскладом


А так хочется стать погромистом? Если цель только в наличии работы, то даже тут есть дохуя контор, куда требуются офисные планктоны
#160 #1052131
>>1052121
Пифон вообще не для постсовка, тут еще и кризис ебанул и нужны готовые спецы, а не джуны, которых еще учить надо
#161 #1052138
>>1052130
перешел на 3 курс иб, С++ отложил(крафтил йобы в qt, утилиты всякие для облегчения жизни) из-за низкого кол-ва вакансий для июней, есть C# опыт на уровне пачки курсачей, но питон приятней как-то, вот и раздумываю. Я и так и так планирую быть погромистом, осталось выбрать технологию которую изучу как изучил кресты(лол) и пытаться куда-то прорваться, но как выбрать чтобы не обосратся и себя не потом не доканывать, эх
#162 #1052140
>>1052138

>крафтил йобы в qt, утилиты всякие для облегчения жизни


А почему не в быдлере? Как по мне, там удобней

>но как выбрать чтобы не обосратся и себя не потом не доканывать


Веб. Был, есть, и будет всегда.
#163 #1052143
>>1052140
я о языке, не точу джангу только потому что не знаю какая будет ситуация через год другой, да и та что сейчас меня пугает, июни не нужны практически, вот и спрашиваю мнение местных, стоит ли в укр вкатывать на питон(веб) или смотреть на c#(веб) или что-то еще, может ли ситуация поменяться. Просто когда на всю страну 20 вакансий на жунов(если наберется) то это очень пугающая цифра
#164 #1052144
>>1052140
тыкать формы можно как там так и в qt, разница в том что знания билдера не имеют спроса вообще, в отличии от qt, в котором ко всем есть qml, на котором можно делать ui куда проще и красивей чем стандартные контролы, хотя qt шные хоть можно без издевательств переделать в плане оформления, а в билдере хрен, а про qt framework вообще молчу, большая часть работы зачастую сделана за тебя
#165 #1052145
>>1052143
Use PHP.
#166 #1052148
>>1052143
Таки да, тебе подсказали >>1052145
Пехепе, джаваскрипт, все дела. Посмотри, какие там фреймворки надо учить, и учи.
Хотя я сам после плюсов и питона не перекатывался бы, ибо просто не выдержал такого пиздеца
64 Кб, 1092x1037
#167 #1052150
>>1052145
после сисярпа и пифона, для меня это закончится плохо, лучше уже сисярп, по нему вакансий больше чем по жабе
#168 #1052151
>>1052148

>Хотя я сам после плюсов и питона не перекатывался бы, ибо просто не выдержал такого пиздеца


то то же
#169 #1052153
Помогите со скриптом

Хочу сделать типо что-то словаря с айпи

но как сделать, что бы от определенного число до определенного, айпи прибавлялись и показывались

типо
output
186.25.36.29
186.25.36.40
186.25.36.41

Думал через while или from, но выходило это:
срипт
i = 185
d = 241
c = 250
f = 200
while i and d and c and f!= 256:
i += 1
d += 1
c += 1
f += 1
print(i,d,c,f)
output
186 242 251 201
187 243 252 202
188 244 253 203
...
239 295 304 254
240 296 305 255
241 297 306 256
#169 #1052153
Помогите со скриптом

Хочу сделать типо что-то словаря с айпи

но как сделать, что бы от определенного число до определенного, айпи прибавлялись и показывались

типо
output
186.25.36.29
186.25.36.40
186.25.36.41

Думал через while или from, но выходило это:
срипт
i = 185
d = 241
c = 250
f = 200
while i and d and c and f!= 256:
i += 1
d += 1
c += 1
f += 1
print(i,d,c,f)
output
186 242 251 201
187 243 252 202
188 244 253 203
...
239 295 304 254
240 296 305 255
241 297 306 256
#170 #1052183
>>1052153
for i in combinations(range(1,255), 4):
print('.'.join((str(y) for y in i)))
#171 #1052189
>>1052153
https://docs.python.org/3/library/ipaddress.html
ipaddress.ip_network тебе наверно это нужно?
7 Кб, 200x200
#172 #1052195
Гайз дайте совет ( или пошлите нахуй)
Я напишу что имеем на данный момент. С уровнями знаний.
1)Python3 (базовый уровень, стандартные либы, virtyalenv развернуть, классы написать)
2)Django>=1.9 ( тоже базовый +- могу блог, мини магазин какой написать, регистрации пользователей с правами и шлюхами)
3)SQL(низкий уровень, аля SELECT* FROM tabel ну это я подтянуть за пару дней смогу, главное понимание принципа)
4) Сопутствующие навыки HTML5, CSS(Bootstrap но могу и на голом, я бы оценил как средний навык но не стану)
А так же git(учил для себя), Ubuntu(на уровне тупо пользователя), Pycharm
ну и на конец English-elementary литру читаю со словариком короче.
Так вот к чему я написал эту прастыню никому не нужной хуйни.
А хочу узнать у опытных djangistov достаточный ли это уровень что-бы искать работу джуна? или на что-то налечь основательно(делитесь стори какой уровень был у вас). Стоит ли уделять много внимания портфолио какое не какое? или на джуна всем пофик что он там начирикал?
P.S. тут вопросы на собеседованиях нигде не пробегали? На реддите почитал так там хуйня какая-то для детей.
#173 #1052196
>>1052153
IPv4 - это 32 битное число, представляемое для удобства в виде 4 октетов. Тебе достаточно перебирать обычное число, а потом либо либой выше превращать его в строку, либо самостоятельно разбивать на октеты для пользователя
#174 #1052214
>>1052189
Походу это. Буду его изучать
>>1052183
Спасибо, не знал про combinations
>>1052196
Не знаешь где про эти октеты можно прочитать?
#175 #1052217
>>1052183

>combination


Traceback (most recent call last):
File "...", line 1, in <module>
for i in combination(range(1,255), 4):
NameError: name 'combination' is not defined
#176 #1052218
>>1052217
Ты бы погуглил что это за функция и откуда ее доставать
#177 #1052220
>>1052217
>>1052183
import itertools

for i in itertools.combinations(range(1,255), 4):
print('.'.join((str(y) for y in i)))
2 Кб, 208x184
#178 #1052222
>>1052220
>>1052218
>>1052183
itertools тут не помогут
#179 #1052228
>>1052222
Ну делай for с 3-х кратной вложенностью, хули
#180 #1052230
>>1052228
Я буду юзать ipaddress. Там можно айпи переделать в 32 бита, и потом простым циклом прибавлять.
48 Кб, 453x242
#181 #1052231
>>1052230
А диапазоны использовать не проще?
#182 #1052235
>>1052231
Возможно, но мне так неудобно.
#183 #1052315
Почаны, а где найти подробные гайды по PyQt5?
На питонворлде кажись устаревшее гауно.
#184 #1052322
>>1052315
Нигде, подробные есть только для крестов.
Правда есть книжка Прохоренок Н., Дронов В. - Python 3 и PyQt 5. Разработка приложении - 2016, он она так себе.
#185 #1052327
>>1052322
Нихуя, вот регулярно-обновляемый ресурс.
http://zetcode.com/gui/pyqt5/
#186 #1052328
Ап
#187 #1052338
>>1052327
Слишком тухло, только самые основы в туториале.
#188 #1052434
какнул кекнул
#189 #1052436
и второй разик
#190 #1052532
>>1049909

>swift прост как питон


Swift - это фрактал ебанутого синтаксиса. Самый сложный и поехавший синтаксис из всех актуальных языков.
ИМХО: python > ruby > php > java > javascript > c++ > моча > говно > c# > червь-пидор > swift
#191 #1052580
>>1052532
Ты Go забыл.
#192 #1052613
>>1052532
Вполне приличный синтаксис. Может ты просто неосилятор?
мимо-скала-господин
#193 #1052617
>>1052580

>говно


не забыл же
#194 #1052637
>>1052195
бам вопросу, питонач вы моя семья. Для меня важно ваше мнение.
#195 #1052642
>>1052637
Достаточный, иди устраиваться. Если на собеседовании будут доебываться, отправляй их в этот иит тред.
#196 #1052743
>>1052642
эх, вам бы все шуточки шутить :(
#197 #1052758
>>1052195

> вопросы на собеседованиях


Тюремные загадки гугли.
#198 #1052767
Подскажите, как отобразить переменную в классе

class Se:
i = 1
def Print(self):
print(i)

Se.Print()
#199 #1052769
>>1052767
class Se:
i = 1
def Print(self):
print(i)

Se.Print()
#201 #1052773
>>1052767
__str__ уже не в моде?
#202 #1052782
>>1052771
Traceback (most recent call last):
File "C:\Users\homepc\Desktop\te.py", line 6, in <module>
Se.Print()
TypeError: Print() missing 1 required positional argument: 'self'
#203 #1052801
>>1052782
a = Se()
a.Print()
и юзай стр
def __str__(self):
return self.i
a = Se ()
print(a)
#204 #1052805
Питон меня просто доебал, не могу смотреть на него больше. Три года на нем пишу уже. Куда перекатываться?
#205 #1052806
Нихуя не работает, ничего не понимаю, все в пизду.

https://www.youtube.com/watch?v=6HSWn0kEb80
#206 #1052808
>>1052805
В джява.
#207 #1052811
>>1052805
си шарп
#208 #1052812
>>1052808
>>1052811
Очень смешно. После питона на таких ограниченных языках только мазохист писать будет.
#209 #1052816
>>1052812
ну так а ухли ты тогда выебываешься, пиши дальше на питоне, поменяй сферу деятельности, может тебя не питон заебал ?
#210 #1052817
>>1052767
https://ideone.com/4o7K0j
https://ideone.com/G4oV7M

А теперь съеби и прочитай хотя бы туториал на сайте питона.
#211 #1052821
>>1052817
Какой ты умный! Можно я у тебя отсосу?
pythondoebal #212 #1052823
>>1052821
Нельзя, ты слишком глупый.
#213 #1052824
>>1052812
Тогда Scala.
#214 #1052826
>>1052823
Ну я пососу твою умную писечку и стану чуточку умнее. :3
pythondoebal #215 #1052829
>>1052824
Что там делать без бэкграунда на джаве? Нечего.
#216 #1052833
Каким модулем можно читать метаданные картинки\видео, нашел hachoir-metadata, но он выглядит абсолютно мертвым (2010 - последний апдейт)
#217 #1052839
БОЛЬШЕ ВОПРОСОВ ТРЕДУ ВОПРОСОВ
1)>>1052833
Что такое метаданные? Не совсем по Питону, но все же. Загуглил. Значит, допустим, у меня есть видео 2ch_cheese_pizza.webm, а его дата создания, вес в Мб, качество - его метаданные?
2)Вы знаете документацию по cmd шинды, или на чем ты вы там сидите? Это нужно для создания каких-нибудь консольных приложений? Например, если я хочу вызывать консольное окно определенных размеров, где ввод пользователя осуществляется в самой нижней строке (курсор всегда там), выделенной серым, а результаты занимают всю остальную часть. Такое приходится делать и нужно ли оно?
2.1)Допустим, я хочу сделать приложение с консольным интерфейсом и там должна быть возможность очистки экрана. Мне нужно найти функцию очистки экрана Питона, или придется использовать subprocess.call('cmd') и использовать встроенную туда cls?
3)Вообще, существует типа основной терминал? То есть, когда я запускаю какую-нибудь обычную программу Питонскую (без суброцессов) и когда я вызываю через субпроцесс cmd, они же выглядят одинаково - черные окошки, с разным набором функций. Есть функции и методы управления этим дерьмом? Очистка экрана, изменение его размеров, цветов, вывод в произвольных местах и все такое?
#218 #1052840
Что почитать про ООП на питоне?
#219 #1052842
>>1052829
Манямир.
#220 #1052844
>>1052840
Можно документацию почитать. Можно книги по ООП не в питоне. Не видел хороших книг по ООП именно для питона и этому есть причины. Питоновский ооп сильно ограниченный в сравнении с другими языками.
Вот неплохая статья, она неплохо объясняет почему всякие классические паттерны в питоне не так часто используются (потому что они уже заложены в дизайн языка).
#222 #1052847
>>1052844

>Питоновский ооп сильно ограниченный в сравнении с другими языками.


Ну-ка расскажи нам про "ограничения", лол.
#223 #1052849
>>1052839

> Что такое метаданные? Не совсем по Питону, но все же. Загуглил. Значит, допустим, у меня есть видео 2ch_cheese_pizza.webm, а его дата создания, вес в Мб, качество - его метаданные?


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

> 2)Вы знаете документацию по cmd шинды, или на чем ты вы там сидите? Это нужно для создания каких-нибудь консольных приложений? Например, если я хочу вызывать консольное окно определенных размеров, где ввод пользователя осуществляется в самой нижней строке (курсор всегда там), выделенной серым, а результаты занимают всю остальную часть. Такое приходится делать и нужно ли оно?


> 2.1)Допустим, я хочу сделать приложение с консольным интерфейсом и там должна быть возможность очистки экрана. Мне нужно найти функцию очистки экрана Питона, или придется использовать subprocess.call('cmd') и использовать встроенную туда cls?


> 3)Вообще, существует типа основной терминал? То есть, когда я запускаю какую-нибудь обычную программу Питонскую (без суброцессов) и когда я вызываю через субпроцесс cmd, они же выглядят одинаково - черные окошки, с разным набором функций. Есть функции и методы управления этим дерьмом? Очистка экрана, изменение его размеров, цветов, вывод в произвольных местах и все такое?


Curses.
#224 #1052850
Кстати поясните за Лутца: его надо обязательно прочитать каждому, или лучше читать документацию?
#225 #1052853
>>1052847
Нет модификаторов доступа (считай что инкапсуляции нет), нет интерфейсов.
Тут можно придираться к словам, типа он не ограниченный, а наоборот более свободный. В любом случае, он не такой как везде и половина ООП паттернов тут неприменимы, да и не нужны.
#226 #1052856
>>1052853

>Нет модификаторов доступа (считай что инкапсуляции нет)


По сути ее нигде нет, если очень хочешь, то в любом языке можно приватный атрибут получить
#227 #1052858
>>1052853

>Нет модификаторов доступа (считай что инкапсуляции нет), нет интерфейсов.


Одни и те же мантры, даже обоссывать лень, и так уже сотню раз эти аргументы окропляли уриной. Давай, скажи что соглашение об именовании не тру
#228 #1052860
Как выглядит структура проекта, в котором есть сайт и некоторые бэкграунд приложения? Так будет хорошо?

-Standalone App 1
-----__init__.py
-----tasks.py
-----whatever.py
-Website
-----settings
-----manage.py
-----whatever
-Standalone App 2
-----whatever

Зачем многие пихают всю хуйню дополнительно в папку src?
Лучше ли разделить сервисы от сайта на другие ветки или проекты и связывать гитовым импортом?
pythondoebal #229 #1052864
>>1052858
Во хули ты такой агрессивный? Я тебе не говорю, что питон говно, я говорю что ооп в нем ограниченный. Кучи фич нет -> ограниченный. И ты обратное никак не докажешь.
#230 #1052865
>>1052864
На метаклассах подобное говно на раз-два делается
#231 #1052866
>>1052860

>Так будет хорошо?


Да.

>Зачем многие пихают всю хуйню дополнительно в папку src?


Кто эти многие? Какую именно хуйню?

>Лучше ли разделить сервисы от сайта на другие ветки или проекты и связывать гитовым импортом?


Если они большие и слабосвязанные, то да.
#232 #1052869
>>1052864

>Во хули ты такой агрессивный?


Да потому, что это уже сотню раз обсуждали.

>я говорю что ооп в нем ограниченный. Кучи фич нет


Примеры ограничений? Каких фич нет? Давай конкретно, по пунктам.
pythondoebal #233 #1052875
>>1052865
И что, ты доказал, что ооп в питоне нормальный? Нет.
ООП требует отвечать некоторым принципам. Питон им соответствует только с огромной натяжкой и закрывая глаза на всякую хуйню. Да, можно делать все тоже самое через метаклассы, через миксины, через дескрипторы. Можно даже намного больше сделать. Но это и значит, что язык не в полной мере реализует ограничения, накладываемые ооп.
ООП в питоне, на уровне языка, не реализовано в полной мере в соотвествии с принципами ооп. Оно ограничено реализовано. Это не плохо, это даже хорошо. Но спорить, что тут полноценный ооп - это надо совсем упоротым фанатиком быть.
#234 #1052880
>>1052875

>ООП требует отвечать некоторым принципам.


Принципы в студию.
pythondoebal #235 #1052888
>>1052880
Что еще? Может погуглить за тебя, или книги за тебя почитать? Этому даже в сраных вузах учат.
#236 #1052893
>>1052875

>ООП требует отвечать некоторым принципам


Одному. Позднее связывание, или более строгий вариант -- возможность обработки произвольного сообщения. Что питон, между прочим, позволяет сделать. Все остальное -- додумки и маркетинг
#237 #1052896
>>1052888
Нет манька, пиши принципы, чтобы потом ты маневрировать не начал.
#238 #1052920
>>1052893
Ты это откуда взял? Сам придумал?
#239 #1052951
>>1052920
Почему? До меня это уже давно придумали, я просто систематизировал то, что было в моей голове
#240 #1052958
>>1052951
Откуда ты взял, что позднее связывание - это единственный принцип ооп? Эти понятия вообще никак не связаны.
#241 #1052962
>>1052958
Алана Кея почитай, например
#242 #1052989
>>1052893
>>1052962
Почитал, понял о чем ты. Теоретизирования на тему что такое идеальное ооп. Так и эрланг можно ооп языком назвать, но большинство же так не считает, и это не так.
Я писал про ооп в том смысле, в котором оно сейчас существует, в жизни, а не в теории. Как бы грустно не было, но сегодня "говорим ооп, подразумеваем джаву, говорим джава подразумеваем ооп".
175 Кб, 1037x945
#243 #1052990
>>1052958
Я правильно понял позднее связывание?
35 Кб, 601x203
#244 #1053007
Вот есть вакансия.

> Python D⁢eveloper


Требования:

> Python 2+ года


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


Каким боком там питон? И что там на нём могут делать?
#245 #1053008
>>1053007
Писать тесты, очевидно.
#246 #1053009
>>1052111
Можно ли оптимизировать эту х-ню надо подсчитать количество определённых букв обоего регистра на латинице и кириллице в текстовом файле, если да, то как:
l_letters = 0
k_letters = 0
for line in open('J:/test.txt', encoding="utf8").readlines():
a = line.count('c')
b = line.count('C')
l_letters = l_letters + a + b
c = line.count('с')
d = line.count('С')
k_letters = k_letters + c + d
print(l_letters, k_letters)

Для больших файлов выдаёт memory error
#247 #1053011
#248 #1053013
>>1052850
Бамп вопросу
#249 #1053014
>>1053009

>for line in open('J:/test.txt', encoding="utf8").readlines()


Ты так ничего и не понял
#250 #1053015
>>1053014
Возможно. Я только учусь.
Но хотя бы код иногда работает.
Что не так-то?
18 Кб, 620x375
#251 #1053016
>>1053015

> eager reading

#252 #1053018
>>1053015
Я тебе уже говорил, когда ты итерируешь open, то файл и так читается построчно, когда ты используешь readlines, то ты загружаешь весь файл, разделяешь его по строкам и заносишь в список
От того и ошибка памяти, я помню, что лутц специально приводил такой пример, что бы избежать ее при чтении больших файлов
#253 #1053020
>>1053018
И да, зачем ты делаешь count два раза в одной и той же строке?
#254 #1053027
>>1053018

>когда ты используешь readlines, то ты загружаешь весь файл, разделяешь его по строкам и заносишь в список


Спасибо большое.
Выкинул и символы в файле подсчитались.

>И да, зачем ты делаешь count два раза в одной и той же строке?


В смысле? Символы верхнего и нижнего регистров для кириллицы и латиницы. Или речт не об этом.
#255 #1053028
>>1053027

> В смысле? Символы верхнего и нижнего регистров для кириллицы и латиницы. Или речт не об этом.


Нет, все нормально
#256 #1053030
>>1053027

>l_letters = l_letters + a + b


l_letters += a + b
#257 #1053031
>>1053030
Спасибо, уже переписал.
#258 #1053034
>>1053031
И можно сразу count в суммировании писать, а не заносить отдельно в a и b
#259 #1053049
>>1052850
Мне сказали, что лутц - гей, а Саммерферд - герой. Читаю его.
#260 #1053051

>>The argparse module makes it easy to write user-friendly command-line interfaces.


Разве парсеры не для анализа вообще всего? типа сайтов, текстов, другой информации. Почему тогда сделали модуль только для командой строки?
#261 #1053052
>>1053051
upd: В книжке говорится изучить optparse, но в документации сказано, что тот модуль больше не разрабатывается и нужно юзать argparse. Лучше слушать документацию, да?
35 Кб, 240x320
#262 #1053053
>>1053051

> argparse


> Разве парсеры не для анализа вообще всего?


> arg parse


> Разве парсеры не для анализа вообще всего?


> argument parser


> Разве парсеры не для анализа вообще всего?

#263 #1053067
>>1053008
Что по этому поводу почитать можно?
#264 #1053128
Анон а try except вложенные в друг друга это нормально?
try
try
try
except
except
except

Как то так.

Или сделать один try и потом несколько except и описать действия? Он же полюбому на сбой во внутреннем цикле сработает?
#265 #1053140
>>1053128
try:

except ПервыйВидОшибки:

except ВторойВидОшибки:

...
#266 #1053142
>>1053140
А если там внутри вложенный цикл который должен повторится при определенном исключении (pass стоит)? Тогда допустимы вложенные try except?

try:
(тут происходит запись в sql) Соответственно отлавливает ошибки с этим связанные.
Но тут вот внутри происходит еще один цикл который данные получает обрабатывает и дает на запись уже в sql и тут тоже надо сделать try except что бы скрипт не вылетел с ошибкой а просто ругнулся в логи (для последующего разбирательства что мешало выполнить) и продолжил через pass работу.
for i in list:
try:
except:
pass
(запись в лог)
except:
pass

Если так сделать под одним try то он по новой запустит же а не продолжит.
#267 #1053151
>>1053128
Такое плохо читается. Без реального кода сложно сказать, что там можно сделать. Но попробуй разбить логику небольшие функции внутри которых делай try except.
Еще можно своих эксепшенов наделать. Тогда будешь в функциях отлавливать все эксепшены а наверх кидать свои. Как бы завернуть все эксепшены в 2 своих, например. При одном падать, при другом в лог писать и ничего не делать, или какая там логика у тебя.
#268 #1053153
>>1053128
>>1053151
Но лучше скинь свой код.
#269 #1053168
Господа, а что почитать/посмотреть, если я умею программировать уже лет 25 как да, я старый, в том числе на питоне могу извергать быдлокод и регулярно это делаю, но хочу повысить свой питоноскилл? Я никогда не читал никакую книгу именно по питону, пишу на нём как на квикбейсике + стэковерфлоу, конечно же. То есть мне пробежаться по фичам тоже нужно, 99%, что я просто не в курсе, что в питоне вообще есть. Читаю быстро, в английский могу.
pythondoebal #270 #1053187
>>1053168
Effective python
Fluent python
#271 #1053196
>>1049846
Лол, бля, достаточно unique index повесить на колонку с имейлом и игнорировать ошибки. Там, конечно, будет идти не по возрастанию PK, а в порядке физического расположения, но, в общем-то, в твоем случае это наверняка не было важно.
#272 #1053197
>>1053168

>умею программировать уже лет 25


Небось с 0 лет в ойти вкатился?

>Я никогда не читал никакую книгу именно по питону, пишу на нём как на квикбейсике + стэковерфлоу, конечно же.


Хуя, ебашить 25 лет и даже не пытаться в должной мере освоить навык? Это как-то странно.

>То есть мне пробежаться по фичам тоже нужно, 99%, что я просто не в курсе, что в питоне вообще есть


Дядь, ты с такими вопросами, лучше в гугл иди.
#273 #1053200
>>1053197
Уверен, что он просто на каком-нибудь дендиговне в детстве в кубасике рисовал, потом на разных бейсиках писал всякое говно под свои нужды, а теперь считает, что умеет программировать. Я с таким пассажиром как-то работал, но это было семь лет назад, так что я думал, что они закончились.
#274 #1053202
>>1053197
с 9-10 на бейсик спектрумовский. мне хорошо за 30, угу...

>>1053200
у меня C/C++ большую часть ололо кареры, эмбедеды и вот это всё. за деньги на бейсиках я никогда ничего не писал, ну кроме каких-то курсовых на VBA в институте, да.
#275 #1053203
>>1053202
Эмбед и байтоебля мало общего с Питоном имеют, поэтому суть мало меняется, тебе твои годы опыта сэкономят неделю вкатывания. Говорю на правах реверсера, съебавшего в дивный мир крудошлепской скриптопараши. Такие вот дела.
#276 #1053205
>>1053197
>>1053200
ну и в целом какой-то пиздец, я сюда не возрастом повыёбываться пришёл, а совета спросить. эйджисты хуевы лол.

>>1053187
спасибо, второе судя по оглавлению точно подходит

>>1053203
крудошлёпство меня мало интересует, хотя свою дозу php+js я сожрал. мне интересны базы данных, data science и вот это всё. c sql я тоже вполне норм.
#277 #1053208
Помогите с джангой
Есть модель с imagefield, когда удаляю ее объект, то сам файл остается на сервере, как удалить его вместе с объектом?
#278 #1053221
>>1053205

>а совета спросить.


Так с твоих слов ты опытный, а не юный вкатывальщик, у которого из ойтишных знаний только про зп в 300кк/нс. Мог бы и сам в гугле все найти без проблем. Я думал, что у байтоебов с этими очевидными вещами дела обстоят хорошо, а вон оно как оказывается.
#279 #1053232
>>1053208
Как-то так. http://bfy.tw/Dcz4
#280 #1053259
>>1053168
Python CockokBook
#281 #1053264
>>1052850
Желательно, и было бы хорошо уже знать пайтон на нубском уровне. Как по мне, Лутц годно написал про ООП, а такие вещи как функции, когда я про них прочитал, что что он написал то не только ничего не понял но и запутался в том что знал
#282 #1053410
>>1053264
А что лучше Саммерфилд программирование на pyhton 3 или лутц?
#283 #1053444
>>1053410
Dive into python
#285 #1053490
>>1053487
Что за ебанутые вопросы? Ты упоротый шоле?
#286 #1053496
>>1053487
Представь, что твоя мамка вышла на улицу голой. Написав на сиськах и жопе: "Не смотри сюда". Смогли бы прохожие прочитать эти надписи?
#287 #1053499
>>1053490
Нормальный такой вопрос, который задает любой белый человек впервые столкнувшийся с невозможностью скраулить сайт из-за ограничений в robots.txt.
>>1053496
Там конкретный протокол описан, десу. Уже прецеденты за его нарушение есть.
#288 #1053502
>>1053499

>Уже прецеденты за его нарушение есть.


Ты из какой страны пишешь то?
#289 #1053504
>>1053502
Ну так в европке отдохнуть тоже охото.
#290 #1053506
>>1053504
Обмажся впн-ом или проксями.
#291 #1053508
>>1053506
Разве владельцы впн и прокси не сдают тебя по первому требованию? Если обмазываться, то i2p, но это бессмысленно и беспощадно.
#292 #1053510
>>1049766 (OP)
Реквестирую путь джуна.
#293 #1053514
>>1053510
1. переходишь по этой ссылке https://2ch.hk/pr/res/1052010.html (М)
2. читаешь шапку треда
3. составляешь резюме
4. устраиваешься джуном
Поздравляю, ты джун.
#294 #1053520
Еще один тупой вопрос по джанге
Нужно сохранить дату создания загружаемого файла, при обычном сохранении она становится равна дате загрузки, как вытащить ее и присвоить?
#295 #1053525
>>1053514
спасибо, но там другой ЯП
#296 #1053526
Тут такие няши-умняши сидят. А я такой тупой дремучий петуч. уууу
#297 #1053527
Мыслители, помогите.
Есть один цикл, который должен записывать прокси, в неизвестном количестве. Как я не старался, циклы выходили убогими, и не рабочими. Можете мне объяснить, как мне сохранить переменную, что бы она не перезаписывалась со следующим циклом? Вот сам цикл:
def prdstr():
b05 = 'http'
c12 = (input('How many proxy?: '))
c13 = 0
while:
c121 = input('Paste your proxy (only http). If you want to finish, press Enter:')
if c121 == '':
break
c13 += 1
c15 = {b05:c121}
c17 = {b05:c121}
c16 = {b05:c121}
print(c15, c16, c17)
if c13 == c12:
break
prdstr()

*Пытался в начале узнать сколько будет прокси, чтобы хоть как-то упростить скрипт.
#298 #1053528
>>1053525
Но этот вариант более реальный.
#299 #1053529
>>1053526
Да, хуево быть тобой.
#300 #1053530
>>1053527

>def prdstr():


>==b05 = 'http'


>==c12 = (input('How many proxy?: '))


>==c13 = 0


>==while True:


>====c121 = input('Paste your proxy (only http). If you want to finish, press Enter:')


>====if c121 == '':


>======break


>====c13 += 1


>====c15 = {b05:c121}


>====c17 = {b05:c121}


>====c16 = {b05:c121}


>====print(c15, c16, c17)


>====if c13 == c12:


>======break


>prdstr()

#301 #1053531
>>1053526
Тут много таких петучей. Не бойся, продолжай изучать ;3
#302 #1053533
>>1053510
У меня тестовое задание такое
Создать каталог изображений с возможностью загрузки, удаления, редактирования описания, названия и даты создания, а так же поиском по атрибутам,а так же фронтенд к этому (я на бутстрапе сделал, пиздец удобная штука)
Сделал все кроме сохранения оригинальной даты создания
>>1053520
Бамп вопросу
#303 #1053567
>>1053533

>У меня тестовое задание такое


Сколько времени дается?
#304 #1053578
>>1053567
Эйчарка позвонила вчера в 7 часов вечера, спросила про успеваемость в вузе, сколько могу присутствовать на работе (в вакансии было указано про возможность совмещения с учебой), про гитхаб, личные достижения и в 8 часов выслала задание, нужно сделать до 30 (включая этот день), отправлю либо завтра с утра, либо сегодня, если найду способ >>1053520
#305 #1053587
https://stackoverflow.com/questions/15611605/how-to-pass-a-user-defined-argument-in-scrapy-spider
Охрененная штука из под капота скрапи. Можно срать не снимая свитер.
#306 #1053590
>>1053520
>>1053578
Ну так дата создания и должна быть равной дате загрузки. Или на клиенте дату файла доставай и пересылай в запросе отдельно.
#307 #1053593
>>1053590
Это значит жс юзать нужно? Какую нибудь готовую либу не подскажешь? А то с ним не очень дружу
#308 #1053594
>>1053593
Зачем тебе это? Разве у тебя в задании такое условие стоит? Или ты сам себе задачи придумываешь?
#309 #1053596
>>1053533
>>1053578

>Создать каталог изображений с возможностью загрузки, удаления, редактирования описания, названия и даты создания, а так же поиском по атрибутам,а так же фронтенд к этому


Можешь код показать?
#310 #1053597
>>1053594
Контора работает с копирайтом фотографий
В условии сказано, что нужно иметь возможность изменять дату съемки фотографии, хотя может просто задание некорректно сформулировано
#311 #1053601
>>1053597
Думаю, что можно попытаться вытащить exif'ы, но они есть не на всех картинках
#312 #1053606
>>1053597

>Контора работает с копирайтом фотографий


Какая контора? Вымышленная в задании или та, в которую ты устраиваешься?
#313 #1053608
>>1053606
В которую устраиваюсь
#314 #1053613
>>1053608
Код скинь.
#315 #1053615
Ладно, сделаю поиск и добавление через exif
>>1053613
https://github.com/JojoBizarov/test_catalog
#316 #1053619
>>1053615
Так а по другому и никак, без exif-а это смысла не имеет, дата создания файла легко может не совпадать с датой съемки и к ней привязываться глупо. Хотя и exif тоже не 100% достоверность.
413 Кб, 1603x1079
#317 #1053620
Новый логотип ютуба похож на дефейс.
#318 #1053622
>>1053615
Зачем гитхаб спалил то? Залил бы zip на ргхост.
#319 #1053625
>>1053622
Ну мы же не в /b, что бы диванонить, да и нет у меня там ничего особо, только мусор по гайдам
#320 #1053690
>>1053034
Спасибо.
93 Кб, 675x777
#321 #1053695
Как запустить команду в виртуальном окружении соседней папки?
#322 #1053709
>>1053695
Ебать, ты сейчас такую хуйню творишь, что просто пиздец.
341 Кб, 921x1417
#323 #1053714
нахуя вы сделали 2 треда
ВОРВАЛСЯ НАХУЙ.
Смотрим пикрелейтид. Есть задание, есть пока только реализация парсера и даже она не закончена.
Ответьте на мои вопросы плз:
1)Как убрать пустые строки между usage,description и help-message?
2)Как вообще изменить usage и help, чтобы 'usage' было с большой буквы (как пример в книге), а в help-e вместо 'optional arguments' было 'Options'. Ну и order поправить надо.
ХЕЛП МИ ПЛИЗ.
Вот ещё ideone ссылка на всякий: https://ideone.com/EMNqoN
#324 #1053717
>>1053714

>нахуя вы сделали 2 треда


ГИЛ убрали.
#325 #1053722
>>1053709
Хочу кнопочки нажимать в браузере, а не пердолиться с ssh. Чуваки вообще пилят консоли в браузере через canvas, онлайн интерпретаторы и компиляторы.
Как это вообще делают?
#326 #1053723
>>1053714
Для тебя это будет сложно.
#327 #1053724
>>1053722
Ебать, и для этого ты решил джангу использовать? Да еще и таким извращенным способом.
#328 #1053729
>>1053724
А что ты предлагаешь?
#329 #1053732
>>1053729
https://scrapyd.readthedocs.io/en/latest/ Читаешь, изучаешь апи, берешь простой веб фреймворк типа bottle ебашишь на нем страничку, и дергаешь апи скраппи через нее.
52 Кб, 604x450
#330 #1053762
>>1053732
Зачем bottle, если все можно сделать в django? У меня помимо запуска спайдеров, еще другие штуки будут. Дергать во view? Покажи мне команду запуска паука в scrapyd.
#331 #1053777
>>1053762

>Покажи мне команду запуска паука в scrapyd.


А код за тебя не написать? Я тебе ссылку дал, там есть раздел апи, в нем вся нужная тебе инфа.
#332 #1053784
>>1053777
Lucky трипл, ты сам читал этот апи? Там про запуск сотен спайдеров одновременно говорится тащемта.
#333 #1053830
>>1053723
Почему? Ты можешь дать развернутый ответ с пояснениями как человек, а не как ебло?
#334 #1053831
>>1053487

> Some sites apparently use a robots.txt exactly in order to keep their site from being crawled by Google or some other utility that might grab prices and therefore allow people to do price comparisons easily. They have private search engines on the site so they obviously want people to be able to search the site; apparently they just don't want people to be able to easily compare their information with other vendors.


Такой петушне надо ссать в ебло не задумываясь.
#335 #1053913
>>1052839

>Что такое метаданные?


Метаданные - это сопроводительные данные к чему-то.
То есть описывающие объект данные.
#336 #1053914
>>1053830
Считаю выше своего достоинства давать какие либо пояснения тупому вкатывальщику. Поссал на обиженку.
#337 #1053916
>>1053784

>ты сам читал этот апи?


И даже использовал.

>Там про запуск сотен спайдеров одновременно говорится тащемта.


И тебе это мешает запустить 1 спайдер?
#338 #1053917
>>1052842
А что - кто-то возьмет человека, знающего Scala, но не программировавшего на Java?
#339 #1053918
>>1053917

>знающего Scala, но не программировавшего на Java


А такие вообще есть? Не считая диванных погромиздов, конечно.
#340 #1053919
>>1052844

>классические паттерны


Эти паттерны человеческим языком называются приёмами программирования.
Прямого отношения к ООП они вообще не имеют и стары как мир.
#341 #1053978
>>1053714
Что за книга?
#342 #1054036
>>1053714

Up вопросу, тоже интересно.

И еще интересно что за книга?
Кстати, когда книга писалась может использовалась другая версия модуля, гле было Usage, Options и без пустых строк - такое тоже возможно, а строки пустые могли еще вырезать в книге, чтобы места не занимало лишнего.
#343 #1054123
>>1054036
Гайз нужна помощь.
Допустим у меня есть список
list = [1, 4, 8, 7, 3, 15,7,7]
Модуль re работает же только на строки?
А как кроме цикла можно получить число + его индекс по возможности, не прибегая к циклам?
#344 #1054162
>>1053914
Типичный долбаеб, который научился быдлокодить как обезьянка и считает себя выше других.
>>1053978
Programming in Python 3 Mark Summerfield
>>1054036
Сам отвечу на свой же вопрос т.к. приличные люди мне рассказали. Либо никак, либо вместо argparse использовать сторонний docopt т.к. он делает парсер не через сомнительные методы, а через большую docstring которую ты можешь написать какой захочешь конечно в пределах разумного и с небольшими правилами, которые надо соблюдать. Но то, что мне нужно, там сделать можно.
#345 #1054173
Так, я тот анон, который каталог картинок делал, эйчару мое решение понравилось и она назначила собеседование на завтра
Какие вопросы на питон/джанго собесах задают? В гугле только ответы из 2010 года
#346 #1054189
Собрался изучать GO, но когда дело дошло до слайсов (так они называются списки), мэпы (так они называют словари), я понял, что после Питона я буду плакать кровавыми слезами. В go нельзя вот так просто сделать if "car" in list
#347 #1054190
>>1054189
Ты собрался писать на языке со статической типизацией без дженериков, зачем есть кактус?
#348 #1054195
>>1054190
Как оказалось, там не обязательно указывать точно типизацию. Там компилятор сам решает за вас типизацию. Можно вот так a:=3
Насчет дженериков, как объясняют, их специально не внедряют ибо быдло-кодеры используют их через жо... Это примерно как в питоне, массивы специально не внедрили, есть только стороннее решение. Иначе, те кто перекатился из php начали бы искать данные с перебором всего массива как они привыкли это делать.
Аноним #349 #1054196
>>1054195

> Можно вот так a:=3


пасквилемразь, плес
#350 #1054200
>>1054195

>Это примерно как в питоне, массивы специально не внедрили, есть только стороннее решение.


Те ебанутый? Array входит в стандартную библиотеку, алсо от списков по функционалу не отличается, кроме ограничения на единый тип данных элементов.
#351 #1054212
>>1054200

>Array входит в стандартную библиотеку


numpy было сторонним решением и им остается. Да эта либа сейчас поставляется как стандартная.
Но изначально массив не закладывался в архитектуру языка. Это было идеологическое решение. Чтобы кодеры учились использовать вот такие структуры if "word" in list
#353 #1054229
>>1054212

>numpy было сторонним решением и им остается.


Причем тут нампай? Это вообще ебаный комбайн для работы с массивами. Ты его с типом данных сравниваешь что ли? Совсем укурился, наркоман?
#354 #1054244
>>1054229
Когда начинал изучать язык, массивов еще не было. И в учебниках объяснялось почему. Единственный раз, когда я использовал массивы - это распознавание изображений через numpy
#355 #1054245
>>1054244

>Когда начинал изучать язык, массивов еще не было.


Это ты в 90-х его изучал что ли?
#356 #1054259
>>1054245
Массивы были, когда я начал изучать. Но из-за того, что массивы очень похожи на списки, но с ограничением на тип данных и размер каждого элемента, то всех инструкциях рекомендовали использовать numpy.
#357 #1054262
>>1054259

>Когда начинал изучать язык, массивов еще не было


>Массивы были, когда я начал изучать.


Шиза одолевает?

>Но из-за того, что массивы очень похожи на списки, но с ограничением на тип данных и размер каждого элемента, то всех инструкциях рекомендовали использовать numpy.


Охуительная логика.
#358 #1054263
>>1054173
на такие вопросы тут не отвечают, бывали тут 1 2 годнх анона, и видимо забили заходить, я задавал такой же вопрос приблизительно, мне посоветовали гуглить загадки тюремные...2sh<3
#359 #1054264
>>1054263

>мне посоветовали гуглить загадки тюремные


Ну так все правильно посоветовали.
#360 #1054267
Он охуел? Как первое условие может выполняться?

if (5 or 3 == 4) and (3 or 5 == 5):
print("NO")
else:
print("YES")

Выдает NO
#361 #1054270
>>1054267
Проигрунькал.
#362 #1054273
>>1054267
Манюня, ты забыла о приоретете операторов
#363 #1054275
>>1054270
поясни. Целый день дрочу питон, голова не варит

>>1054273

Я же скобки выставил, пес
#364 #1054276
>>1054273
И о синтаксисе or тоже
#365 #1054277
>>1054275
Тебе уже выше пояснили, пес.
#366 #1054278
>>1054262

>Массивы были, когда я начал изучать.


Я вспомнил, что они были и вспомнил почему их не использовал и почему в инструкциях взялся numpy и почему array сделали таким ограниченным.
#367 #1054279
>>1054277
догнал, спс. Получается пес я
#368 #1054289
>>1054162

Спасибо за наводку на docopt
#369 #1054291
>>1054173
Что за каталог картинок?
#370 #1054294
>>1054189
Го - язык, придуманный самодурами с непонятными целями.
Говно а не я зык.
#371 #1054298
>>1054195

>в питоне, массивы специально не внедрили


А что с массивами не так-то? Как их можно использовать, чтобы можно было оправдаться, свалив на быдлокодеров?
#372 #1054305

>>> from builtins import bytes


>>> b1 = bytes([49,50,51])


>>> b2 = b'123'


>>> b1 == b2


True

>>> b1


b'123'

>>> b2


'123'

>>> b2 == b1


True

>>> b1 == b'123'


True

>>> b2 == b'123'


True

>>> b1[0]


49

>>> b2[0]


'1'

>>> (b'123')[0]


'1'

>>> bytes([49,50,51])[0]


49

>>>



уносите меня, я порвался, сукаблядь
#372 #1054305

>>> from builtins import bytes


>>> b1 = bytes([49,50,51])


>>> b2 = b'123'


>>> b1 == b2


True

>>> b1


b'123'

>>> b2


'123'

>>> b2 == b1


True

>>> b1 == b'123'


True

>>> b2 == b'123'


True

>>> b1[0]


49

>>> b2[0]


'1'

>>> (b'123')[0]


'1'

>>> bytes([49,50,51])[0]


49

>>>



уносите меня, я порвался, сукаблядь
#373 #1054307
>>1054305

>А ТАМ ЦЫФЕРКИ И ТУТА ЦИФЕРКИ АНИ АДИНАКАВЫЕ УУУ ТУПОЙ ПИТОН!!!!!

#374 #1054308
>>1054305
В чем прикол то? Я новенький, не понимаю
#375 #1054309
>>1054308
Прикол в том, что нужно учить типы данных.
#376 #1054310
>>1054305
На еще:

>>> bytes([49,50,51])[0]


'['

>>> bytes([49,50,51])[1]


'4'

>>> bytes([49,50,51])


'[49, 50, 51]'
Это был Python 2.7.9

>>> bytes([49,50,51])[0]


49

>>> bytes([49,50,51])[1]


50

>>> bytes([49,50,51])


b'123'
А это - Python 3.6.1

А у тебя какая версия?
21 Кб, 718x397
#377 #1054312
>>1054291
Мое тестовое задание, я выше писал
http://rgho.st/8lplKfJkF
#378 #1054313
>>1054305
>>1054310
Где ты это высрал?
bpython version 0.16 on top of Python 3.6.2

>>> b1 = bytes([49, 50, 51])


>>> b2 = b"123"


>>> b1 == b2


True

>>> b1[0]


49

>>> b2[0]


49

>>>

#379 #1054314
>>1054310
вдогонку:
python 2.7.9:

>>> b'123'


'123'

>>> p2 = b'123'


>>> p2


'123'

python 3.6.1:

>>> b'123'


b'123'

>>> p2 = b'123'


>>> p2


b'123'
#380 #1054316
>>1054312
Чем им не нравится обычный виндовс проводник? Или суть именно в том, чтобы сделать свой собственный проводник с блэкджэком и картинками? И как реализовал? С графическим интерфейсом и всем таким?
#381 #1054317
>>1054316
Это на джанго надо было делать, в вебе
#382 #1054319
>>1054310

>А у тебя какая версия?


Есть парочка: ты либо толстый, либо тупой.
#383 #1054320
>>1054310
python 2.7, который должен выполнять код, написанный для 2.7 и 3.2 (для этого импорт из builtins от python-future)
всех делов-то проверить первый байт датаграммы на равенство значению
ну и как это сделать-то, ёб вашу мать? чтоб работало и в 2 и в 3
#384 #1054322
>>1054298
Да тоже самое, что в Go. Неудобно оттуда данные выковыривать. Код слишком длинный получается.
>>1054294
Я бы так не сказал. Во-первых он очень шустрый, во-вторых сразу создает готовый скомпилированный файл, который уже можно передавать людям. В то время как pyinstaller может смачно послать куда подальше и приходиться гуглить, чтобы обойти очередной глюк.
#385 #1054325
>>1054320
six
долбоёб
#386 #1054326
>>1054322
Nim тоже это умеет и тоже шустрый, наверное даже шустрее. И что?
Go криво спроектирован, насовали говна, да побольше и не думая. И синтаксис говно, ни то ни сё.
#387 #1054332
>>1054319

>>> b'123'[0]


'1'

>>> b'123'[0]


49

Найди различия. Ты кстати толстый или тупой?
#388 #1054335
>>1054332

>Найди различия


Хуйли их искать, 1 пример питон 2.x, второй 3.x
#389 #1054336
>>1054326

>Nim тоже это умеет и тоже шустрый


Julia тоже шустрая
Но у Nim и Julia нет такого количество библиотек как у Go. У гоу уже есть почти все библиотеки на все случаи.

>Go криво спроектирован


Не знаю, что ты имеешь виду. Питон появился, когда в процессоре было одно ядро. Многопоточность появилось в нем, как внешнее решение и работает так себе. Go сразу проектировался под многоядерность.

>синтаксис говно


согласен
#390 #1054340
>>1054336
Скажи прямо - хочешь денег, поэтому и взялся его учить в надежде их получить
#391 #1054346
>>1054340
Нет, просто держу нос по ветру
#392 #1054350
>>1054340

>Go


>заработать денег


Глупый гой, жидов из гугла не наебешь.
#393 #1054362
>>1054350
Так при чем тут Гугл - найдутся другие клиенты лохи
395 Кб, 724x483
#394 #1054363
>>1054350
А если программер сам жид, то кто кого наебет?
#395 #1054364
>>1054363
А чего это он в ворде программирует?
#396 #1054378
>>1054364
VB6 очевидно же
52 Кб, 677x342
#397 #1054386
>>1054364
Читает доку по Common Lisp.
#398 #1054388
>>1054363
Держатель "казино"
#399 #1054390
>>1054364
Ты собрался его учить как правильно наёбывать?
#400 #1054392
>>1054364
Он проверяет текст кошерного малвар-письма с подарком. Чтобы ты точно открыл.
#401 #1054401
>>1053153
>>1053151
Спасибо анон все сработало как ты писал, ночью прошли ядерные испытания скрипта. Все идеально, нужные исключения срабатывали как надо и позволили потом проанализировать скрипт и поправить. Осталась еще пара вопросов но попробую нагуглить еще раз, что то не нашел.
#402 #1054711
>>1054173
Я отсобеседовался, могу рассказать, что там было, если интересно кому
#403 #1054730
Аноны, в который раз 2 выхожу с собеса, с чувством и пониманием того, какой же я идиот и нихуя не знаю.
Я забыл что такое итератор и как он работает, забыл рекурсию (впрочем особо и не знал, когда то разок прочел и все).
Но с другой стороны, рад что мне откажут, ибо не придется ковырять python 2 c отсутствие перспектив, в обозримом будущем, в переходе на python 3
И ох уж эти охуительные вопросы типа а что вам нравится в питоне?
#404 #1054746
>>1054730
Ты не из челябинска случаем?
#405 #1054760
>>1054746
Нет, минск.
#406 #1054761
>>1054730
Я вообще завидую твоей возможности ходить на собеседования. Ведь у меня в городе даже специальности нет такой как программист.
#407 #1054766
>>1054761
Ну это уже совсем мухосранск, нужно хотя бы в миллионике жить или туда перекатываться
#408 #1054767
>>1054730

>Я забыл что такое итератор и как он работает, забыл рекурсию (впрочем особо и не знал, когда то разок прочел и все).


Лол, я бы с такими знаниями вообще зассал на собеседование идти.
#409 #1054801
>>1054761
Ну у меня есть штук 15 вакансий нужных, и вот на две только на собес позвали.
>>1054767
Мда, видимо я охуел и расслабился.
#410 #1054813
>>1054801
А у меня сегодня было так, собеседовали эйчарка и два спеца из ит отдела
1) отличие списка и кортежа
2) что такое итератор\генератор
3) Какой результат выполнения
tuple('text')
('text')
('text',)
4)Что будет выведено в результате
def f(h)
h = '5'
h = '4'
f(h)
print(h)
и
def f(h)
h = ['5']
h = ['4']
f(h)
print(h)
5) Спросите у спеца что нибудь такое про питон, что бы он удивился от того, что я знаю (я задал вопрос про ассинхронность и asinc await)
А потом попизделки за жизнь, перспективы, прошлые проекты, почему именно питон и бекенд
Из ебанутых вопросов был только один от спеца:
"Ты бы согласился работать у нас, если бы зп изначально была 1 рубль и увеличивалась в два раза каждый месяц"
#411 #1054815
>>1054813
Пробелы проебались
def f(h)
____h = '5'
h = '4'
f(h)
print(h)

def f(h)
____h = ['5']
h = ['4']
f(h)
print(h)
#412 #1054821
>>1054813
Ну в принципе норм, кроме вопроса спецу, как по мне, вот почитал за генераторы и рекрсию, понял что я это знаю и ок.
У меня вот задачка была типа:
Есть огромное количество ячеек памяти, нужно обойти их всех, выбрать четные, затем в рандомные записать данные. Затем из записанных прочесть инфу. Есть идеи?
#413 #1054825
>>1054813
1)Один мьютэбл, другой нет
2)чем итератор отличается от iterable?
3)Никакого. Нет ни присвоений, ни выводов через print. Просто создаешь какие-то объекты, которые тут же проебуться.
4)Так как переменная h не определена вне функции, в обоих случаях будет пиздец (не знаю, как там ошибка про использованние неопределенной переменной)
Все, можно мне на работу?
Кто такие эйчары и спецы? Слышал про сеньоров и джуниоров только.
#414 #1054838
>>1054825
1) И кортеж занимает меньше памяти
2) Это тут причем?
3) Подразумевалось, что выполняется в командной строке
4) Лол нет, гугли области видимости функций
Эйчар это сотрудник отдела кадров, который ищет кандидатов на должность
>>1054821
Не совсем понял условие, но очевидно, что нужно писать генератор, т.к. данных много
#415 #1054849
>>1054838
Возможно можно и так.
Ну вот смотри, есть список длиной N(это ячейки памяти), ты должен обойти все четные элементы, и к каждому элементу применить рандом(для того что бы выбрать, записывать туда что-то или нет), если записываешь, то применяешь выдуманную функцию, типа logicWrite, если не записываешь то просто не трогаешь.
Затем тебе нужно прочитать инфу из всех ячеек в которые была сделана logicWrite, применив при этом logicRead.
#416 #1054862
>>1054849
Четные элементы в смысле четный индекс или четное значение?

>и к каждому элементу применить рандом(для того что бы выбрать, записывать туда что-то или нет)


Рандом применить к значению или достаточно какого нибудь random.choice([True, False]) и только потом применять logicWrite?

>Затем тебе нужно прочитать инфу из всех ячеек в которые была сделана logicWrite, применив при этом logicRead


Можно хранить индексы элементов к которым была применена logicWrite?
#417 #1054872
Напомните почему мы вынуждены писать os.chdir('mydir') вместо os.system('cd mydir')?
#418 #1054922
>>1054862

> Четные элементы в смысле четный индекс или четное значение?


Ячейки пусты, по индексу

> Рандом применить к значению или достаточно какого нибудь random.choice([True, False]) и только потом применять logicWrite?


Бинго, тру/фолс

>Можно хранить индексы элементов к которым была применена logicWrite?


Дорохо по памяти, там кол-во элементов, равно кол-ву ячеек в памяти 4гб ССД
#419 #1054929
>>1054922

>Дорохо по памяти, там кол-во элементов, равно кол-ву ячеек в памяти 4гб ССД


А что мешает их на диск сохранять в процессе, а не в памяти держать?
Ну и как вариант можно передать конкретный seed в рандом и сохранить его. Потом можно будет восстановить последовательность рандома.
#420 #1054932
>>1054922

>Дорохо по памяти, там кол-во элементов, равно кол-ву ячеек в памяти 4гб ССД


Так, а раз ты сказал, что >Ну вот смотри, есть список длиной N(это ячейки памяти) то подразумевается, что список и так у нас в памяти и его достаточно передать в нужную функцию?
#421 #1054935
>>1054932
А так же число N нам заранее известно?
#422 #1054950
Пытаюсь перенести длинную строковую переменную. Она получается с пробелами и с \n символами.

test="""a='{}',
b='{}',
c='{}'""".format('1','2','3')

Что бы a,b,c друг под другом были. Если \ добавить то она все отступы туда впихивает. Как это правильно сделать? В гугле говорят что вот так надо как я, но я не пойму что я упускаю.
#423 #1054970
>>1054929
Перамога, молодец.
#424 #1054971
>>1054950
Анон, я только начинаю, объясните, что за хуйню я наблюдаю в этом посте? Нахуя так много """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""?
#425 #1054972
>>1054971
'''Ну можешь использовать одинарные, если тебя двойные смущают'''
pythondoebal #426 #1054973
>>1054950
test="a='{}', \
b='{}', \
c='{}'".format('1','2','3')
#427 #1054974
>>1054932
Ну да, но еще раз его копировать и т.д. - не торт.
Выше есть правильный ответ.
#428 #1054976
>>1054974
Так вот, да, хранить индексы(которые, в принципе равны элементам памяти), не торт ибо список длинный.
#429 #1055037
>>1054711
Да, давай
#430 #1055051
>>1054813
А вот эти вопросы про зарплату я не просекаю. Когда например спрашивают - а если бы вам предложили работать бесплатно месяц/два, что бы вы ответили? - Что это за тест такой? 4inb: тебя хотят бесплатно эклуайтировать; нет, imho это какой-то тест. Интересно что отвечать.

Кстати, у тебя разметка сбилась (вот почему синтаксис питона стремноватый - пробелы это ненадежно).
#431 #1055055
>>1054813
>>1054825

3)
>>>tuple('text')
('t','e','x','t')
#432 #1055059
>>1055051
Тащем то это математический вопрос, типа зп равна 2^n, где n количество отработанных месяцев, понимаешь фишку. Ответишь "нет" и получишь минус в глазах эйчара
#433 #1055060
#434 #1055062
>>1054872
cd mydir запустит командный процессор, который перейдет в каталог и завершится, а рабочий каталог программы останется тем же?
Или потому что нет такого исполняемого файла "cd" - команда втроенная в командный процессор?
#435 #1055063
>>1055059
Ну это понятно про геометрическую прогрессию, была еще древняя байка про зернышки на доске. Но надо учитывать и реальность, а если эти пидоры тебя через год кинут? Получится, что ты практически забесплатно работал. До нормальной зп надо как минимум 16 месяцев отработать.
#436 #1055064
>>1055063
Бля лол, это чисто мат задача, она не имеет отношения к будущей зп
#437 #1055065
>>1055059
Издеваешься?
#438 #1055067
>>1055064

>"Ты бы согласился работать у нас, если бы зп изначально была 1 рубль и увеличивалась в два раза каждый месяц"


А вот как узнаешь, может он решил таким образом тебя хитро наебать.
#439 #1055076
>>1054973
Это я пробовал. У меня вот отступы пробелами сделаны и при соединении строки он впихивает все эти пробелы в переменную.
test="a='{}', \
====>b='{}', \
====>c='{}'".format('1','2','3')

Вот вместо '=' пробелы. Или я как то отступы неверно делаю?
#440 #1055082
>>1055067
Это наверное тонкая проба на знание степеней двойки (необходимо для программиста), но в такой тсрёмной и подозрительной форме, что лучше там не работать.
pythondoebal #441 #1055083
>>1055076
Ну тогда так:

test="a='{}', " \
____"b='{}', " \
____"c='{}'".format('1','2','3')

или так

test=(
____"a='{}', "
____"b='{}', "
____"c='{}'"
).format('1','2','3')
#442 #1055084
>>1055082
В моей мухосрани количество вакансий на питон-джуна 1 примерно равно количеству резюме с ссылкой на гитхаб (причем почти без содержимого) 2, мне либо тут работать либо в ДСы понаезжать
#443 #1055085
>>1055076
Ответ - ннкак.

Или вот так:
test=("a='{}', "
+ "b='{}', "
+ "c='{}'").format(1,2,3)
#444 #1055086
>>1055085
Будь проклят Абу

test=("a={}"
+____"b={}"
+____"c={}").format(1,2,3)
#445 #1055089
>>1055083
Хм, не знал, что конкатенировать строки можно вообще без соединителей, к тому же отступы не имеют значения (и это в Python!)
#446 #1055119
Двач, как сделать с
{'http': '15.15.15'}
{'http': '14.14.14'}
в
{'http': '15.15.15',
'http': '14.14.14'}
Включая то, что айпи будут вводиться в неизвестном количестве
#447 #1055122
>>1055119
Ну если словари в каком-то массиве будут, то
res = {}
for i in arr_dict:
____res.update(i)
#448 #1055123
>>1055122
Хотя стоп, у тебя один и тот же ключ, такое работать не будет
#449 #1055125
>>1055122
Блять, а как сделать что бы выходило? Возможно while цикл сделать?
вот мой код
for i in (input('Proxy: ').split()):
_v = {'http':i}
_print(v)
#450 #1055127
>>1055125
Тебе требуется просто вывести или как? Можешь сделать один ключ 'http', а его значением список со строками, но если у тебя в словаре будет один ключ, то тогда лучше сделать множество
#451 #1055128
>>1055127
Смотри, я вводя прокси через пробел, закидываю их в {} а потом кидаю в url.request
В словаре всегда будет http. Как получше будет сделать множество?
#453 #1055131
>>1055129
Зачем мне это? Мне сейчас нужно как-то его сгруппировать.
#455 #1055136
>>1055134
хммм а можно после айпи и http убрать?
#456 #1055140
>>1055136
Убрать что?
#457 #1055142
>>1055140
Что бы всего этого осталось
'http','15.15.15' ?
#458 #1055144
>>1055142
Зачем?
#459 #1055151
>>1055144
Мне нужно только:

input

>>> 15.15.15 14.14.14



output

v = {'http':'15.15.15','http':'14.14.14'}

Все остальное мне просто не нужно
35 Кб, 650x513
#460 #1055154
>>1055151
Ты вообще знаешь что такое словари и как они работают?
#461 #1055157
>>1055154
Ноуп
#462 #1055159
>>1055151

>v = {'http':'15.15.15','http':'14.14.14'}


Невозможно, ключи в словаре должны быть уникальны, в таком случае как у тебя останется просто {'http':'14.14.14'}. Ты полностью задачу сформулируй, а то ты какую-то дичь творишь.
#463 #1055162
>>1055159
Нужно что бы при вводе прокси, они записывались в словари, типо такого {'http':'15.15.15','http':'14.14.14'}
что бы остановить ввод прокси, прожать Enter
#464 #1055163
>>1055162
Может просто сделаешь множество с именем http и будешь добавлять туда значения?
#465 #1055164
>>1055162
Зачем тебе словарь? Чем тебя список с урлами и urlparse не устраивает?
#466 #1055165
>>1055163
Я тоже так думал, но я не знаю сколько будет прокси вводиться
если 3 то:
{'http':'15.15.15','http':'16.16.16','http':'14.14.14'}
если 4 то:
{'http':'15.15.15','http':'17.17.17''http':'16.16.16','http':'14.14.14'}
#467 #1055166
>>1055164
У меня уже прописан скрипт, мне просто нужен конкретный словарь.
#468 #1055167
>>1055119
А почему не просто список ай-пи, если все "http"?
#469 #1055168
>>1055167
Хз, urllib.request.ProxyHandler не детектит так, выдает потом просто настоящий айпи
#470 #1055170
>>1055167
Я вообще так думал:
{'http':['16.15.15.15','14.14.14.14]}
Но чего-то не выходит так
#471 #1055173
>>1055165
Ты понимаешь, что тот словарь, который ты просишь сделать НЕВОЗМОЖНО, в словарях ключи должны быть уникальны
Вот по твоему какой результат выполнения должен быть у словаря
a={'http':'15.15.15','http':'16.16.16','http':'14.14.14'}
при вызове a['http']
#472 #1055174
>>1055166
Не может быть такого скрипта, потому что такого словаря не может быть.
#473 #1055175
>>1055166
Как тебе дебилу еще донести, что питоновский словарь не может содержать одинаковые ключи? Если так тебя прет пиши свой UserDict.
#474 #1055176
#475 #1055177
>>1055168
поздравляю, ты меня затраллел своей тупостью.
#476 #1055178
>>1055175
А разве при создании кастомного словаря можно сделать такое?
#477 #1055179
>>1055177
Да я просто надеялся что так получиться(
#478 #1055185
>>1055178
Можно, почему нет? Только нужно определиться с поведением, как по ключу значение возвращать, например.
#479 #1055187
>>1055185
Допустим, есть несколько одинаковых ключей, при вызове нужно вывести все их значения списком
Как такое реализовать?
#480 #1055190
>>1055187
Создаешь свой класс словаря и списка наследуясь от классов в collections, в свой словарь помешаешь данные в виде ключ:твой_список(значение) и соответственно переопределяешь методы __getitem__ и __setitem__ чтобы они уже ходили в твой_список. Ну и разумеется остальные методы реализовать с учетом этого.
#481 #1055192
>>1055190
А ну и кастомный список нужен чтобы детектить случаи когда в словарь пытаются добавить 'key':[1,2,3] чтобы не получилось путаницы со списками.
#482 #1055221
>>1055192
Можно изначально создавать список, типа
d[1] = "a" => {1:["a"]}
А потом просто распаковать, тогда проблем не будет
#483 #1055224
>>1055221
Оверхед по памяти, в случае если большинство ключей имеют одно значение. Лучше создавать список если происходит дупликация ключей.
98 Кб, 247x248
#484 #1055237
>>1054813

> asinc

2 Кб, 364x150
#485 #1055299
>>1055190
Не совсем понял, по моему проще для дублирующихся ключей возвращать list со всеми их значениями.
mydic['http'] -> ('0.0.0.0', '1.0.0.127', ...)

У Абизяны Абу сегодня первосентябрьское обострение?
#486 #1055392
>>1049946
Какая хуёвая актёрская игра. Ни на бабулю, ни на вёбмакаку не походит.
Шутка про малинку не раскрыта.
2/5
#487 #1055393
>>1049766 (OP)
Пайтон-боги, последняя надежда на вас!
Есть сайт на ебучем aspx: http://bankrot.fedresurs.ru/Messages.aspx
Нужно спарсить сайт с помощью Selenium'а и я не могу, блять, тупо кликнуть на кнопку. Нужно парсить только "Сообщение о судебном акте", т.е. я открываю сайт (с помощью Селениума, разумеется), кликаю на "Тип сообщения", подгружается какой-то фрейм и я не могу, блять, обратиться к элементам внутри этого фрейма. То есть ни селениум, ни jquery (пытался обратиться к ним через консоль) не видны, хотя в коде они есть. Однако при некоторых действиях (я точно не понял каких именно, но например при клике на какую-нибудь раскрывающуюся кнопку) эти элементы становятся, блядь, видимыми. Т.е. только после того как вручную на что-нибудь внутри кликну -- всё нормально.

Пытался эмулировать Селениумом клик по координатам -- тоже нихуя не вышло. Анончики, помогите пожалуйста.
#488 #1055426
>>1055392
МММ-щики подрабатывают
#489 #1055844
>>1055393

>только после того как вручную на что-нибудь внутри кликну -- всё нормально


Так кликни селениумом, или не получается?
Почему парсишь селениумом? Почему не супом?
25 Кб, 300x300
#490 #1055853
>>1049766 (OP)
Джангисты, вечер в хату. У меня проект с двумя приложениями внутри. Модели обоих связаны друг с другом и как ForeignKey и ManyToMany. Проблема в том, что когда пытаюсь всё это мигрировать получаю CircularDependencyError. Как эту проблему обойти при миграции я знаю, нужно просто один раз закомментить ForeignKey и ManyToMany поля и мигрировать, а потом раскомментить и снова мигрировать.
Вопрос в другом. Что это вообще за CircularDependencyError, и почему она возникает? Гугл даёт только ссылки на прямое решение проблемы, но я хочу копнуть глубже.
Я так понял, что раз она появляется, значит я неправильно спроектировал базу данных для проекта? Что делать, чтобы она больше не возникала?
#491 #1055923
>>1055393
Попробуй слип поставить, после того как подгружаешь инфу.
#492 #1055972
Есть тут кто нибудь кто работал с pyTelegramBotAP?
Есть одна проблема.
Ты пишешь боту, он спрашивает как тебя зовут. Ты такой Вася.
Потом боту пишет другой человек и он такой привет Вася. Тоесть бот сохраняет свое состояние и пре переходе из одного состояния в диалоге а, он также меняет свое состояние в диалоге б. Как этого избежать?
#493 #1055974
Уже второй месяц этот пистон ковыряю.
Все еще надеюсь вкатиться джуном, лол. Вышка = 0
#494 #1055982
>>1055974
А я уже ковыряю год, но начал нормально только сейчас.
Написал говна на гитхабе, сейчас буду мерзкую джангу осваивать.
Говорят, сертификаты тащат.
#495 #1056001
>>1055974
Тоже вышка = 0, тоже пытаюсь вкатиться джуном. Удачи тебе, братишка.
#496 #1056002
>>1056001
На заочку идите, если нужна корочка
#497 #1056098
>>1049766 (OP)
Сап, питуны.
Подскажите годных текстов/видео, по которым можно познать ооп в питоне от азов до глубин
#498 #1056106
>>1056098
Dive into OOP
#499 #1056112
>>1055982

> сейчас буду мерзкую джангу осваивать.


>Говорят, сертификаты тащат.



В смысле?
#500 #1056121
>>1056002
Корочка говно. Тупая трата времени.
Лучший вариант - попасть на очку с хорошим преподавательским составом. И не надо пиздать, что в ваших хуйрюписках такого не бывает. Вы ведь даже не пытались загуглить работы преподов.
Времени навалом останется, для работы хватит. Плюс социализация, плюс связи далеко не бесполезные.
#501 #1056126
>>1056121

>Лучший вариант - попасть на очку с хорошим преподавательским составом


-5 лет жизни
#502 #1056127
>>1056126

> - 4 года жизни, + 4 года опыта, а не сычевание в вебмакаках в перемежку с прокрастинацией

#503 #1056130
>>1056121

Ты когда вышку заканчивал? Какой город? Много связей нашел? Чего узнал, что в интернетах нет?
#504 #1056133
>>1056127

> 4 года опыта, а не сычевание в вебмакаках в перемежку с прокрастинацией


Ты где в вузике опыт нашел то? Первые два курса это дрочь матана, а вторая половина это теория с практическими заданиями уровня сверстать страничку\laba4 на плюсах
#505 #1056139
>>1056130
Я вышку закончил в 2010.
Связей достаточно для того, чтобы при необходимости выйти на нужно узкого спеца, или, что ещё важнее, на управленца ответственного за конкретную инфраструктуру.
Узнал очень много о обработке сигналов, фильтрации, вчп, кодировании, симуляции сетей, распредвыче, теории игр, марковских цепях и прочих мелочах. Не считая практически опыт с линуксами, башами, питонами, ссайлабами, жипиэсэсом, латехом, нс-3 и прочими вещами. Многое из этого можно было бы и нагуглить, но зачем, если это можно получить из первых рук.
Ну вообще студентота - самое весёлое время.

>>1056133

>вторая половина это теория с практическими заданиями уровня сверстать страничку\laba4 на плюсах


Никогда не делал курсачи по вариантам: приносишь любую мало-мальски подходящую под тему шабашку, преподы только рады.
#506 #1056230
>>1056133
Правда, есть варианты сдавать экстерном, а также отказаться от предметов, которые ты уже проходил в другом вузе.
Если останутся только профильные предметы - это уже не так смертельно. Хотя смотря сколько тебе лет. Для школьника, который привык учиться и не знает куда пойти лишь бы не армию хотя это не так уж страшно - вернется более зрелым человеком и сможет поступить в вуз легче, не куда-нибудь, а зная куда и зачем - вариант стационарного обучения норм, а для человека 25+ с профессией уже трата лет своей жизни зря.
#507 #1056232
>>1056139

>из первых рук.


Не смеши. Ну матан еще туда-сюда, но латех и питон в мухосранском вузе из "первых рук"...
#508 #1056259
Вы по своему опыту можете подсказать, вот задача дать юзеру скрипт. Что лучше сделать, в PyQt попробовать вьехать и сделать интерфейс или через веб сделать? Сильно PyQt сложный?
#509 #1056276
>>1056230
Я, конечно же, имел ввиду первую вышку. Зачем может понадобиться дополнительный корочки именно разработчика - даже представить не могу.
#510 #1056284
>>1056276
Для рабочей визы надо
#511 #1056356
>>1056259
Прикинь как классно будет, если юзер сможет выбирать - обычный интерфейс или вебинтерфейс, быстрая работа на компе или удаленная работа?
#512 #1056368
python 3.6.2
Ставлю джангу, создаю бд - еррар
Пробую намутить sqllite3 просто в питоне - еррар
Сам еррар: ImportError: DLL load failed: %1 не является приложением Win32
Это ошибка версии или я кривой? Питон 2 раза переустановил.
#513 #1056379
>>1056356
Быстрая на компе. Тогда у него возникнут "сложности выбора" лол. В будущем и веб сделал бы наверное. Вчера ковырял PyQt, разберусь думаю. Пока больше думаю как внешне все расставить, чем как это запустить. Хотя и запускается и работает все достаточно просто.
#514 #1056383
>>1056356

>Прикинь как классно будет, если юзер сможет выбирать - обычный интерфейс или вебинтерфейс


https://www.youtube.com/watch?v=RisCgSIWwLA
#515 #1056427
Ставь убунту и не парься
#516 #1056501
Таки поставил 3.5 Это пездетс какой то. У меня вообще ничего не работает, везде ругается, просит перед переменными либо b ставить либо encode Блядь что за пиздец.
#517 #1056522
>>1056501
А нет, это просто я мудак. Ну в паре мест преобразовать пришлось, скобочки поставить еще, а так терпимо. Ладно будем пробовать.
#518 #1056704
>>1056379
Веб версию юзер может кастомизировать.
А я бы еще добавил CLI версию (сommand line interface).
#519 #1056706
>>1056522
Мудаки - создатели языка потому что совместимость кода - большое и важное дело
#520 #1056852
Блять, запускаю свой йобо-проект из пайчарма и комп просто виснет, мышка двигается но ничего не реагирует.
Это пизда, товагищи.
P.s. Виснет на стадии импорта библиотек/модулей.
#521 #1056934
>>1056852
Может у тебя глубокое зацикливание - модули друг на друга ссылаются?
#522 #1056944
>>1056934
Пол года назад его последний раз трогал - все ок было.
На винде запустил - все ок.
На debian 9- ахтунг просто.
Есть же вроде какой-то предел и должно кидать эксепшен?
#523 #1057037
>>1056944
1) Другая версия Питона
2) Другие настройки системы
3) Используется другой софт или версии третьей стороны
#524 #1057132
Аноны, как сделать, что бы chr() декодировал каждую строку, типо такой:
12
34
56
78
89

Если можно, то обьясните ваш ответ в кратце
#525 #1057206
>>1057132
Функцию создай, которая хватает аргумент, переводит в string и добавляет на концах чего тебе надо. Или в чем вопрос?
#526 #1057222
>>1057037
Все круче оказалось, я просто вызывал функцию и все зависало.
#527 #1057260
>>1057222
При работе с:
subprocess.cal('sudo ....', shell=True)
Забавно.
#528 #1057305
>>1057260
Ну так оно пароль суперюзера запросило и ждет.
#529 #1057351
>>1057305
Эм, нет, антош, объясняю же, что никак не реагирует система вообще ни на что.
p.s. и там всё сложнее немного, с паролем суперюзера чем просто ввод.
#530 #1057480
Хочу сделать Web-интерфейс для консольной утилиты на python.
Что посоветуете для создания WEB-GUI? Есть какие-то либы/фреймвёки для такого или ручками генерировать html?
12 Кб, 530x123
#531 #1057487
>>1057480
Ошибка постинга: В сообщении присутствует слово из спам листа.
#532 #1057490
>>1057487
Django же для создания вебсайта просто? А к нему там плагины всякие... Ну не знаю, мне думалось запускать утилиту в режиме типа:

> consoleapp --webgui --port 8000


И чтобы она поднимала локальный сервер и взаимодействовала через него с пользователем. Это прямолинейное решение. И главное - само-в себе, то есть надежно, особенно, если сделать один монолитный .exe файл например.

А что даст запуск утилиты как plugin к Django, какие плюсы? Минус навреное в том, что нужно будетвозиться с настройкой вебсервера, и без этого вебинтерфейс работать не будет, но может и плюсы есть? В крайнем случае можно совместить подходы.

Спасибо за подсказку с websockets - это для обновления в реальном времени? На будущее пригодится.

Пока мне нужно просто передавать команды из браузера в программу (как параметры в консольных утилитах) и принимать назад из неё вывод данных (не знаю делать форматирование этих данных в самой программе или как-то на javascript это взвалить). Если есть что-то облегчающее эту работу (простейший вебинтерфейс) - было бы здорово.
#533 #1057500
>>1057490

>consoleapp --webgui --port 8000


python manage.py runserver

>А что даст запуск утилиты как plugin к Django, какие плюсы?


Полагаю ты не совсем понимаешь что такое Django.

В первом приближении без сокетов и с ожиданием stdout, можешь взять фласк, написать однин маршрут и одну форму на wtforms или даже чисто в шаблон ебнуть и не ебать мозгу.
#534 #1057525
>>1057500
Ну как локальный сервер запускать я знаю.

Мне нужны модули именно по взаимодействию программы с вебинтерфейсом и генерации этого вебинтерфейса (взамен Tk/Qt/etc окошек). Пока такой простой случай, то есть вместо обычных окошек - консольная утилита + веб-замена окошек.

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

МНе не просто какую-то веб-форму ввести, как в CMS-ках, а что-то вроде замены диалогов, таблиц и т.п. всё что позволяют нативные GUI окошки и ещё делать кастомный вывод в вебраузер но это уже я и сам могу генерировать
#535 #1057553
>>1057206
я уже решил
print(''.join(chr(int(i)) for i in input().split()))
#536 #1059783
Поясните за CPython. Мне рассказывали, что он конвертирует питоновский код в си, но гугл говорит, что CPython используется, когда в питоновскую программу надо вставить всего лишь часть другого кода, написанного на си.
Можно ли все-таки как-то программу, написанную на python автоматически сконвертировать в быструю сишечку?
#537 #1059949
>>1049766 (OP)
Совместим ли модуль Sci-0.16.1 для python 3.4 c python 3.6.2?
#538 #1060026
>>1059783
Конечно можно, просто все тупые и не додумались так делать, а сидят мучаются с тормозным интерпретатором.
#539 #1060086
Извиняюсь за нубский вопрос. Только начал изучать питон.
Как можно вставить в input значение текстовое из другого инпута. То есть
input('Как тебя зовут')
input('Привет, "имя", сколько тебе лет?')
pycharm ругается
#540 #1060103
>>1060086

> a = input('Как тебя зовут')


> input('Привет, ", a, ", сколько тебе лет?')

#541 #1060257
>>1060103
второй инпут тоже переменной должен быть. На выходе получилось: Привет,"а"сколько тебе лет.
#542 #1060360
Антон, посоветуй годных ресурсов с задачками по сабжу.
#543 #1060485
>>1060360
Если знаешь основы - гугл -> winapi documentation -> всю хуйню жуешь по очереди
#544 #1061662
>>1049766 (OP)
Чуваки, кто работал с subprocess.popen на маках из app? Такой вопрос, не видит доступных shell-команд, ввожу в нём dmidecode (проверил, он стоит, есть и в libraries самой app и даже уже в саму среду поставил из brew, то есть из консолечки ручками запускается нормально), так он отдаёт, что нет такой команды. shell=True стоит
#545 #1063503
>>1049766 (OP)
Питон 3.6.2. Пишу: "3.999(10*2)", а на экран выводит "399.90000000000003". Почему?
#546 #1063852
>>1063503
Потому что так работает плавающая арифметика, даун
Тред утонул или удален.
Это копия, сохраненная 22 сентября 2017 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски