Добро пожаловать в тред самого человечного и быстроразвивающегося языка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
>>1049766 (OP)А работки то в рашке по-прежнему нет.
>>1049766 (OP)Чутка проебался, вот ссылка на предыдущий треб, проститеhttps://2ch.hk/pr/res/1046284.html
>>1049770У нас и пых в моде, хотя за рубежом он не так популярен
>>1049775>хотя за рубежом он не так популяренОтчего же, кто-то же должен чистить сортиры писать лендинги.PHP за рубежом на 7 месте по популярности:https://tiobe.com/tiobe-index/
>>1049781А что было в 2011 и 2004, что питун так взлетел? Как на этот сайте считается популярность? Она совсем не коррелирует с количеством работы?
>>1049781Какой-то странный рейтинг, С и жава падают пиздецки как, а остальные языки не растут. Если с жавой еще более менее понятно, есть куда перекатываться, то КУДА УХОДЯТ С СИ? Да еще так массово.
>>1049782в 2004 вышел 2.4 с тучей нововведений https://docs.python.org/2/whatsnew/2.4.html
Бля, помогите с 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. Но что-то идёт не так.
>>1049846https://pastebin.com/6Chduftxдвач похерил звёздочки
names='Brad','Brend','Ann','Anus','Herold'ages=17,53,10D=dict(zip(names,ages))print(D)получаю: {'Brad': 17, 'Brend': 53, 'Ann': 10}Можно как-то заставить Питон не слать нахуй те имена, которым не хватило предметов из второго iterable, а проставить им None?
>>1049872Можно.
>>1049873Как?
>>1049874Воспользоваться модулем itertools
>>1049872zip_longest гугли
>>1049850Так? http://sqlfiddle.com/#!9/ec21d/10
>>1049875Погуглил. Прикольно.Тогда ещё вопрос. Вот в документации написано:'zip() Returns an iterator of tuples, where the i-t...'Почему так? Ведь она возвращает zyp type object. И почему это zip type object, а не список или tuple? В конце концов это iterable максимум, но никак не iterator.
>>1049877Да. Хотя вообще странно, может ли праймари ки быть не автоинкрементом ?Вот сама задачаhttps://leetcode.com/problems/delete-duplicate-emails/description/
>>1049878Ты видимо не понимаешь что такое итератор. А возвращает zip type для эффективности, в двойке там лист (или кортеж, не помню точно)
>>1049878>И почему это zip type object, а не список или tuple?Потому, что итератор универсальнее и меньше потребление памяти. >В конце концов это iterable максимум, но никак не iterator.https://wiki.python.org/moin/Iterator
Сап, ребяты, я хочу добиться нормального STDIN и STDOUTHelp meКак запустить процесс (cmd.exe к примеру или тот же интерпретатор питона) с возможностью записывать что-то в STDIN и читать результат в STDOUT?Че-то попробовал с subprocess и вот результат. У кого есть идеи или наработки?
>>1049886В питоне по умолчанию input читает stdin, а print пишет в stdoutЕсли тебе это мало, то импортируй их явно и почитай докиfrom sys import stdin, stdout
>>1049889ну ты жопой читаешь что-ли? грубо говоря надо скрипт который выпонял бы команды системной оболочки и возвращал ответ, я знаю что делает sys.stdout.write() input() и print() - это не то, было бы все так просто типа print(execute(input())) и циклом весь вывод читать и в сокет отправлять)))
>>1049889но нихуя такого нет, есть только subprocess который сначала дает ввести STDIN а уже потом отдает STDOUT.
>>1049766 (OP)Что желательно изучать, чтобы быстрее устроиться на работу?Без вышки.Шутка про php
>>1049894Жс/пых конечно, жил бы ты не в россии то над питоном можно было подумать, а так нет
>>1049894Эх, почти что эталонный вкатывальщик, если бы еще написал про зп от 100к, то можно было бы в палату мер и весов отправлять.
>>1049781>Отчего же, кто-то же должен чистить сортиры писать лендинги.>PHP за рубежом на 7 месте по популярности:Когда пытался в США найти работу как фрилансер, то основные заказы на пыхе были от всяких нубов установивших вордпресс и им нужен был некий скрипт за 10 баксов. Но чаще всего этот заказ уходил от меня к индусам, который предлагали делать тоже самое за миску супа. И америкоты на радостях соглашались не подозревая, что этот скрипт отвалится через 5 минут, а того индуса уже не сыскать.
>>1049783Рейтинг действительно странноват. Но тенденцию он показывает правильно, хоть и с погрешностью. Давно за этим рейтингом смотрю. Вот например я уверен, что swift популярнее ruby. Потому что swift прост как питон (это раз), и он приносит реальный хлеб сразу (это два). Буквально месяц обучения свифту и вы уже пилите игру под айфон.
>ЗАХЕР ВАМ ЭТОТ ПИТОН?СЕЙЧАС УЖЕ ВСЕ ПИЗДРЯЧАТ НА GOLANG, даже уже бабку показывают на Первом канале, которая осилила Go https://youtube.com/watch?v=_Z_k5G73ttk
>>1049890А если запускить cmd.exe с опцией /K ?
Я нихрена не понимаю в этих ваших CMS, но мне интересно - можно из Django сделать сайтик типа Booru или ImageBoard? Или оно как WordPress только для блого-подобных сайтов?
>>1049946Go - говно написанное самодурами для себя. Надеюсь, что загнется побыстрее.
Как с помощью блядского джанго орм сделать запрос вида select columnname2 from table where columname1 = 'value'
>>1049975Иди учи мат.часть.
>>1049980Заебало. Чувствую, хуйну запросом. Будет не очень красиво, зато просто и понятно.
>>1049983Напиздел. Вот так получилось:Table.objects.get(columnname2='value'])).columnname1
>>1049964ДЖАНГИСТЫ: ответьте на это.Насколько в Django сложно написать что-то не напоминающее блог или скроллинг-страницу-презентацию очередного фреймвока? Нужно будет поизвращаться или это легко сделать?
>>1050037Ты ебанутый? На джанге только блоги и пишут. На крайний вариант, имиджборды.
>>1050041Но блог и имиджборда совершенно разные сайты.И если можно имиджборду запилить - то почему нельзя какой-то обычный статический сайт?
>>1050067Тогда зачем тебе джанга?
>>1050067Для статистического сайта воспользуйся каким нибудь cms лучше
>>1050069Так вот я и пытаюсь взвесить. Как пошли Вордпрессы с Джумлами, так я сразу потерял интерес к вебдизайну. Ибо это не сайты.И мне интересно - Джанго такая же ограниченная, или ее можно использовать для нестандартных для CMS целей/сайтов? Может там кроме "добавления статей" в ленту есть еще что-то интересное?
>>1050091Как напишешь, так и будет, нынешняя джанга имеет почти все возможности ror, напримерЕсли хочешь совсем свободы, то посмотри в сторону фласка, там ты вообще все сам допиливаешь
>>1049782>>1049784В это время гвида в гугл перешёл. Я думаю с этим связано.
>>1050092А есть где-то примеры необычных сайтов на Django и Flask, чтобы посмотреть чего максимум можно добиться на них, оценить возможности?
>>1050097Что для тебя необычно? Если ты про оформление, то сейчас это зависит от жс свистелокНеобычное взаимодействие с бд? Необычная аутентификация? Необычный шаблонизатор?
>>1050097Блядь, джанга и фласк это вебфреймворки, а не смски, можешь извращаться с ними как хочешь. По-ходу ты сам не знаешь чего хочешь.
>>1050101Необычный для CMS интерфейс и функционал. То есть не блоги/статьи и не сайты-визитки со скроллингом, а что-то другое хотя-бы, но лучше интересное. Чтобы оценить возможности.>>1050102>вебфреймворки, а не смскиА в чем разница? ЦМС-ки вроде тоже со своими фреймвоками встроенными. Джумла например. Да, я не разбираюсь. В чем разница-то?
>>1050105>Необычный для CMS интерфейс и функционал.>django\flaskПосмотри хоть один демонстрационный видосик на ютубе по этим фреймворкам, ты похоже вообще не понимаешь что такое серверную логику
>>1050108Я так понимаю, что общее в том, как минимум, что CMS и эти "вебфреймворки" ведут базу пользователей, хранят статьи в базе и следят за сессией пользователя?А меня интересует, кроме зарегестрированных пользователей, работа с сайтом без регистрации, а также мой функционал. Вот например imageboard, или booru, или онлайн-редактор какой-нибудь (photoshop/GIMP/Word/др), или еще что-то помимо этих лент с новостями.
>>1050110Ну посмотри какой-нибудь скайсканнер, вот такое можно.
>>1050110>ведут базу пользователейМогут вести, а могут и не вести, как напишешь>хранят статьи в базе и следят за сессией пользователяКак напишешь, так и будет>онлайн-редактор какой-нибудь (photoshop/GIMP/Word/др)Это выполняется на клиентской стороне и скорее всего написано на жс, тут к бэк-энду вообще мало относится
пацаны, есть вопрос. скоро пойду вливаться в местную городскую тусовку по "спортивному" программированию, до этого сам сидел дома аутировал на python. так вот, собственно вопрос - как принято говорить у расеянских программистов "питон" или "пайтон"? а то подумают еще, что я деревенский.
>>1050116пифон
>>1050116Говори питухон или гвидабейсик, сразу поймут что ты парень не простой, в теме.
>>1050117>>1050119не ну я серьезно так-то
>>1050113Ok, но как с необычными сайтами? Вернусь к примерам с imageboard и booru.imageboard - быстрое обновление, интерактивность, деление на доски и треды (необычная структура для сайтов)booru - база изображений, тэги, много тэгов, тоже структура необычная.Такое запилить можно? На Flask? А на Django? И наскольо это геморройно. И чем, кроме базы пользователей, они помогут, по сравнению с созданием сайта с нуля?
>>1050121Серьезно - пийтфонНу если кратко - нельзя смешивать в одном предложении двая языка. Говори Пайтон, когда говоришь по-английски, и используй адаптированное Питон когда говоришь по-русски.
>>1050123благодарю
>>1050122Ты заебал. Сервер Pinterest написан на фласке, сервер Instagram - на джанге.
>>1050153Уже интереснее.А что кроме базы пользователей и статей в них есть, какие сервисы?
>>1050155Сервис удаленной ебли мамаш дебилов, которые задают тупые вопросы.
Как сделать список из нескольких других списков? К примеру, брать рандомное кол-во элементов и перекидывать их в другой список?А именноlist1 = ['a', 'b', '1']list2 = ['c', 'd', '2']И главный список (куда все стаскивается) должен выглядеть так:main_list = ['2', 'b', 'c']
>>1050161>Как сделать список из нескольких других списков?Просто без задней мысли берешь и делаешь.
>>1050159Тогда непонятно нахуй нужны, особенно в случае Instagram и Pinterest - зачем им были именно Flask/Django?
>>1050167У их разработчиков и спроси.
>>1049766 (OP)Хочу вкатиться в django. Какую версию использовать? Самую последнюю? Тут в гайде версия 1.8. Если я буду использовать самую последнюю версию, то у меня все будет работать?
>>1050161main_list=random.sample(list1+list2,random.randint(1,len(list1+list2)))
>>1050233>то у меня все будет работать?Не факт.
>>1050234Спасибо! Но я уже сделал свой костыльНе подскажешь, как вернуться к началу цикла if?Мне просто надо, что бы в пароле были цифры, большие и маленькие буквы
>>1050241continue
>>1050244Бля, я сдаюсь, короче.Надо запилить генератор пароля длиною в 8 символов, в котором обязательно должны быть цифры, маленькие и большие буквыhttps://ideone.com/z20OlX
>>1050261>>1050244Я там остановился на проверке наличия больших букв
>>1050261Так погугли епт, туча готовых примеров.
>>1050271Попробую еще раз.Кстати, сколько говнокода/10?
>>10502739/10
>>1050275Бля
>>1050275Вот как сделать - при не наличии цифры - сгенерировать пароль заново
>>1050280И при не наличии большой и маленькой буквы
>>1050280Плохой способ, не делай так никогда. Используй join.
>>1050261ящитаю, что самый охуенный вариант это сделать как на пике. Но теперь у меня у самого вопрос к другим анонам, почему после str(r) нихуя не происходит и Питон все равно выводит мой пароль как список? Кстати, тоже оцените по говнокоду.Мимо-другой-вкатывальщик.
>>1050287''.join(r)Спасибо, тоже попробую этот вариант
>>1050287Все, ещё догадался как сократить эти 3 одинаковых форов до двух.Рейт ми плиз.
Аноны! Нужна еще маленькая помощь. Есть примеры, и мне надо узнать, правильно ли я написал на питоне:1. a + b ( c / 2 ) https://ideone.com/d2OwGp2. (a^2 + b^2) % 2 https://ideone.com/k4HJop3. (a + b ) / 12 c % 4 + b https://ideone.com/3NO1lA4. (a - b * c ) / (a + b ) % c https://ideone.com/7oruUo5. | a - b | / ( a + b )^3 - cos(c) https://ideone.com/cOYWME6. ( ln(1+c) / -b )^4 + |a| https://ideone.com/P0zoCIЗаранее огромное спасибо!
>>1050360Блядь, я проебался с умножением, ебаная разметка
>>1050318Малаток>>1050291Сдается мне, у вас не случайно одинаковые задания в одно и то же время - не советую плагиатить, вычислят.
>>1050439Все возможно.>>1050287Это у тебя задание такое, или ты просто так сделал?
Анон, чем запись:dx, dy = -dy, dxотличается от записи:dx = -dydy = dxНа конкретно этом примере выдается разный результат https://ideone.com/f8Cthu
>>1050442Я просто тоже учусь и делаю любые примеры, которые вижу.
>>1050456Тем, что в первом случае значение dy станет равно -dx, а во втором dy станет равно -dy.
>>1050461>Тем, что в первом случае значение dy станет равно dx, а во втором dy станет равно -dy.фикс
>>1050461Как-нибудь можно миновать подобную запись с двойным присваиванием?
>>1050465Можно, введением 3-ей переменной, но зачем?
Нашел в своей мухосрани джуновскую специальность на джангу, пожелайте мне удачи на собесе
>>1050478Зачем желать удачи, человеку, который уже можно сказать устроился на работу.Удачи, няша ;3
>>1050478Ты бы еще у себя в кладовке чего нашел и гордился
>>1050481Спасибо>>1050483Я думал, что вакансии на питон-джунов есть только в дс/дс2 и думал следующем году понаехать
>>1050495Я сам джанго начал изучать недавно. Живу в дс2. Как думаешь, до января/февраля смогу вкатиться?
>>1050360Бамп!
Как при out of range списка, циклически переходить в начало?
>>10506061) сделать юзердикт со своим итератором2) while true и переменная в качестве счетчика-индекса, которая бы обнулялась, когда становится равна длине списка
>>1050679юзерлистфикс
>>1050679А можно просто взять cyclehttps://docs.python.org/3/library/itertools.html#itertools.cycle
Делаю задания из django by exampleВозникла проблема, когда я пытаюсь получить объект поста, то вылетает 404, если убрать все значения publish, то мы получаем объект, хотя код точь в точь, как в книжке, может бы ли это быть из-за того, что я использую версию 1.11, а в примерах 1.8 ?
>>1050710ну значит в базе нет записей с таким временем
>>1050714Хм, обновил дату в админке, все начало показывать
>>1050699Воу, спасибо! Выглядит просто шикарно
>>1049766 (OP)Аноны, нужна ваша помощь в слегка нестандартном виде. Можете подбросить мне своих гитхабов с проектами, небольшими скриптами, чем угодно, на питоне? Хочу научиться этому пресловутому "умению читать чужой код". Заодно зведу вам влеплю.
>>1050806https://github.com/search?l=Python&o=desc&q=python&s=stars&type=Repositories&utf8=%E2%9C%93
>>1050815У фласка больше звездочек, чем у джанги
>>1050819Ну он и лучше.
>>1050821Он как конструктор, после того, как с фласка на джангу пересел испытал огромное облегчение, там больше батареечек из коробки
>>1050815Ахуеть, редит на питоне
>>1050825Ага, а инстаграм на джанге.
Сап, анончики. Недавно начал изучать Python 3.Появилась идея создать свой первый простенький онлайн проект на Django для получения практических навыков и их закрепления.Для себя нарисовал примерное ТЗ:1. На главной странице кококо-лендинг с описанием функционала сервиса, тарифами(месяц, полгода, год) и большой кнопкой Зарегистрироваться.2. Клиент регистрируется с помощью email и пополняет баланс через агрегатор платежей типа Robo/Free/Inter-касса и т.п.3. В личном кабинете Клиент вводит некие данные в специальное текстовое поле. Например: "анекдоты про блондинок, анекдоты про женщин за рулем, анекдоты про Вовочку".4. "Клиент" оплачивает нужный ему период предоставления услуги. Например на месяц.5. Итог: в течение месяца, ежедневно, клиенту на почту приходит информация, которую генерирует мой скрипт. Например: "анекдоты про блондинок, анекдоты про женщин за рулем, анекдоты про Вовочку" соответственно.Ориентировочное количество клиентов: максимум 5000 в месяц.Вопросы: Как такое лучше всего реализовать? Что изучиать?Как бы делал ты, анон? Хотелось бы примерный алгоритм шаблон предстоящей работы.
>>1050870https://google.com
>>1050870django by example или djangobook
Чтобы выше написанное не прозвучало как "Анон, придумай за меня всё", поясню:У меня просто нет представления как создаются онлайн проекты. Пазл в голове не собирается.Пока мысли такие:В Джанго уже есть админка и встроенные штуки для регистрации/авторизации пользователей.Следовательно, там уже есть БД SQLite3. Её и надо будет изучать.Сделать отдельную БД, в которой будет указаны:1.Почта2.Дата регистрации3.Баланс$4.ДатаНачалаПодписки 5.ДатаОкончанияПодписки6.СколькоДнейОсталось7.ОпцииКлиента(в примере это темы анекдотов)Морду пилить с использованием Bootstrap. YOBA-дизайн не нужен, а вот адаптивность желательна. >>1050870 - кунАнончики, подскажите как бы Вы пилили подобное?
>>1050870>Как бы делал ты, анон?Нашел бы готовые решения.
>>1050882Ты вообще про джангу хоть что-то читал? Сдается мне что нет. Так вот пройди хоть официальный туториал, что бы впредь подобных дебильных вопросов не задавать.
>>1050882Пилю схему, пилю логику, пилю веб-парашу. В чём проблема?
Анон а как сделать что то вроде приложения с консолью под линуксы? Смысл такой что бы можно было запустить и остановить командой, а так же придумать как получать какую то диагностическую инфу через консоль во время выполнения приложения, а может еще счетчик выполнения запустить. Может логи выводить в эту консоль, допустим уровень дебага там настраиваешь. Настройки что бы какие то можно было менять командами определенными находу. Как это все делается?
>>1050936>что то вроде приложения с консолью под линуксы?Не понял, тебе нужно приложение в терминале или графическое приложение с отдельной консолью?
https://pastebin.com/KQtAHjF2На винде работает, на линуксе первые разы работало, потом стало падать с исключением из-за того, что пыталось выяснить порт у неподключенного сокета. Я предполагаю, что это потому что select засирает дескрипторы, а обратно не очищает, поэтому они все уже помечены. Т.е. насколько я понял, если это на сишке писать, там сначала должен быть FD_ZERO какой-нибудь, а потом уже select идти. А в питоне такого не нашел.
>>1051085Дебилизм какой-то. Перепроверил, google.ru сканируется. Изначально на нем и проверял, потом просто видимо стали блочить такие запросы. А с локалхостом почему-то не работает
Аноны, спрошу у вас, стоит ли брать ASUS UX303UA или б/у macbook 2015/2016 на те же 50к?
>>1051140>ASUS UX303UA>4 гб>i3 серии UБери макбук, там будет гарантия, что система не будет зависать несколько нет и жить больше 3 часов без розетки, а с этим асусом все грустно и вообще, лучше бы в вообще хв спросилА ведь когда то я купил ноутбук с топовой apu от амуды с 8 гб памяти за 28 тысяч, эх...
>>1050731Мда, но только если данных мало. А если много - то сохраненная внутренняя копия всех значений списка может весить слишком много. И тогда лучше самому зацикливать. Итераторы-то делаются, чтобы сократить расход памяти. А тут такой неожиданный поворот - сохранять весь список (вернее весь массив данных, которые может получают/вычисляют динамически) во внутреннем кэше. Спасибо хоть предупредили в доках.
>>1051268Напиши генератор тогда, самое логичное решение
>>1051268https://ideone.com/jQouStКак то так
>>1050952В терминале. Ну вот например как Астериск есть телефонная атс, там консоль своя запускается старт стоп можно сделать посмотреть какие то параметры.Я тут уже кой чего накидал за сегодня. Сделал просто скрипт отдельный запуска, он запускает в фоне другой скрипт, этот скрипт в /tmp/ создает файл, если он есть то не запустит - защита от дублирования запуска, если нет то создаст и запустит скрипт, и в циклах проверяет существует ли этот файл. Тоесть когда stop делаешь файл удаляется другой скрипт видит что файла нет и завершает аварийно работу. Наверное это пиздец колхоз какой то, но я ничего умнее не придумал, всякие киллы процесса что то пока сложно и нудно, а демона писать нет необходимости скрипт редко будет запускаться. Думаю для первого скрипта норм. Потом попозже скрипт выложу. Может чего посоветуете.
>>1050870пиши на пхп
>>1050915>про ... хоть что-то читал? Сдается мне что нет. >Так вот пройди хоть официальный туториал.Смешной совет анону в стиле /b/Чтобы узнать хоть что-то нужно прочитать всю документацию. Логично. А чтобы узнать что такое фильм нужно закончить автерские и режиссерские специальности.
>>1051290Если ты хочешь монолитное приложение - просто открой консоль и читай из нее пиши в нее что хочешь. И параллельно делай какую-то работу.Если хочешь сложнее что-то - делить приложение на управляющий и работающий процессы, - то или запускай другую программу из своей и управляй ей имитируя ввод пользователя, или порождай другой процесс и общайся с ним сообщениями или через файлы.
>>1051089Гугл вообще любит блочить.
>>1051140Лучше эти 50тыр пропить
>>1051166>>б/у macbook>макбук, там будет гарантия, что система ... будет ... жить больше 3 часов без розеткиА слово б/у тебя не наводит на размышления, что с батареей уже не все в порядке?
>>1051707>А чтобы узнать что такое фильм нужно закончить автерские и режиссерские специальности.Если ты собрался снимать фильм, то это явно будет не лишним.
написал сервер на asyncioкак передавать данные между разными клиентам, которые сохраняются в памяти процессато есть один клиент, подключился, передал значение - оно сохранилось в памяти процессавторой подключился - получил его
>>1051731В переменную положил - достал. Но в текущей скриптопараше так не принято делать.
>>1049766 (OP)Скачиваю какую-нибудь либу через pip для одного юзера, а у другого такой либы нет. Как все синхронизировать, без костылей, вроде симлинков? Питон глотает место на диске, как удав.ОС - линух. Гугл молчит.
>>1051716А если только узнать - нужно ли мне это? Тоже сначала диплом режиссера получить, а потом решать надо было это или нет?>>1051739А как-то сообщениями передавать можно?
>>1051764Ну если найдёшь Акку для питона, то можно. Но обычно для этого ставят Redis, ZeroMQ и тому подобную срань.
>>1051711За год с батареей макбука ничего не случится, он все равно будет жить дольше без розетки, чем этот асус
>>1051751Ставь пакеты в систему. Либо через линукс менеджер пакетов (apt), либо через питон, но в систему (sudo python3 -m pip install ...). Если используешь env-ы, то никак, ибо env-ы для того и созданы, чтобы изолировать пакеты.
Как вернуться в начало блока try-except, к примеру:Надо ввести число, которое должно быть не меньше 5 и введенные данные должны быть числом. Если что то не так, опять ввести число
>>1052000goto
>>1052000while True:____a = input()Остальной код
>>1052023Да, уже додумался, спасибо
>>1052000Эх, а вот если бы в программах были какие-то блоки, например, выполняющиеся ЦИКЛИЧЕСКИ, хмм...
Пистоны, помогите, пожалуйста.Надо подсчитать количество символов в текстовом файле.i=0j=0for 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+=1print(i, j)Для файла пикрилейтед выдаёт i=3, j=0, что не так.И ещё вопрос: у лутца в книге пишется что лучше всего построчно итератором считать если попадутся очень большие файлы. Как изменить код для этого?
>>1052102у тебя уже идет просмотр документа построчно, т.к. открытие файла в цикле forИ ты сделал хуйню, когда проверяешь наличие символа в новом open'еИ для проверки наличия символа есть метод .count или можешь заюзать регуляркиУ тебя elif, когда в не выполняется хоть одно из условий тернарник завершается
>>1052111Ага, спасибо.>И ты сделал хуйню, когда проверяешь наличие символа в новом open'еТ.е. просто написать if 'с' or 'С' - без 'open'?Или если учитывать это>И для проверки наличия символа есть метод >count или можешь заюзать регуляркиlist.count('c' and 'C')>У тебя elif, когда в не выполняется хоть одно из условий тернарник завершаетсяПоставить continue?
>>1052115>Т.е. просто написать if 'с' or 'С' - без 'open'?Пиздос блядь, иди лутца дрочи, пока не дойдешь до тернарников>Поставить continue?Ух блядь, ты куда лезешь нахуй, какое тебе нахождение символов в файле, иди синтаксис учи
есть ли тут аноны с укростана? много будет ебли с получением первой работы web(django/flask)?(знания Python есть)вакансий не так уж и много особенно джунов, там лютая давка или как?в моем городе (Одесса) вообще нихрена нет на, ни стажировок(один .net и жаба, хотя есть постоянная интернатура с++ sic!). Стоит ли смотреть в сторону других технологий с таким раскладом?
>>1052120И на том спасибо.
>>1052121>в моем городе (Одесса)Земляк в треде>Стоит ли смотреть в сторону других технологий с таким раскладомА так хочется стать погромистом? Если цель только в наличии работы, то даже тут есть дохуя контор, куда требуются офисные планктоны
>>1052121Пифон вообще не для постсовка, тут еще и кризис ебанул и нужны готовые спецы, а не джуны, которых еще учить надо
>>1052130перешел на 3 курс иб, С++ отложил(крафтил йобы в qt, утилиты всякие для облегчения жизни) из-за низкого кол-ва вакансий для июней, есть C# опыт на уровне пачки курсачей, но питон приятней как-то, вот и раздумываю. Я и так и так планирую быть погромистом, осталось выбрать технологию которую изучу как изучил кресты(лол) и пытаться куда-то прорваться, но как выбрать чтобы не обосратся и себя не потом не доканывать, эх
>>1052138>крафтил йобы в qt, утилиты всякие для облегчения жизниА почему не в быдлере? Как по мне, там удобней>но как выбрать чтобы не обосратся и себя не потом не доканыватьВеб. Был, есть, и будет всегда.
>>1052140я о языке, не точу джангу только потому что не знаю какая будет ситуация через год другой, да и та что сейчас меня пугает, июни не нужны практически, вот и спрашиваю мнение местных, стоит ли в укр вкатывать на питон(веб) или смотреть на c#(веб) или что-то еще, может ли ситуация поменяться. Просто когда на всю страну 20 вакансий на жунов(если наберется) то это очень пугающая цифра
>>1052140тыкать формы можно как там так и в qt, разница в том что знания билдера не имеют спроса вообще, в отличии от qt, в котором ко всем есть qml, на котором можно делать ui куда проще и красивей чем стандартные контролы, хотя qt шные хоть можно без издевательств переделать в плане оформления, а в билдере хрен, а про qt framework вообще молчу, большая часть работы зачастую сделана за тебя
>>1052143Use PHP.
>>1052143Таки да, тебе подсказали >>1052145Пехепе, джаваскрипт, все дела. Посмотри, какие там фреймворки надо учить, и учи.Хотя я сам после плюсов и питона не перекатывался бы, ибо просто не выдержал такого пиздеца
>>1052145после сисярпа и пифона, для меня это закончится плохо, лучше уже сисярп, по нему вакансий больше чем по жабе
>>1052148>Хотя я сам после плюсов и питона не перекатывался бы, ибо просто не выдержал такого пиздецато то же
Помогите со скриптомХочу сделать типо что-то словаря с айпино как сделать, что бы от определенного число до определенного, айпи прибавлялись и показывались типо output186.25.36.29186.25.36.40186.25.36.41Думал через while или from, но выходило это:сриптi = 185d = 241c = 250f = 200while i and d and c and f!= 256: i += 1 d += 1 c += 1 f += 1 print(i,d,c,f)output186 242 251 201187 243 252 202188 244 253 203...239 295 304 254240 296 305 255241 297 306 256
>>1052153for i in combinations(range(1,255), 4):print('.'.join((str(y) for y in i)))
>>1052153https://docs.python.org/3/library/ipaddress.htmlipaddress.ip_network тебе наверно это нужно?
Гайз дайте совет ( или пошлите нахуй)Я напишу что имеем на данный момент. С уровнями знаний.1)Python3 (базовый уровень, стандартные либы, virtyalenv развернуть, классы написать)2)Django>=1.9 ( тоже базовый +- могу блог, мини магазин какой написать, регистрации пользователей с правами и шлюхами)3)SQL(низкий уровень, аля SELECT* FROM tabel ну это я подтянуть за пару дней смогу, главное понимание принципа)4) Сопутствующие навыки HTML5, CSS(Bootstrap но могу и на голом, я бы оценил как средний навык но не стану)А так же git(учил для себя), Ubuntu(на уровне тупо пользователя), Pycharmну и на конец English-elementary литру читаю со словариком короче.Так вот к чему я написал эту прастыню никому не нужной хуйни.А хочу узнать у опытных djangistov достаточный ли это уровень что-бы искать работу джуна? или на что-то налечь основательно(делитесь стори какой уровень был у вас). Стоит ли уделять много внимания портфолио какое не какое? или на джуна всем пофик что он там начирикал?P.S. тут вопросы на собеседованиях нигде не пробегали? На реддите почитал так там хуйня какая-то для детей.
>>1052153IPv4 - это 32 битное число, представляемое для удобства в виде 4 октетов. Тебе достаточно перебирать обычное число, а потом либо либой выше превращать его в строку, либо самостоятельно разбивать на октеты для пользователя
>>1052189Походу это. Буду его изучать >>1052183Спасибо, не знал про combinations>>1052196Не знаешь где про эти октеты можно прочитать?
>>1052183>combinationTraceback (most recent call last): File "...", line 1, in <module> for i in combination(range(1,255), 4):NameError: name 'combination' is not defined
>>1052217Ты бы погуглил что это за функция и откуда ее доставать
>>1052217>>1052183import itertoolsfor i in itertools.combinations(range(1,255), 4): print('.'.join((str(y) for y in i)))
>>1052220>>1052218>>1052183itertools тут не помогут
>>1052222Ну делай for с 3-х кратной вложенностью, хули
>>1052228Я буду юзать ipaddress. Там можно айпи переделать в 32 бита, и потом простым циклом прибавлять.
>>1052230А диапазоны использовать не проще?
>>1052231Возможно, но мне так неудобно.
Почаны, а где найти подробные гайды по PyQt5?На питонворлде кажись устаревшее гауно.
>>1052315Нигде, подробные есть только для крестов.Правда есть книжка Прохоренок Н., Дронов В. - Python 3 и PyQt 5. Разработка приложении - 2016, он она так себе.
>>1052322Нихуя, вот регулярно-обновляемый ресурс.http://zetcode.com/gui/pyqt5/
Ап
>>1052327Слишком тухло, только самые основы в туториале.
какнул кекнул
и второй разик
>>1049909>swift прост как питонSwift - это фрактал ебанутого синтаксиса. Самый сложный и поехавший синтаксис из всех актуальных языков.ИМХО: python > ruby > php > java > javascript > c++ > моча > говно > c# > червь-пидор > swift
>>1052532Ты Go забыл.
>>1052532Вполне приличный синтаксис. Может ты просто неосилятор?мимо-скала-господин
>>1052580>говноне забыл же
>>1052195бам вопросу, питонач вы моя семья. Для меня важно ваше мнение.
>>1052637Достаточный, иди устраиваться. Если на собеседовании будут доебываться, отправляй их в этот иит тред.
>>1052642эх, вам бы все шуточки шутить :(
>>1052195> вопросы на собеседованияхТюремные загадки гугли.
Подскажите, как отобразить переменную в классе class Se: i = 1 def Print(self): print(i)Se.Print()
>>1052767class Se: i = 1 def Print(self): print(i)Se.Print()
>>1052767
>>1052767__str__ уже не в моде?
>>1052771Traceback (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'
>>1052782a = Se()a.Print()и юзай стрdef __str__(self):return self.ia = Se ()print(a)
Питон меня просто доебал, не могу смотреть на него больше. Три года на нем пишу уже. Куда перекатываться?
Нихуя не работает, ничего не понимаю, все в пизду.https://www.youtube.com/watch?v=6HSWn0kEb80
>>1052805В джява.
>>1052805си шарп
>>1052808>>1052811Очень смешно. После питона на таких ограниченных языках только мазохист писать будет.
>>1052812ну так а ухли ты тогда выебываешься, пиши дальше на питоне, поменяй сферу деятельности, может тебя не питон заебал ?
>>1052767https://ideone.com/4o7K0jhttps://ideone.com/G4oV7MА теперь съеби и прочитай хотя бы туториал на сайте питона.
>>1052817Какой ты умный! Можно я у тебя отсосу?
>>1052821Нельзя, ты слишком глупый.
>>1052812Тогда Scala.
>>1052823Ну я пососу твою умную писечку и стану чуточку умнее. :3
>>1052824Что там делать без бэкграунда на джаве? Нечего.
Каким модулем можно читать метаданные картинки\видео, нашел hachoir-metadata, но он выглядит абсолютно мертвым (2010 - последний апдейт)
БОЛЬШЕ ВОПРОСОВ ТРЕДУ ВОПРОСОВ1)>>1052833Что такое метаданные? Не совсем по Питону, но все же. Загуглил. Значит, допустим, у меня есть видео 2ch_cheese_pizza.webm, а его дата создания, вес в Мб, качество - его метаданные?2)Вы знаете документацию по cmd шинды, или на чем ты вы там сидите? Это нужно для создания каких-нибудь консольных приложений? Например, если я хочу вызывать консольное окно определенных размеров, где ввод пользователя осуществляется в самой нижней строке (курсор всегда там), выделенной серым, а результаты занимают всю остальную часть. Такое приходится делать и нужно ли оно?2.1)Допустим, я хочу сделать приложение с консольным интерфейсом и там должна быть возможность очистки экрана. Мне нужно найти функцию очистки экрана Питона, или придется использовать subprocess.call('cmd') и использовать встроенную туда cls? 3)Вообще, существует типа основной терминал? То есть, когда я запускаю какую-нибудь обычную программу Питонскую (без суброцессов) и когда я вызываю через субпроцесс cmd, они же выглядят одинаково - черные окошки, с разным набором функций. Есть функции и методы управления этим дерьмом? Очистка экрана, изменение его размеров, цветов, вывод в произвольных местах и все такое?
Что почитать про ООП на питоне?
>>1052829Манямир.
>>1052840Можно документацию почитать. Можно книги по ООП не в питоне. Не видел хороших книг по ООП именно для питона и этому есть причины. Питоновский ооп сильно ограниченный в сравнении с другими языками.Вот неплохая статья, она неплохо объясняет почему всякие классические паттерны в питоне не так часто используются (потому что они уже заложены в дизайн языка).
>>1052844https://www.toptal.com/python/python-design-patterns
>>1052844>Питоновский ооп сильно ограниченный в сравнении с другими языками.Ну-ка расскажи нам про "ограничения", лол.
>>1052839> Что такое метаданные? Не совсем по Питону, но все же. Загуглил. Значит, допустим, у меня есть видео 2ch_cheese_pizza.webm, а его дата создания, вес в Мб, качество - его метаданные?Да, но обычно имеется в виду продолжительность видео, ширина-высота, кодек, битрейт.> 2)Вы знаете документацию по cmd шинды, или на чем ты вы там сидите? Это нужно для создания каких-нибудь консольных приложений? Например, если я хочу вызывать консольное окно определенных размеров, где ввод пользователя осуществляется в самой нижней строке (курсор всегда там), выделенной серым, а результаты занимают всю остальную часть. Такое приходится делать и нужно ли оно?> 2.1)Допустим, я хочу сделать приложение с консольным интерфейсом и там должна быть возможность очистки экрана. Мне нужно найти функцию очистки экрана Питона, или придется использовать subprocess.call('cmd') и использовать встроенную туда cls?> 3)Вообще, существует типа основной терминал? То есть, когда я запускаю какую-нибудь обычную программу Питонскую (без суброцессов) и когда я вызываю через субпроцесс cmd, они же выглядят одинаково - черные окошки, с разным набором функций. Есть функции и методы управления этим дерьмом? Очистка экрана, изменение его размеров, цветов, вывод в произвольных местах и все такое?Curses.
Кстати поясните за Лутца: его надо обязательно прочитать каждому, или лучше читать документацию?
>>1052847Нет модификаторов доступа (считай что инкапсуляции нет), нет интерфейсов.Тут можно придираться к словам, типа он не ограниченный, а наоборот более свободный. В любом случае, он не такой как везде и половина ООП паттернов тут неприменимы, да и не нужны.
>>1052853>Нет модификаторов доступа (считай что инкапсуляции нет)По сути ее нигде нет, если очень хочешь, то в любом языке можно приватный атрибут получить
>>1052853>Нет модификаторов доступа (считай что инкапсуляции нет), нет интерфейсов.Одни и те же мантры, даже обоссывать лень, и так уже сотню раз эти аргументы окропляли уриной. Давай, скажи что соглашение об именовании не тру
Как выглядит структура проекта, в котором есть сайт и некоторые бэкграунд приложения? Так будет хорошо?-Standalone App 1-----__init__.py-----tasks.py-----whatever.py-Website-----settings-----manage.py-----whatever-Standalone App 2-----whateverЗачем многие пихают всю хуйню дополнительно в папку src?Лучше ли разделить сервисы от сайта на другие ветки или проекты и связывать гитовым импортом?
>>1052858Во хули ты такой агрессивный? Я тебе не говорю, что питон говно, я говорю что ооп в нем ограниченный. Кучи фич нет -> ограниченный. И ты обратное никак не докажешь.
>>1052864На метаклассах подобное говно на раз-два делается
>>1052860>Так будет хорошо?Да.>Зачем многие пихают всю хуйню дополнительно в папку src?Кто эти многие? Какую именно хуйню?>Лучше ли разделить сервисы от сайта на другие ветки или проекты и связывать гитовым импортом?Если они большие и слабосвязанные, то да.
>>1052864>Во хули ты такой агрессивный?Да потому, что это уже сотню раз обсуждали.>я говорю что ооп в нем ограниченный. Кучи фич нетПримеры ограничений? Каких фич нет? Давай конкретно, по пунктам.
>>1052865И что, ты доказал, что ооп в питоне нормальный? Нет.ООП требует отвечать некоторым принципам. Питон им соответствует только с огромной натяжкой и закрывая глаза на всякую хуйню. Да, можно делать все тоже самое через метаклассы, через миксины, через дескрипторы. Можно даже намного больше сделать. Но это и значит, что язык не в полной мере реализует ограничения, накладываемые ооп.ООП в питоне, на уровне языка, не реализовано в полной мере в соотвествии с принципами ооп. Оно ограничено реализовано. Это не плохо, это даже хорошо. Но спорить, что тут полноценный ооп - это надо совсем упоротым фанатиком быть.
>>1052875>ООП требует отвечать некоторым принципам. Принципы в студию.
>>1052880Что еще? Может погуглить за тебя, или книги за тебя почитать? Этому даже в сраных вузах учат.
>>1052875>ООП требует отвечать некоторым принципамОдному. Позднее связывание, или более строгий вариант -- возможность обработки произвольного сообщения. Что питон, между прочим, позволяет сделать. Все остальное -- додумки и маркетинг
>>1052888Нет манька, пиши принципы, чтобы потом ты маневрировать не начал.
>>1052893Ты это откуда взял? Сам придумал?
>>1052920Почему? До меня это уже давно придумали, я просто систематизировал то, что было в моей голове
>>1052951Откуда ты взял, что позднее связывание - это единственный принцип ооп? Эти понятия вообще никак не связаны.
>>1052958Алана Кея почитай, например
>>1052893>>1052962Почитал, понял о чем ты. Теоретизирования на тему что такое идеальное ооп. Так и эрланг можно ооп языком назвать, но большинство же так не считает, и это не так.Я писал про ооп в том смысле, в котором оно сейчас существует, в жизни, а не в теории. Как бы грустно не было, но сегодня "говорим ооп, подразумеваем джаву, говорим джава подразумеваем ооп".
>>1052958Я правильно понял позднее связывание?
Вот есть вакансия. > Python DeveloperТребования:> Python 2+ года> Способность разобраться в дизайне архитектурно и алгоритмически сложных приложений, написанных на языке С.Каким боком там питон? И что там на нём могут делать?
>>1053007Писать тесты, очевидно.
>>1052111Можно ли оптимизировать эту х-ню надо подсчитать количество определённых букв обоего регистра на латинице и кириллице в текстовом файле, если да, то как:l_letters = 0k_letters = 0for 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 + dprint(l_letters, k_letters)Для больших файлов выдаёт memory error
>>1053009mmap
>>1052850Бамп вопросу
>>1053009>for line in open('J:/test.txt', encoding="utf8").readlines()Ты так ничего и не понял
>>1053014Возможно. Я только учусь.Но хотя бы код иногда работает.Что не так-то?
>>1053015> eager reading
>>1053015Я тебе уже говорил, когда ты итерируешь open, то файл и так читается построчно, когда ты используешь readlines, то ты загружаешь весь файл, разделяешь его по строкам и заносишь в списокОт того и ошибка памяти, я помню, что лутц специально приводил такой пример, что бы избежать ее при чтении больших файлов
>>1053018И да, зачем ты делаешь count два раза в одной и той же строке?
>>1053018>когда ты используешь readlines, то ты загружаешь весь файл, разделяешь его по строкам и заносишь в списокСпасибо большое.Выкинул и символы в файле подсчитались.>И да, зачем ты делаешь count два раза в одной и той же строке?В смысле? Символы верхнего и нижнего регистров для кириллицы и латиницы. Или речт не об этом.
>>1053027> В смысле? Символы верхнего и нижнего регистров для кириллицы и латиницы. Или речт не об этом.Нет, все нормально
>>1053027>l_letters = l_letters + a + bl_letters += a + b
>>1053030Спасибо, уже переписал.
>>1053031И можно сразу count в суммировании писать, а не заносить отдельно в a и b
>>1052850Мне сказали, что лутц - гей, а Саммерферд - герой. Читаю его.
>>The argparse module makes it easy to write user-friendly command-line interfaces.Разве парсеры не для анализа вообще всего? типа сайтов, текстов, другой информации. Почему тогда сделали модуль только для командой строки?
>>1053051upd: В книжке говорится изучить optparse, но в документации сказано, что тот модуль больше не разрабатывается и нужно юзать argparse. Лучше слушать документацию, да?
>>1053051> argparse> Разве парсеры не для анализа вообще всего?> arg parse> Разве парсеры не для анализа вообще всего?> argument parser> Разве парсеры не для анализа вообще всего?
>>1053008Что по этому поводу почитать можно?
Анон а try except вложенные в друг друга это нормально?trytrytryexceptexceptexceptКак то так.Или сделать один try и потом несколько except и описать действия? Он же полюбому на сбой во внутреннем цикле сработает?
>>1053128try:except ПервыйВидОшибки:except ВторойВидОшибки:...
>>1053140А если там внутри вложенный цикл который должен повторится при определенном исключении (pass стоит)? Тогда допустимы вложенные try except?try:(тут происходит запись в sql) Соответственно отлавливает ошибки с этим связанные.Но тут вот внутри происходит еще один цикл который данные получает обрабатывает и дает на запись уже в sql и тут тоже надо сделать try except что бы скрипт не вылетел с ошибкой а просто ругнулся в логи (для последующего разбирательства что мешало выполнить) и продолжил через pass работу.for i in list:try:except:pass(запись в лог)except:passЕсли так сделать под одним try то он по новой запустит же а не продолжит.
>>1053128Такое плохо читается. Без реального кода сложно сказать, что там можно сделать. Но попробуй разбить логику небольшие функции внутри которых делай try except. Еще можно своих эксепшенов наделать. Тогда будешь в функциях отлавливать все эксепшены а наверх кидать свои. Как бы завернуть все эксепшены в 2 своих, например. При одном падать, при другом в лог писать и ничего не делать, или какая там логика у тебя.
>>1053128>>1053151Но лучше скинь свой код.
Господа, а что почитать/посмотреть, если я умею программировать уже лет 25 как да, я старый, в том числе на питоне могу извергать быдлокод и регулярно это делаю, но хочу повысить свой питоноскилл? Я никогда не читал никакую книгу именно по питону, пишу на нём как на квикбейсике + стэковерфлоу, конечно же. То есть мне пробежаться по фичам тоже нужно, 99%, что я просто не в курсе, что в питоне вообще есть. Читаю быстро, в английский могу.
>>1053168Effective pythonFluent python
>>1049846Лол, бля, достаточно unique index повесить на колонку с имейлом и игнорировать ошибки. Там, конечно, будет идти не по возрастанию PK, а в порядке физического расположения, но, в общем-то, в твоем случае это наверняка не было важно.
>>1053168>умею программировать уже лет 25Небось с 0 лет в ойти вкатился?>Я никогда не читал никакую книгу именно по питону, пишу на нём как на квикбейсике + стэковерфлоу, конечно же. Хуя, ебашить 25 лет и даже не пытаться в должной мере освоить навык? Это как-то странно.>То есть мне пробежаться по фичам тоже нужно, 99%, что я просто не в курсе, что в питоне вообще естьДядь, ты с такими вопросами, лучше в гугл иди.
>>1053197Уверен, что он просто на каком-нибудь дендиговне в детстве в кубасике рисовал, потом на разных бейсиках писал всякое говно под свои нужды, а теперь считает, что умеет программировать. Я с таким пассажиром как-то работал, но это было семь лет назад, так что я думал, что они закончились.
>>1053197с 9-10 на бейсик спектрумовский. мне хорошо за 30, угу...>>1053200у меня C/C++ большую часть ололо кареры, эмбедеды и вот это всё. за деньги на бейсиках я никогда ничего не писал, ну кроме каких-то курсовых на VBA в институте, да.
>>1053202Эмбед и байтоебля мало общего с Питоном имеют, поэтому суть мало меняется, тебе твои годы опыта сэкономят неделю вкатывания. Говорю на правах реверсера, съебавшего в дивный мир крудошлепской скриптопараши. Такие вот дела.
>>1053197>>1053200ну и в целом какой-то пиздец, я сюда не возрастом повыёбываться пришёл, а совета спросить. эйджисты хуевы лол.>>1053187спасибо, второе судя по оглавлению точно подходит>>1053203крудошлёпство меня мало интересует, хотя свою дозу php+js я сожрал. мне интересны базы данных, data science и вот это всё. c sql я тоже вполне норм.
Помогите с джангойЕсть модель с imagefield, когда удаляю ее объект, то сам файл остается на сервере, как удалить его вместе с объектом?
>>1053205>а совета спросить.Так с твоих слов ты опытный, а не юный вкатывальщик, у которого из ойтишных знаний только про зп в 300кк/нс. Мог бы и сам в гугле все найти без проблем. Я думал, что у байтоебов с этими очевидными вещами дела обстоят хорошо, а вон оно как оказывается.
>>1053208Как-то так. http://bfy.tw/Dcz4
>>1053168Python CockokBook
>>1052850Желательно, и было бы хорошо уже знать пайтон на нубском уровне. Как по мне, Лутц годно написал про ООП, а такие вещи как функции, когда я про них прочитал, что что он написал то не только ничего не понял но и запутался в том что знал
>>1053264А что лучше Саммерфилд программирование на pyhton 3 или лутц?
>>1053410Dive into python
http://www.robotstxt.org/faq/legal.htmlhttps://stackoverflow.com/questions/999056/ethics-of-robots-txtИгнорируешь ли ты robots.txt, анон?
>>1053487Что за ебанутые вопросы? Ты упоротый шоле?
>>1053487Представь, что твоя мамка вышла на улицу голой. Написав на сиськах и жопе: "Не смотри сюда". Смогли бы прохожие прочитать эти надписи?
>>1053490Нормальный такой вопрос, который задает любой белый человек впервые столкнувшийся с невозможностью скраулить сайт из-за ограничений в robots.txt.>>1053496Там конкретный протокол описан, десу. Уже прецеденты за его нарушение есть.
>>1053499>Уже прецеденты за его нарушение есть.Ты из какой страны пишешь то?
>>1053502Ну так в европке отдохнуть тоже охото.
>>1053504Обмажся впн-ом или проксями.
>>1053506Разве владельцы впн и прокси не сдают тебя по первому требованию? Если обмазываться, то i2p, но это бессмысленно и беспощадно.
>>1049766 (OP)Реквестирую путь джуна.
>>10535101. переходишь по этой ссылке https://2ch.hk/pr/res/1052010.html2. читаешь шапку треда3. составляешь резюме4. устраиваешься джуномПоздравляю, ты джун.
Еще один тупой вопрос по джангеНужно сохранить дату создания загружаемого файла, при обычном сохранении она становится равна дате загрузки, как вытащить ее и присвоить?
>>1053514спасибо, но там другой ЯП
Тут такие няши-умняши сидят. А я такой тупой дремучий петуч. уууу
Мыслители, помогите. Есть один цикл, который должен записывать прокси, в неизвестном количестве. Как я не старался, циклы выходили убогими, и не рабочими. Можете мне объяснить, как мне сохранить переменную, что бы она не перезаписывалась со следующим циклом? Вот сам цикл: 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: breakprdstr()*Пытался в начале узнать сколько будет прокси, чтобы хоть как-то упростить скрипт.
>>1053525Но этот вариант более реальный.
>>1053526Да, хуево быть тобой.
>>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()
>>1053526Тут много таких петучей. Не бойся, продолжай изучать ;3
>>1053510У меня тестовое задание такоеСоздать каталог изображений с возможностью загрузки, удаления, редактирования описания, названия и даты создания, а так же поиском по атрибутам,а так же фронтенд к этому (я на бутстрапе сделал, пиздец удобная штука)Сделал все кроме сохранения оригинальной даты создания>>1053520Бамп вопросу
>>1053533>У меня тестовое задание такоеСколько времени дается?
>>1053567Эйчарка позвонила вчера в 7 часов вечера, спросила про успеваемость в вузе, сколько могу присутствовать на работе (в вакансии было указано про возможность совмещения с учебой), про гитхаб, личные достижения и в 8 часов выслала задание, нужно сделать до 30 (включая этот день), отправлю либо завтра с утра, либо сегодня, если найду способ >>1053520
https://stackoverflow.com/questions/15611605/how-to-pass-a-user-defined-argument-in-scrapy-spiderОхрененная штука из под капота скрапи. Можно срать не снимая свитер.
>>1053520>>1053578Ну так дата создания и должна быть равной дате загрузки. Или на клиенте дату файла доставай и пересылай в запросе отдельно.
>>1053590Это значит жс юзать нужно? Какую нибудь готовую либу не подскажешь? А то с ним не очень дружу
>>1053593Зачем тебе это? Разве у тебя в задании такое условие стоит? Или ты сам себе задачи придумываешь?
>>1053533>>1053578>Создать каталог изображений с возможностью загрузки, удаления, редактирования описания, названия и даты создания, а так же поиском по атрибутам,а так же фронтенд к этомуМожешь код показать?
>>1053594Контора работает с копирайтом фотографийВ условии сказано, что нужно иметь возможность изменять дату съемки фотографии, хотя может просто задание некорректно сформулировано
>>1053597Думаю, что можно попытаться вытащить exif'ы, но они есть не на всех картинках
>>1053597>Контора работает с копирайтом фотографийКакая контора? Вымышленная в задании или та, в которую ты устраиваешься?
>>1053606В которую устраиваюсь
>>1053608Код скинь.
Ладно, сделаю поиск и добавление через exif>>1053613https://github.com/JojoBizarov/test_catalog
>>1053615Так а по другому и никак, без exif-а это смысла не имеет, дата создания файла легко может не совпадать с датой съемки и к ней привязываться глупо. Хотя и exif тоже не 100% достоверность.
Новый логотип ютуба похож на дефейс.
>>1053615Зачем гитхаб спалил то? Залил бы zip на ргхост.
>>1053622Ну мы же не в /b, что бы диванонить, да и нет у меня там ничего особо, только мусор по гайдам
>>1053034Спасибо.
Как запустить команду в виртуальном окружении соседней папки?
>>1053695Ебать, ты сейчас такую хуйню творишь, что просто пиздец.
нахуя вы сделали 2 тредаВОРВАЛСЯ НАХУЙ.Смотрим пикрелейтид. Есть задание, есть пока только реализация парсера и даже она не закончена.Ответьте на мои вопросы плз:1)Как убрать пустые строки между usage,description и help-message? 2)Как вообще изменить usage и help, чтобы 'usage' было с большой буквы (как пример в книге), а в help-e вместо 'optional arguments' было 'Options'. Ну и order поправить надо.ХЕЛП МИ ПЛИЗ.Вот ещё ideone ссылка на всякий: https://ideone.com/EMNqoN
>>1053714>нахуя вы сделали 2 тредаГИЛ убрали.
>>1053709Хочу кнопочки нажимать в браузере, а не пердолиться с ssh. Чуваки вообще пилят консоли в браузере через canvas, онлайн интерпретаторы и компиляторы.Как это вообще делают?
>>1053714Для тебя это будет сложно.
>>1053722Ебать, и для этого ты решил джангу использовать? Да еще и таким извращенным способом.
>>1053724А что ты предлагаешь?
>>1053729https://scrapyd.readthedocs.io/en/latest/ Читаешь, изучаешь апи, берешь простой веб фреймворк типа bottle ебашишь на нем страничку, и дергаешь апи скраппи через нее.
>>1053732Зачем bottle, если все можно сделать в django? У меня помимо запуска спайдеров, еще другие штуки будут. Дергать во view? Покажи мне команду запуска паука в scrapyd.
>>1053762>Покажи мне команду запуска паука в scrapyd.А код за тебя не написать? Я тебе ссылку дал, там есть раздел апи, в нем вся нужная тебе инфа.
>>1053777Lucky трипл, ты сам читал этот апи? Там про запуск сотен спайдеров одновременно говорится тащемта.
>>1053723Почему? Ты можешь дать развернутый ответ с пояснениями как человек, а не как ебло?
>>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.Такой петушне надо ссать в ебло не задумываясь.
>>1052839>Что такое метаданные?Метаданные - это сопроводительные данные к чему-то.То есть описывающие объект данные.
>>1053830Считаю выше своего достоинства давать какие либо пояснения тупому вкатывальщику. Поссал на обиженку.
>>1053784>ты сам читал этот апи?И даже использовал.>Там про запуск сотен спайдеров одновременно говорится тащемта.И тебе это мешает запустить 1 спайдер?
>>1052842А что - кто-то возьмет человека, знающего Scala, но не программировавшего на Java?
>>1053917>знающего Scala, но не программировавшего на JavaА такие вообще есть? Не считая диванных погромиздов, конечно.
>>1052844>классические паттерны Эти паттерны человеческим языком называются приёмами программирования.Прямого отношения к ООП они вообще не имеют и стары как мир.
>>1053714Что за книга?
>>1053714Up вопросу, тоже интересно.И еще интересно что за книга?Кстати, когда книга писалась может использовалась другая версия модуля, гле было Usage, Options и без пустых строк - такое тоже возможно, а строки пустые могли еще вырезать в книге, чтобы места не занимало лишнего.
>>1054036Гайз нужна помощь. Допустим у меня есть список list = [1, 4, 8, 7, 3, 15,7,7]Модуль re работает же только на строки?А как кроме цикла можно получить число + его индекс по возможности, не прибегая к циклам?
>>1053914Типичный долбаеб, который научился быдлокодить как обезьянка и считает себя выше других.>>1053978Programming in Python 3 Mark Summerfield>>1054036Сам отвечу на свой же вопрос т.к. приличные люди мне рассказали. Либо никак, либо вместо argparse использовать сторонний docopt т.к. он делает парсер не через сомнительные методы, а через большую docstring которую ты можешь написать какой захочешь конечно в пределах разумного и с небольшими правилами, которые надо соблюдать. Но то, что мне нужно, там сделать можно.
Так, я тот анон, который каталог картинок делал, эйчару мое решение понравилось и она назначила собеседование на завтраКакие вопросы на питон/джанго собесах задают? В гугле только ответы из 2010 года
Собрался изучать GO, но когда дело дошло до слайсов (так они называются списки), мэпы (так они называют словари), я понял, что после Питона я буду плакать кровавыми слезами. В go нельзя вот так просто сделать if "car" in list
>>1054189Ты собрался писать на языке со статической типизацией без дженериков, зачем есть кактус?
>>1054190Как оказалось, там не обязательно указывать точно типизацию. Там компилятор сам решает за вас типизацию. Можно вот так a:=3Насчет дженериков, как объясняют, их специально не внедряют ибо быдло-кодеры используют их через жо... Это примерно как в питоне, массивы специально не внедрили, есть только стороннее решение. Иначе, те кто перекатился из php начали бы искать данные с перебором всего массива как они привыкли это делать.
>>1054195> Можно вот так a:=3пасквилемразь, плес
>>1054195>Это примерно как в питоне, массивы специально не внедрили, есть только стороннее решение.Те ебанутый? Array входит в стандартную библиотеку, алсо от списков по функционалу не отличается, кроме ограничения на единый тип данных элементов.
>>1054200>Array входит в стандартную библиотекуnumpy было сторонним решением и им остается. Да эта либа сейчас поставляется как стандартная.Но изначально массив не закладывался в архитектуру языка. Это было идеологическое решение. Чтобы кодеры учились использовать вот такие структуры if "word" in list
>>1054212https://docs.python.org/3/library/array.html?highlight=array#array.array
>>1054212>numpy было сторонним решением и им остается.Причем тут нампай? Это вообще ебаный комбайн для работы с массивами. Ты его с типом данных сравниваешь что ли? Совсем укурился, наркоман?
>>1054229Когда начинал изучать язык, массивов еще не было. И в учебниках объяснялось почему. Единственный раз, когда я использовал массивы - это распознавание изображений через numpy
>>1054244>Когда начинал изучать язык, массивов еще не было.Это ты в 90-х его изучал что ли?
>>1054245Массивы были, когда я начал изучать. Но из-за того, что массивы очень похожи на списки, но с ограничением на тип данных и размер каждого элемента, то всех инструкциях рекомендовали использовать numpy.
>>1054259>Когда начинал изучать язык, массивов еще не было>Массивы были, когда я начал изучать. Шиза одолевает? >Но из-за того, что массивы очень похожи на списки, но с ограничением на тип данных и размер каждого элемента, то всех инструкциях рекомендовали использовать numpy.Охуительная логика.
>>1054173на такие вопросы тут не отвечают, бывали тут 1 2 годнх анона, и видимо забили заходить, я задавал такой же вопрос приблизительно, мне посоветовали гуглить загадки тюремные...2sh<3
>>1054263>мне посоветовали гуглить загадки тюремныеНу так все правильно посоветовали.
Он охуел? Как первое условие может выполняться?if (5 or 3 == 4) and (3 or 5 == 5): print("NO")else: print("YES")Выдает NO
>>1054267Проигрунькал.
>>1054267Манюня, ты забыла о приоретете операторов
>>1054270поясни. Целый день дрочу питон, голова не варит>>1054273Я же скобки выставил, пес
>>1054273И о синтаксисе or тоже
>>1054275Тебе уже выше пояснили, пес.
>>1054262>Массивы были, когда я начал изучать. Я вспомнил, что они были и вспомнил почему их не использовал и почему в инструкциях взялся numpy и почему array сделали таким ограниченным.
>>1054277догнал, спс. Получается пес я
>>1054162Спасибо за наводку на docopt
>>1054173Что за каталог картинок?
>>1054189Го - язык, придуманный самодурами с непонятными целями.Говно а не я зык.
>>1054195>в питоне, массивы специально не внедрилиА что с массивами не так-то? Как их можно использовать, чтобы можно было оправдаться, свалив на быдлокодеров?
>>> from builtins import bytes>>> b1 = bytes([49,50,51])>>> b2 = b'123'>>> b1 == b2True>>> b1b'123'>>> b2'123'>>> b2 == b1True>>> b1 == b'123'True>>> b2 == b'123'True>>> b1[0]49>>> b2[0]'1'>>> (b'123')[0]'1'>>> bytes([49,50,51])[0]49>>> уносите меня, я порвался, сукаблядь
>>1054305>А ТАМ ЦЫФЕРКИ И ТУТА ЦИФЕРКИ АНИ АДИНАКАВЫЕ УУУ ТУПОЙ ПИТОН!!!!!
>>1054305В чем прикол то? Я новенький, не понимаю
>>1054308Прикол в том, что нужно учить типы данных.
>>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А у тебя какая версия?
>>1054291Мое тестовое задание, я выше писалhttp://rgho.st/8lplKfJkF
>>1054305>>1054310Где ты это высрал?bpython version 0.16 on top of Python 3.6.2>>> b1 = bytes([49, 50, 51])>>> b2 = b"123">>> b1 == b2True>>> b1[0]49>>> b2[0]49>>>
>>1054310вдогонку:python 2.7.9:>>> b'123''123'>>> p2 = b'123'>>> p2'123'python 3.6.1:>>> b'123'b'123'>>> p2 = b'123'>>> p2b'123'
>>1054312Чем им не нравится обычный виндовс проводник? Или суть именно в том, чтобы сделать свой собственный проводник с блэкджэком и картинками? И как реализовал? С графическим интерфейсом и всем таким?
>>1054316Это на джанго надо было делать, в вебе
>>1054310>А у тебя какая версия?Есть парочка: ты либо толстый, либо тупой.
>>1054310python 2.7, который должен выполнять код, написанный для 2.7 и 3.2 (для этого импорт из builtins от python-future)всех делов-то проверить первый байт датаграммы на равенство значениюну и как это сделать-то, ёб вашу мать? чтоб работало и в 2 и в 3
>>1054298Да тоже самое, что в Go. Неудобно оттуда данные выковыривать. Код слишком длинный получается. >>1054294Я бы так не сказал. Во-первых он очень шустрый, во-вторых сразу создает готовый скомпилированный файл, который уже можно передавать людям. В то время как pyinstaller может смачно послать куда подальше и приходиться гуглить, чтобы обойти очередной глюк.
>>1054320sixдолбоёб
>>1054322Nim тоже это умеет и тоже шустрый, наверное даже шустрее. И что?Go криво спроектирован, насовали говна, да побольше и не думая. И синтаксис говно, ни то ни сё.
>>1054319>>> b'123'[0]'1'>>> b'123'[0]49Найди различия. Ты кстати толстый или тупой?
>>1054332>Найди различияХуйли их искать, 1 пример питон 2.x, второй 3.x
>>1054326>Nim тоже это умеет и тоже шустрыйJulia тоже шустраяНо у Nim и Julia нет такого количество библиотек как у Go. У гоу уже есть почти все библиотеки на все случаи. >Go криво спроектированНе знаю, что ты имеешь виду. Питон появился, когда в процессоре было одно ядро. Многопоточность появилось в нем, как внешнее решение и работает так себе. Go сразу проектировался под многоядерность. >синтаксис говносогласен
>>1054336Скажи прямо - хочешь денег, поэтому и взялся его учить в надежде их получить
>>1054340Нет, просто держу нос по ветру
>>1054340>Go>заработать денегГлупый гой, жидов из гугла не наебешь.
>>1054350Так при чем тут Гугл - найдутся другие клиенты лохи
>>1054350А если программер сам жид, то кто кого наебет?
>>1054363А чего это он в ворде программирует?
>>1054364VB6 очевидно же
>>1054364Читает доку по Common Lisp.
>>1054363Держатель "казино"
>>1054364Ты собрался его учить как правильно наёбывать?
>>1054364Он проверяет текст кошерного малвар-письма с подарком. Чтобы ты точно открыл.
>>1053153>>1053151Спасибо анон все сработало как ты писал, ночью прошли ядерные испытания скрипта. Все идеально, нужные исключения срабатывали как надо и позволили потом проанализировать скрипт и поправить. Осталась еще пара вопросов но попробую нагуглить еще раз, что то не нашел.
>>1054173Я отсобеседовался, могу рассказать, что там было, если интересно кому
Аноны, в который раз 2 выхожу с собеса, с чувством и пониманием того, какой же я идиот и нихуя не знаю.Я забыл что такое итератор и как он работает, забыл рекурсию (впрочем особо и не знал, когда то разок прочел и все).Но с другой стороны, рад что мне откажут, ибо не придется ковырять python 2 c отсутствие перспектив, в обозримом будущем, в переходе на python 3И ох уж эти охуительные вопросы типа а что вам нравится в питоне?
>>1054730Ты не из челябинска случаем?
>>1054746Нет, минск.
>>1054730Я вообще завидую твоей возможности ходить на собеседования. Ведь у меня в городе даже специальности нет такой как программист.
>>1054761Ну это уже совсем мухосранск, нужно хотя бы в миллионике жить или туда перекатываться
>>1054730>Я забыл что такое итератор и как он работает, забыл рекурсию (впрочем особо и не знал, когда то разок прочел и все).Лол, я бы с такими знаниями вообще зассал на собеседование идти.
>>1054761Ну у меня есть штук 15 вакансий нужных, и вот на две только на собес позвали.>>1054767Мда, видимо я охуел и расслабился.
>>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 рубль и увеличивалась в два раза каждый месяц"
>>1054813Пробелы проебалисьdef f(h)____h = '5'h = '4' f(h)print(h)def f(h)____h = ['5']h = ['4']f(h)print(h)
>>1054813Ну в принципе норм, кроме вопроса спецу, как по мне, вот почитал за генераторы и рекрсию, понял что я это знаю и ок.У меня вот задачка была типа:Есть огромное количество ячеек памяти, нужно обойти их всех, выбрать четные, затем в рандомные записать данные. Затем из записанных прочесть инфу. Есть идеи?
>>10548131)Один мьютэбл, другой нет2)чем итератор отличается от iterable? 3)Никакого. Нет ни присвоений, ни выводов через print. Просто создаешь какие-то объекты, которые тут же проебуться.4)Так как переменная h не определена вне функции, в обоих случаях будет пиздец (не знаю, как там ошибка про использованние неопределенной переменной)Все, можно мне на работу?Кто такие эйчары и спецы? Слышал про сеньоров и джуниоров только.
>>10548251) И кортеж занимает меньше памяти2) Это тут причем?3) Подразумевалось, что выполняется в командной строке4) Лол нет, гугли области видимости функцийЭйчар это сотрудник отдела кадров, который ищет кандидатов на должность>>1054821Не совсем понял условие, но очевидно, что нужно писать генератор, т.к. данных много
>>1054838Возможно можно и так.Ну вот смотри, есть список длиной N(это ячейки памяти), ты должен обойти все четные элементы, и к каждому элементу применить рандом(для того что бы выбрать, записывать туда что-то или нет), если записываешь, то применяешь выдуманную функцию, типа logicWrite, если не записываешь то просто не трогаешь.Затем тебе нужно прочитать инфу из всех ячеек в которые была сделана logicWrite, применив при этом logicRead.
>>1054849Четные элементы в смысле четный индекс или четное значение?>и к каждому элементу применить рандом(для того что бы выбрать, записывать туда что-то или нет)Рандом применить к значению или достаточно какого нибудь random.choice([True, False]) и только потом применять logicWrite?>Затем тебе нужно прочитать инфу из всех ячеек в которые была сделана logicWrite, применив при этом logicReadМожно хранить индексы элементов к которым была применена logicWrite?
Напомните почему мы вынуждены писать os.chdir('mydir') вместо os.system('cd mydir')?
>>1054862> Четные элементы в смысле четный индекс или четное значение?Ячейки пусты, по индексу> Рандом применить к значению или достаточно какого нибудь random.choice([True, False]) и только потом применять logicWrite?Бинго, тру/фолс>Можно хранить индексы элементов к которым была применена logicWrite?Дорохо по памяти, там кол-во элементов, равно кол-ву ячеек в памяти 4гб ССД
>>1054922>Дорохо по памяти, там кол-во элементов, равно кол-ву ячеек в памяти 4гб ССДА что мешает их на диск сохранять в процессе, а не в памяти держать?Ну и как вариант можно передать конкретный seed в рандом и сохранить его. Потом можно будет восстановить последовательность рандома.
>>1054922>Дорохо по памяти, там кол-во элементов, равно кол-ву ячеек в памяти 4гб ССДТак, а раз ты сказал, что >Ну вот смотри, есть список длиной N(это ячейки памяти) то подразумевается, что список и так у нас в памяти и его достаточно передать в нужную функцию?
>>1054932А так же число N нам заранее известно?
Пытаюсь перенести длинную строковую переменную. Она получается с пробелами и с \n символами.test="""a='{}', b='{}', c='{}'""".format('1','2','3')Что бы a,b,c друг под другом были. Если \ добавить то она все отступы туда впихивает. Как это правильно сделать? В гугле говорят что вот так надо как я, но я не пойму что я упускаю.
>>1054929Перамога, молодец.
>>1054950Анон, я только начинаю, объясните, что за хуйню я наблюдаю в этом посте? Нахуя так много """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""?
>>1054971'''Ну можешь использовать одинарные, если тебя двойные смущают'''
>>1054950test="a='{}', \b='{}', \c='{}'".format('1','2','3')
>>1054932Ну да, но еще раз его копировать и т.д. - не торт.Выше есть правильный ответ.
>>1054974Так вот, да, хранить индексы(которые, в принципе равны элементам памяти), не торт ибо список длинный.
>>1054711Да, давай
>>1054813А вот эти вопросы про зарплату я не просекаю. Когда например спрашивают - а если бы вам предложили работать бесплатно месяц/два, что бы вы ответили? - Что это за тест такой? 4inb: тебя хотят бесплатно эклуайтировать; нет, imho это какой-то тест. Интересно что отвечать.Кстати, у тебя разметка сбилась (вот почему синтаксис питона стремноватый - пробелы это ненадежно).
>>1054813>>10548253)>>>tuple('text')('t','e','x','t')
>>1055051Тащем то это математический вопрос, типа зп равна 2^n, где n количество отработанных месяцев, понимаешь фишку. Ответишь "нет" и получишь минус в глазах эйчара
>>1055037Я уже>>1054813
>>1054872cd mydir запустит командный процессор, который перейдет в каталог и завершится, а рабочий каталог программы останется тем же? Или потому что нет такого исполняемого файла "cd" - команда втроенная в командный процессор?
>>1055059Ну это понятно про геометрическую прогрессию, была еще древняя байка про зернышки на доске. Но надо учитывать и реальность, а если эти пидоры тебя через год кинут? Получится, что ты практически забесплатно работал. До нормальной зп надо как минимум 16 месяцев отработать.
>>1055063Бля лол, это чисто мат задача, она не имеет отношения к будущей зп
>>1055059Издеваешься?
>>1055064>"Ты бы согласился работать у нас, если бы зп изначально была 1 рубль и увеличивалась в два раза каждый месяц"А вот как узнаешь, может он решил таким образом тебя хитро наебать.
>>1054973Это я пробовал. У меня вот отступы пробелами сделаны и при соединении строки он впихивает все эти пробелы в переменную.test="a='{}', \====>b='{}', \====>c='{}'".format('1','2','3')Вот вместо '=' пробелы. Или я как то отступы неверно делаю?
>>1055067Это наверное тонкая проба на знание степеней двойки (необходимо для программиста), но в такой тсрёмной и подозрительной форме, что лучше там не работать.
>>1055076Ну тогда так:test="a='{}', " \____"b='{}', " \____"c='{}'".format('1','2','3')или такtest=(____"a='{}', "____"b='{}', "____"c='{}'").format('1','2','3')
>>1055082В моей мухосрани количество вакансий на питон-джуна 1 примерно равно количеству резюме с ссылкой на гитхаб (причем почти без содержимого) 2, мне либо тут работать либо в ДСы понаезжать
>>1055076Ответ - ннкак.Или вот так:test=("a='{}', "+ "b='{}', "+ "c='{}'").format(1,2,3)
>>1055085Будь проклят Абуtest=("a={}"+____"b={}"+____"c={}").format(1,2,3)
>>1055083Хм, не знал, что конкатенировать строки можно вообще без соединителей, к тому же отступы не имеют значения (и это в Python!)
Двач, как сделать с {'http': '15.15.15'}{'http': '14.14.14'}в {'http': '15.15.15','http': '14.14.14'}Включая то, что айпи будут вводиться в неизвестном количестве
>>1055119Ну если словари в каком-то массиве будут, тоres = {}for i in arr_dict:____res.update(i)
>>1055122Хотя стоп, у тебя один и тот же ключ, такое работать не будет
>>1055122Блять, а как сделать что бы выходило? Возможно while цикл сделать? вот мой кодfor i in (input('Proxy: ').split()):_v = {'http':i}_print(v)
>>1055125Тебе требуется просто вывести или как? Можешь сделать один ключ 'http', а его значением список со строками, но если у тебя в словаре будет один ключ, то тогда лучше сделать множество
>>1055127Смотри, я вводя прокси через пробел, закидываю их в {} а потом кидаю в url.requestВ словаре всегда будет http. Как получше будет сделать множество?
>>1055128https://docs.python.org/3/library/urllib.parse.html
>>1055129Зачем мне это? Мне сейчас нужно как-то его сгруппировать.
>>1055131
>>1055134хммм а можно после айпи и http убрать?
>>1055136Убрать что?
>>1055140Что бы всего этого осталось 'http','15.15.15' ?
>>1055142Зачем?
>>1055144Мне нужно только:input>>> 15.15.15 14.14.14outputv = {'http':'15.15.15','http':'14.14.14'}Все остальное мне просто не нужно
>>1055151Ты вообще знаешь что такое словари и как они работают?
>>1055154Ноуп
>>1055151>v = {'http':'15.15.15','http':'14.14.14'}Невозможно, ключи в словаре должны быть уникальны, в таком случае как у тебя останется просто {'http':'14.14.14'}. Ты полностью задачу сформулируй, а то ты какую-то дичь творишь.
>>1055159Нужно что бы при вводе прокси, они записывались в словари, типо такого {'http':'15.15.15','http':'14.14.14'}что бы остановить ввод прокси, прожать Enter
>>1055162Может просто сделаешь множество с именем http и будешь добавлять туда значения?
>>1055162Зачем тебе словарь? Чем тебя список с урлами и urlparse не устраивает?
>>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'}
>>1055164У меня уже прописан скрипт, мне просто нужен конкретный словарь.
>>1055119А почему не просто список ай-пи, если все "http"?
>>1055167Хз, urllib.request.ProxyHandler не детектит так, выдает потом просто настоящий айпи
>>1055167Я вообще так думал:{'http':['16.15.15.15','14.14.14.14]}Но чего-то не выходит так
>>1055165Ты понимаешь, что тот словарь, который ты просишь сделать НЕВОЗМОЖНО, в словарях ключи должны быть уникальныВот по твоему какой результат выполнения должен быть у словаряa={'http':'15.15.15','http':'16.16.16','http':'14.14.14'}при вызове a['http']
>>1055166Не может быть такого скрипта, потому что такого словаря не может быть.
>>1055166Как тебе дебилу еще донести, что питоновский словарь не может содержать одинаковые ключи? Если так тебя прет пиши свой UserDict.
>>1055175>>1055174>>1055173Понятно
>>1055168поздравляю, ты меня затраллел своей тупостью.
>>1055175А разве при создании кастомного словаря можно сделать такое?
>>1055177Да я просто надеялся что так получиться(
>>1055178Можно, почему нет? Только нужно определиться с поведением, как по ключу значение возвращать, например.
>>1055185Допустим, есть несколько одинаковых ключей, при вызове нужно вывести все их значения спискомКак такое реализовать?
>>1055187Создаешь свой класс словаря и списка наследуясь от классов в collections, в свой словарь помешаешь данные в виде ключ:твой_список(значение) и соответственно переопределяешь методы __getitem__ и __setitem__ чтобы они уже ходили в твой_список. Ну и разумеется остальные методы реализовать с учетом этого.
>>1055190А ну и кастомный список нужен чтобы детектить случаи когда в словарь пытаются добавить 'key':[1,2,3] чтобы не получилось путаницы со списками.
>>1055192Можно изначально создавать список, типаd[1] = "a" => {1:["a"]}А потом просто распаковать, тогда проблем не будет
>>1055221Оверхед по памяти, в случае если большинство ключей имеют одно значение. Лучше создавать список если происходит дупликация ключей.
>>1054813> asinc
>>1055190Не совсем понял, по моему проще для дублирующихся ключей возвращать list со всеми их значениями.mydic['http'] -> ('0.0.0.0', '1.0.0.127', ...)У Абизяны Абу сегодня первосентябрьское обострение?
>>1049946Какая хуёвая актёрская игра. Ни на бабулю, ни на вёбмакаку не походит.Шутка про малинку не раскрыта.2/5
>>1049766 (OP)Пайтон-боги, последняя надежда на вас!Есть сайт на ебучем aspx: http://bankrot.fedresurs.ru/Messages.aspxНужно спарсить сайт с помощью Selenium'а и я не могу, блять, тупо кликнуть на кнопку. Нужно парсить только "Сообщение о судебном акте", т.е. я открываю сайт (с помощью Селениума, разумеется), кликаю на "Тип сообщения", подгружается какой-то фрейм и я не могу, блять, обратиться к элементам внутри этого фрейма. То есть ни селениум, ни jquery (пытался обратиться к ним через консоль) не видны, хотя в коде они есть. Однако при некоторых действиях (я точно не понял каких именно, но например при клике на какую-нибудь раскрывающуюся кнопку) эти элементы становятся, блядь, видимыми. Т.е. только после того как вручную на что-нибудь внутри кликну -- всё нормально.Пытался эмулировать Селениумом клик по координатам -- тоже нихуя не вышло. Анончики, помогите пожалуйста.
>>1055392МММ-щики подрабатывают
>>1055393>только после того как вручную на что-нибудь внутри кликну -- всё нормальноТак кликни селениумом, или не получается?Почему парсишь селениумом? Почему не супом?
>>1049766 (OP)Джангисты, вечер в хату. У меня проект с двумя приложениями внутри. Модели обоих связаны друг с другом и как ForeignKey и ManyToMany. Проблема в том, что когда пытаюсь всё это мигрировать получаю CircularDependencyError. Как эту проблему обойти при миграции я знаю, нужно просто один раз закомментить ForeignKey и ManyToMany поля и мигрировать, а потом раскомментить и снова мигрировать. Вопрос в другом. Что это вообще за CircularDependencyError, и почему она возникает? Гугл даёт только ссылки на прямое решение проблемы, но я хочу копнуть глубже.Я так понял, что раз она появляется, значит я неправильно спроектировал базу данных для проекта? Что делать, чтобы она больше не возникала?
>>1055393Попробуй слип поставить, после того как подгружаешь инфу.
Есть тут кто нибудь кто работал с pyTelegramBotAP?Есть одна проблема.Ты пишешь боту, он спрашивает как тебя зовут. Ты такой Вася.Потом боту пишет другой человек и он такой привет Вася. Тоесть бот сохраняет свое состояние и пре переходе из одного состояния в диалоге а, он также меняет свое состояние в диалоге б. Как этого избежать?
Уже второй месяц этот пистон ковыряю.Все еще надеюсь вкатиться джуном, лол. Вышка = 0
>>1055974А я уже ковыряю год, но начал нормально только сейчас.Написал говна на гитхабе, сейчас буду мерзкую джангу осваивать.Говорят, сертификаты тащат.
>>1055974Тоже вышка = 0, тоже пытаюсь вкатиться джуном. Удачи тебе, братишка.
>>1056001На заочку идите, если нужна корочка
>>1049766 (OP)Сап, питуны.Подскажите годных текстов/видео, по которым можно познать ооп в питоне от азов до глубин
>>1056098Dive into OOP
>>1055982> сейчас буду мерзкую джангу осваивать.>Говорят, сертификаты тащат. В смысле?
>>1056002Корочка говно. Тупая трата времени. Лучший вариант - попасть на очку с хорошим преподавательским составом. И не надо пиздать, что в ваших хуйрюписках такого не бывает. Вы ведь даже не пытались загуглить работы преподов.Времени навалом останется, для работы хватит. Плюс социализация, плюс связи далеко не бесполезные.
>>1056121>Лучший вариант - попасть на очку с хорошим преподавательским составом-5 лет жизни
>>1056126> - 4 года жизни, + 4 года опыта, а не сычевание в вебмакаках в перемежку с прокрастинацией
>>1056121Ты когда вышку заканчивал? Какой город? Много связей нашел? Чего узнал, что в интернетах нет?
>>1056127> 4 года опыта, а не сычевание в вебмакаках в перемежку с прокрастинациейТы где в вузике опыт нашел то? Первые два курса это дрочь матана, а вторая половина это теория с практическими заданиями уровня сверстать страничку\laba4 на плюсах
>>1056130Я вышку закончил в 2010. Связей достаточно для того, чтобы при необходимости выйти на нужно узкого спеца, или, что ещё важнее, на управленца ответственного за конкретную инфраструктуру.Узнал очень много о обработке сигналов, фильтрации, вчп, кодировании, симуляции сетей, распредвыче, теории игр, марковских цепях и прочих мелочах. Не считая практически опыт с линуксами, башами, питонами, ссайлабами, жипиэсэсом, латехом, нс-3 и прочими вещами. Многое из этого можно было бы и нагуглить, но зачем, если это можно получить из первых рук.Ну вообще студентота - самое весёлое время.>>1056133>вторая половина это теория с практическими заданиями уровня сверстать страничку\laba4 на плюсахНикогда не делал курсачи по вариантам: приносишь любую мало-мальски подходящую под тему шабашку, преподы только рады.
>>1056133Правда, есть варианты сдавать экстерном, а также отказаться от предметов, которые ты уже проходил в другом вузе.Если останутся только профильные предметы - это уже не так смертельно. Хотя смотря сколько тебе лет. Для школьника, который привык учиться и не знает куда пойти лишь бы не армию хотя это не так уж страшно - вернется более зрелым человеком и сможет поступить в вуз легче, не куда-нибудь, а зная куда и зачем - вариант стационарного обучения норм, а для человека 25+ с профессией уже трата лет своей жизни зря.
>>1056139>из первых рук.Не смеши. Ну матан еще туда-сюда, но латех и питон в мухосранском вузе из "первых рук"...
Вы по своему опыту можете подсказать, вот задача дать юзеру скрипт. Что лучше сделать, в PyQt попробовать вьехать и сделать интерфейс или через веб сделать? Сильно PyQt сложный?
>>1056230Я, конечно же, имел ввиду первую вышку. Зачем может понадобиться дополнительный корочки именно разработчика - даже представить не могу.
>>1056276Для рабочей визы надо
>>1056259Прикинь как классно будет, если юзер сможет выбирать - обычный интерфейс или вебинтерфейс, быстрая работа на компе или удаленная работа?
python 3.6.2Ставлю джангу, создаю бд - еррарПробую намутить sqllite3 просто в питоне - еррарСам еррар: ImportError: DLL load failed: %1 не является приложением Win32Это ошибка версии или я кривой? Питон 2 раза переустановил.
>>1056356Быстрая на компе. Тогда у него возникнут "сложности выбора" лол. В будущем и веб сделал бы наверное. Вчера ковырял PyQt, разберусь думаю. Пока больше думаю как внешне все расставить, чем как это запустить. Хотя и запускается и работает все достаточно просто.
>>1056356>Прикинь как классно будет, если юзер сможет выбирать - обычный интерфейс или вебинтерфейсhttps://www.youtube.com/watch?v=RisCgSIWwLA
Ставь убунту и не парься
Таки поставил 3.5 Это пездетс какой то. У меня вообще ничего не работает, везде ругается, просит перед переменными либо b ставить либо encode Блядь что за пиздец.
>>1056501А нет, это просто я мудак. Ну в паре мест преобразовать пришлось, скобочки поставить еще, а так терпимо. Ладно будем пробовать.
>>1056379Веб версию юзер может кастомизировать.А я бы еще добавил CLI версию (сommand line interface).
>>1056522Мудаки - создатели языка потому что совместимость кода - большое и важное дело
Блять, запускаю свой йобо-проект из пайчарма и комп просто виснет, мышка двигается но ничего не реагирует.Это пизда, товагищи.P.s. Виснет на стадии импорта библиотек/модулей.
>>1056852Может у тебя глубокое зацикливание - модули друг на друга ссылаются?
>>1056934Пол года назад его последний раз трогал - все ок было.На винде запустил - все ок.На debian 9- ахтунг просто.Есть же вроде какой-то предел и должно кидать эксепшен?
>>10569441) Другая версия Питона2) Другие настройки системы3) Используется другой софт или версии третьей стороны
Аноны, как сделать, что бы chr() декодировал каждую строку, типо такой:1234567889Если можно, то обьясните ваш ответ в кратце
>>1057132Функцию создай, которая хватает аргумент, переводит в string и добавляет на концах чего тебе надо. Или в чем вопрос?
>>1057037Все круче оказалось, я просто вызывал функцию и все зависало.
>>1057222При работе с:subprocess.cal('sudo ....', shell=True)Забавно.
>>1057260Ну так оно пароль суперюзера запросило и ждет.
>>1057305Эм, нет, антош, объясняю же, что никак не реагирует система вообще ни на что.p.s. и там всё сложнее немного, с паролем суперюзера чем просто ввод.
Хочу сделать Web-интерфейс для консольной утилиты на python.Что посоветуете для создания WEB-GUI? Есть какие-то либы/фреймвёки для такого или ручками генерировать html?
>>1057480Ошибка постинга: В сообщении присутствует слово из спам листа.
>>1057487Django же для создания вебсайта просто? А к нему там плагины всякие... Ну не знаю, мне думалось запускать утилиту в режиме типа:> consoleapp --webgui --port 8000И чтобы она поднимала локальный сервер и взаимодействовала через него с пользователем. Это прямолинейное решение. И главное - само-в себе, то есть надежно, особенно, если сделать один монолитный .exe файл например.А что даст запуск утилиты как plugin к Django, какие плюсы? Минус навреное в том, что нужно будетвозиться с настройкой вебсервера, и без этого вебинтерфейс работать не будет, но может и плюсы есть? В крайнем случае можно совместить подходы.Спасибо за подсказку с websockets - это для обновления в реальном времени? На будущее пригодится.Пока мне нужно просто передавать команды из браузера в программу (как параметры в консольных утилитах) и принимать назад из неё вывод данных (не знаю делать форматирование этих данных в самой программе или как-то на javascript это взвалить). Если есть что-то облегчающее эту работу (простейший вебинтерфейс) - было бы здорово.
>>1057490>consoleapp --webgui --port 8000python manage.py runserver>А что даст запуск утилиты как plugin к Django, какие плюсы?Полагаю ты не совсем понимаешь что такое Django.В первом приближении без сокетов и с ожиданием stdout, можешь взять фласк, написать однин маршрут и одну форму на wtforms или даже чисто в шаблон ебнуть и не ебать мозгу.
>>1057500Ну как локальный сервер запускать я знаю. Мне нужны модули именно по взаимодействию программы с вебинтерфейсом и генерации этого вебинтерфейса (взамен Tk/Qt/etc окошек). Пока такой простой случай, то есть вместо обычных окошек - консольная утилита + веб-замена окошек.Думаю, что такое уже написано во многих версиях. Поэтому хочу узнать хотя бы один модуль для этого, чтобы не писать самому.МНе не просто какую-то веб-форму ввести, как в CMS-ках, а что-то вроде замены диалогов, таблиц и т.п. всё что позволяют нативные GUI окошки и ещё делать кастомный вывод в вебраузер но это уже я и сам могу генерировать
>>1057206я уже решил print(''.join(chr(int(i)) for i in input().split()))
Поясните за CPython. Мне рассказывали, что он конвертирует питоновский код в си, но гугл говорит, что CPython используется, когда в питоновскую программу надо вставить всего лишь часть другого кода, написанного на си.Можно ли все-таки как-то программу, написанную на python автоматически сконвертировать в быструю сишечку?
>>1049766 (OP)Совместим ли модуль Sci-0.16.1 для python 3.4 c python 3.6.2?
>>1059783Конечно можно, просто все тупые и не додумались так делать, а сидят мучаются с тормозным интерпретатором.
Извиняюсь за нубский вопрос. Только начал изучать питон. Как можно вставить в input значение текстовое из другого инпута. То есть input('Как тебя зовут')input('Привет, "имя", сколько тебе лет?')pycharm ругается
>>1060086> a = input('Как тебя зовут')> input('Привет, ", a, ", сколько тебе лет?')
>>1060103второй инпут тоже переменной должен быть. На выходе получилось: Привет,"а"сколько тебе лет.
Антон, посоветуй годных ресурсов с задачками по сабжу.
>>1060360Если знаешь основы - гугл -> winapi documentation -> всю хуйню жуешь по очереди
>>1049766 (OP)Чуваки, кто работал с subprocess.popen на маках из app? Такой вопрос, не видит доступных shell-команд, ввожу в нём dmidecode (проверил, он стоит, есть и в libraries самой app и даже уже в саму среду поставил из brew, то есть из консолечки ручками запускается нормально), так он отдаёт, что нет такой команды. shell=True стоит
>>1049766 (OP)Питон 3.6.2. Пишу: "3.999(10*2)", а на экран выводит "399.90000000000003". Почему?
>>1063503Потому что так работает плавающая арифметика, даун