Этого треда уже нет.
Это копия, сохраненная 25 января 2016 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
#2 #614751
Зачем учить язык за который не платят ?
#3 #614754
>>614751
Кто-нибудь когда-нибудь платил за знание языка как таковое? Платят за реализованный продукт. А выбор языка - это вопрос личного удобства.
#4 #614768
>>614751
У нас пайтонисты охуеть зашибают
#5 #614784
Курс на udemy от автора "Automate the Boring Stuff with Python", бесплатно, если до конца года записаться. В общем, тут все написано, вдруг кому пригодится: https://redd.it/3yjxwx
#6 #614796
Анончики, помогите неофиту. Покажите, как можно сделать примитивный текстовый редактор, который работает в командной строке и может, создавать и открывать .тхт
Основная заеба с тем, как организовать ввод многострочного текста. Input() только одну строку принимает. Как организовать завершение ввода? Пробовал try ... except KeyboardInterrupt, но он проёбывает введенный текст вместе с переменной.
#7 #614797
>>614784
Чувствую какой-нибудь подвох.
#8 #614804
87 Кб, 540x960
#9 #614851
>>614804
Анон, спасибо. На ведре не хочет работать
#10 #614861
>>614797
Рефералом будешь.)
#11 #614876
Что проще и понятнее для начинающего - джанго или фласк?
Не беря в расчет вопросы с работой и прочим дерьмом.
#12 #614879
Оцените, сильно ли говнокод?) В основном интересно про класс DBase, так как остальное сам понимаю что говно

DBase пытался сделать полностью универсальным и независимым объектом, из которого можно сделать модуль

сам КОД - http://pastebin.com/xPLZy5SZ
#13 #614895
>>614876
Проще - джанго, понятнее - фласк.
#14 #614906
>>614895
Ты кто такой, конкретнее давай.
73 Кб, 540x552
#15 #614917
Парни, чего почитать по стандартной библиотеке и хорошему питон-коду?
Вот этот вот дзен-пиздёжмагия об том как сделать из 20 строк 3 но тоже понятных и тд и тп?
#16 #614940
>>614738 (OP)
где хрень с оппика купить. кстати? хочу мариво и мегамена слепить
#17 #614942
>>614940
в магазине
#18 #614947
>>614940
Хипстор дохуя?
15 Кб, 530x356
#19 #614988
Начал изучать питон, подскажите чем можно заменить 2 списка chiper на 1?
#20 #614989
>>614851
У меня работает урвид на ведре. сарян
#21 #614990
>>614917
кукбук
#22 #614992
>>614988
словарём
#23 #614994
>>614992
Ок, уже прочитал про них, а что еще можно изменить, что в глаза бросилось?
#24 #614999
>>614994

> str(input


> chiper


> отдельная функция replace

#25 #615001
>>614999

>str(input


Вот это не понял, что не так?
#26 #615002
>>615001
input и так возвращает строку.
#27 #615003
http://codingbat.com/prob/p153599
есть упражнение: нужно поменять первую и последнюю букву местами
во всех случаях работает отлично, кроме случая
str = "aavJ"
по идее, должно выдавать "Java"
выдает - "Jva"
сделал отдельный иф для джавы - заработало

в чем суть траблы? ввожу str = "nythoP" - работает
#28 #615005
>>615001
Ну, ещё pep8, переменные x и y… и вообще, я бы это по-другому сделал.
#29 #615006
>>615003

def front_back(str):
if len(str) > 1:
a = str[0]
b = str[-1]
newstr = str.replace(a,"")
newstr2 = newstr.replace(b,"")
newstr3 = b + newstr2 + a
return newstr3
else:
return str

print front_back("nythoP")
#30 #615007
>>614784

>Automate the Boring Stuff with Python


>почти весь курс состоит из введения в питон

#31 #615008
>>615005
Спасибо тебе
#32 #615010
>>615006

> newstr.replace(b,"")


По-твоему, что это должно делать?
#33 #615013
>>615006
s[-1] + s[1:-1] + s[0] if len(s) > 1 else s
#34 #615015
>>615010
удаляем последнюю букву из слова
#35 #615018
>>615013
Опередил
#36 #615019
>>615015
А что это делает на самом деле?
#37 #615020
>>615006
Через сортировку пузырьком проще же?
#38 #615021
Кто-нибудь пробовал писать на киви под андроид? Можно ли в простеньких приложениях обойтись питоном? Или лучше сразу джаву учить?
#39 #615022
>>615019
заменяет на ""?
#40 #615023
>>615022
Заменяет все символы, которые равны b на "".
#41 #615024
>>615023
теперь ясно, спасибо
#42 #615025
>>615006
Можно, кстати ещё так: http://pastebin.com/qdNmCY1x
#43 #615071
>>615021
Ну я писал. В простеньких - вполне. Но апи ведроида полностью не покрыто (было). Самый большой подводный камень помимо апи - долго грузится. Не тормозит, а именно начальная загрузка долгая шопиздец, на уровне какого-нибудь всратого хрюнити.

У них демок куча, погоняй. И в маркете есть какие-то приложения по кейворду kivy.
#44 #615079
>>614754
Кому нужен проект написанный на питоне? Его не поддерживают 99.9% хостингов. Там php и mysql. Да и залить по фтп не достаточно, нужно какое-то шаманство опытного админа чтобы сайт поднять, а скорее всего без самого автора кода не разобраться.
Да и исправить что-то в проекте на php может любой школьник за доширак или миллионы опытнах специалистов, а для питона надо искать редкого питониста, который ещё и запросит нереальные деньги.
#45 #615084
>>614796
Ты можешь сделать редактор наподобие ed https://en.wikipedia.org/wiki/Ed_(text_editor)
Или осиливать curses
#46 #615087
>>615079
Ты пизданулась, зелень? 99.9% хостингов - впс на линуксах, с рутом у тебя лично, что хочешь то и делай. Хоть на лиспе, хоть на брейнфаке запускай. А ты пришел в 2016 и заливаешь про ШАРЕД ХОСТИНГИ БЛЯДЬ, ХОСТЕР НЕ ПОДДЕРЖИВАЕТ, ПХПХ ПУСКУЛЬ ХОСТИНГ БЕЗ СМС. Я блять живой шаред хостинг видел последний раз в 2007 году. Никому они нахуй не нужны, даже даром. Иди нахуй отсюда блядь, дегенерат.
#47 #615089
>>614876
Тебе же ответили в прошлом треде.
В джанго всё из коробки, но прибито гвоздями. Зато из коробки орм, аутентификация, админка, миграции, формы и всё прочее.
В фласк надо это самому из отдельных компонент собирать, что дает больше гибкости, но и геморней. И компонент таких готовых меньше.
#48 #615092
>>615087
Чаю этому бомбанувшему.
Добавлю еще, что сейчас существует куча систем автоконфигурации. В конце-концов, приложение может быть обернуто в какой-нибудь докер со всем необходимым и тогда оно развернется-запустится вообще любым утистом без проблем.
#49 #615093
>>615087
впс намного дороже и им требуется админ. шаред хостинги берут админство на себя. и стоят $3 в год.
владелец сайта, не будучи программистом, просто заливает php файлы по ftp и загружает думп базы в phpmyadmin. И всё, сайт работает.
#50 #615095
>>615093
Нихуя не дороже.
#51 #615096
>>615093.replace("сайт", "визитка с 1 посетителем в год")
#52 #615103
>>615093
Ой блядь иди нахуй, дороже-хуеже, админ-хуйадмин. Никакие оправдания не загонят нормального человека со своей ультрадешевой впс на шаред хостинг. Шаред хостинг это ДНО, самое донное ДНО которое только можно найти в мире веба. Нормальные люди про него забыли блять как про страшный сон, а нюфагам повезло - они про него даже не знали никогда. И тут ты такой из машины времени ОПА, ПАЦАНЫ, ХОСТЕР НЕ ПОДДЕРЖИВАЕТ, ГО НА ПХП4 ПО ФТП, Я СОЗДАЛ, БУДЕМ ЛАГАТЬ И ПАДАТЬ ВМЕСТЕ

Иди нахуй, говноед, никому твоя шаред параша не нужна в 2016.
53 Кб, 600x450
#53 #615107
>>615103

> ГО НА ПХП4 ПО ФТП, Я СОЗДАЛ, БУДЕМ ЛАГАТЬ И ПАДАТЬ ВМЕСТЕ


Спасибо, посмеялся.
8 Кб, 225x178
sage #54 #615127
Дианон по скрину ipython'a
#55 #615134
>>615127

>WillBeams


Ты один из трёх остальных.
#56 #615160
>>615089
Ну а если не трогать про то где из коробки, а где нет.
MTV в джанге как по мне делает его не очень удобным.
#57 #615161
>>615160
хз. CBV делают всякие типовые задачи очень удобным. Хуяк-хуяк тебе и список объектов каких-нить и пагинация в 2 строчки кода. Или форма какая.
#58 #615162
>>615160
А что не так с MTV этим?
#59 #615177
>>615162
Я привык к традиционному MVC.
#60 #615179
>>615162
И в джанго не удобная архитектура.
#61 #615181
>>615177
А в чем разница кроме названия?
#62 #615207
>>615181
В разнице не только в названии.
#63 #615257
>>614989
Расскажи, как поставить? Через pip install urwid находит, скачивает, но под конец установки ошибки высыпает.
#64 #615266
>>615257
У тебя конпеляторы то стоят чтобы конпелять? И вообще есть лог что за ошибки то? По тому обрывку ничего не понятно.
#65 #615267
>>614851
>>614851
Потому что поставь Qpy2
#66 #615290
у меня есть приложение на андроиде я хочу сделать веб небольшой на джанге. Я поднял рест апи и сервер делаю модели и столкнулся с релейшенс и прочими нюансами. Кто может помочь растолковать как и что делается?
#67 #615375
>>614851
Зойчем он тебе на ведре? Это же говнота для ssh. Или ведро у тебя в качестве рабочей машины?
sage #68 #615377
>>615375
Не для ssh, а для терминала. Теперь еще спроси зачем на ведре терминал.
#69 #615378
>>615377
зачем на ведре терминал?
#70 #615379
>>615179
>>615207

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

Тру-архитектура начинается когда у вас приложение создаёт процессы, потоки, работает со звуком, графикой, интенсивно менеджит некоторые примитивы (то есть держит в памяти, подгружает, выгружает), разрешает коллизии на дисках фрагментируя файлы, пишет журналы для восстановления после сбоя, рулит кластером со всей возможно асинхронностью чтобы исключить блокировки. А это ссаный веб-сервер, открывает сокет, парсит http заголовок, выдаёт http ответ, вычищает нахуй всё из памяти. Здесь вся архитектура - это кеширование и огранизация кода под типовые задачи, всё. Большую часть архитектуры вы накручиваете установкой готовых решений: mysql/postgres/mongo/nginx/apache/uwsgi/unicorn, и то, за вас это админ делает.
#71 #615380
>>615379

> коллизии на дисках


че
#72 #615382
>>615377
Поумничай мне тут. Делать приложение на urwid чтобы гонять его на десктопе в терминале будет только слабоумный. В терминалах дохуиллион несовместимостей и разных уровней поддержки фич. Ты просто ёбаный мазохист, если не делаешь это с прицелом пользования через ssh.
#73 #615383
>>615380
Лол. А вот и новое поколение.

Пусть у тебя диск имеет размер 1Гб. Ты записал на него файл 500Мб, затем 100Мб, они у тебя записались друг за другом: | 500 file | 100 file | 400 free |

Потом ты удалил файл 500Мб и скопировал себе файл 800Мб. Внимание вопрос: как запишутся файлы на диск? Отвечает Александр Друзь.
#74 #615384
>>615382

> В терминалах дохуиллион несовместимостей и разных уровней поддержки фич


Разве curses это на себя не берет?
#75 #615385
>>615382
Поучи меня еще как кудахтерами пользоваться, пидор.

>В терминалах дохуиллион несовместимостей и разных уровней поддержки фич


90% современных терминалов работают на libvte, "несовместимости" остальных давно известны в обкатаны в curses, на котором я кстати свои морды и пишу, а urwid твой в сраку ебал, хипстер ебаный.
#76 #615386
>>615384

Curses это кривое говно без какой-либо вменяемой поддержки окошек. Этараз. Далеко не каждый терминал поддерживает не то что цвета, даже свободное перемещение курсора по экрану. Этадва. То есть curses распидорасит вывод и его придётся глушить. И enjoy your ESC key/keymap support. Этатри.
#77 #615387
>>615383

> они у тебя записались друг за другом:


Начнем с того, что это не то как фс работают если это не sparce file какой-нить.
2014 Кб, 2776x2464
#78 #615388
>>615386
Ты где такие терминалы видел последний раз? picrel это всё умел и он старше тебя и современные эмуляторы терминалов с ним совместимы.
#79 #615389
>>615383

>спрашивают про коллизии


>рассказывает про фрагментацию, которая в 2015 есть только во всратом ntfs и более древних парашах


Вырастил новое поколение тебе за щеку, выблядок.
#80 #615391
>>615386
Ну и изначальный вопрос был как сделать текстовый редактор консольный. Я предложил сделать клон ed, но очевидно товарищ хочет визуальный редактор. И тут или использовать ncurses или самому же его изобретать хуяча эскейп-последовательности. И вот тогда, действительно, будут проблемы с совместимостью.
#81 #615392
>>615386
Терминалы ты последний раз видел в 1955 году, в школе на уроке информатики, да и то на картинке?
#82 #615394
>>615389
Фрагментация есть в любой фс. Разве что кроме како-нить tar файла и подобного. Это означает что файлы записываются не подряд, а разбиты на блоки, группы блоков и прочее.
#83 #615395
>>615385

>пишет на curses под десктоп в 2015


>без прицела на использование по ssh



Ясно. Вопросов больше нет.

>>615387

Да ты шо. Ну давай, назови мне хоть одну фс, не разбивающую файлы по кластерам.

>>615388

Ctrl+c нажми и наслаждайся перезапуском/сбросом терминала чтобы вернуть цвета и увидеть ввод.

>>615389

>ntfs и более древних парашах



У меня для тебя плохие новости, школьник.

>>615392

Не так давно копался в игоре, сделанном на базе квейкодвижка. Туда прикручена curses. Оттуда невозможно например выцепить стектрейс, сообщения об ошибках пидорасят весь вывод. Moc например частенько пидорасит от кириллицы и других не-аски символов. Ебитесь сами, мсьё.

>>615392

Меня раздражает блядский esc. Меня раздражает что моя клавиатура становится как в 1955 на картинке.
#84 #615396
>>615395

> без прицела на использование по ssh


screen запусти или tmux и испоьзуй себе по ssh.

> не разбивающую файлы по кластерам.


в прыщех это назыавется блоки группы блоков. Так вот, какие могут быть "коллизии", если данные лежат в разных блоках.
438 Кб, 768x1024
53 Кб, 600x388
#85 #615398
>>615392
Тогда были телетайпы, а не терминалы. А скорее вообще на перфокарты вбивали данные.
В прыщах кстати до сих пор устройства называются tty что означает телетайп.
#86 #615399
>>615396

>какие могут быть "коллизии", если данные лежат в разных блоках


Вот это и есть орхитектуре. Видишь как оно освобождает тебя от лишней головной боли.
#87 #615400
>>615395

> Ctrl+c нажми и


Ну запустил вот mc нажал ctrl+c нихуя не произошло.
Запустил mutt оно мне предложило выйти.
Запустил htop/top и оно вышло.
#88 #615401
>>615395

> невозможно например выцепить стектрейс, сообщения об ошибках пидорасят весь вывод.


Ты можешь из соседнего окошка терминала подцепиться к процессу.
#89 #615402
>>615400
Хех. Это значит что на вышеозначенные приложения повесили обработку сигнала. Если же они у тебя грохнутся от внутренней ошибки, или обработчика сигнала нет, то распидорасит.
#90 #615403
>>615401
Проще запустить с -nocurses.
#91 #615404
>>615395

>Оттуда невозможно например выцепить стектрейс, сообщения об ошибках пидорасят весь вывод.


Ловишь свои трейсы, записываешь в файл как обычный текст, смотришь файл.

> Moc например частенько пидорасит от кириллицы и других не-аски символов.


Чего несешь? Сколько лет слушаю через него - никогда не пидорасило от не-аски.

Ты ебанутый кокой-то.
#92 #615405
>>615404

>никогда не пидорасило



Ты наверное ещё и ID3 теги расставляешь и имена файлами задаёшь. В curses нет поддержки layout. От слова совсем.
#93 #615406
>>615402

>Если же они у тебя грохнутся от внутренней ошибки, или обработчика сигнала нет, то распидорасит.


Не хочу читать документацию, хочу травить кулстори про РАС-ПИ-ДО-РА-ШИ-ВА-НИ-Е.
https://docs.python.org/3.4/library/curses.html?highlight=curses%20wrapper#curses.wrapper
#94 #615407
>>615402
Ну распидарасло - набери команду reset в баше и обратно восстановится.

> Если же они у тебя грохнутся от внутренней ошибки


Повесь atexit.

> обработчика сигнала нет


Сделай. Или не посылай сигнала, на который нет обработчика.

Всё сводится к тому, что надо нормально приложение писать и это не сложно.
#95 #615409
>>615406
>>615407

Ищо раз, ебитесь сами, мсьё. Привет 1955-му.
#96 #615410
>>615409
Обосрался
&&
ЕБИТЕСЬ САМИ!!1
#97 #615412
>>615409
А какие альтернативы? Если тебе надо сделать именно TUI интерактивный типа mc или vim.
Понятно, что для большинства задач лучше обычный cli потому что оно скриптуется и т.п.
#98 #615413
>>615379
Очень увлекательный рассказ.
Ты не мог бы привести пример приложения, которое "разрешает коллизии на дисках фрагментируя файлы"?
#99 #615414
>>615410
Скорее утомился. Оно не стоит усилий.
>>615412
Сделай стандартными десктопными средствами. Там и лайауты, и шрифты норм, и ввод нормальный, и ctrl+c/ctrl+v, и фокусы ввода.
>>615413
Модули для ведра ОС/юзерспейсные приложения работающие через fuse.
#100 #615415
>>615414

>Модули для ведра ОС/юзерспейсные приложения работающие через fuse.


А название приложения можешь назвать, я хочу посмотреть что да как.
#101 #615416
>>615414
fuse тут вообще никаким боком, это апи для создания псевдофс в юзерспейсе, а не реальных. они конечно могут писать в блочное устройство тоже но само fuse тут непричем.
всякие sshfs на базе fuse вообще с файлами локальными не работает.
76 Кб, 600x600
#102 #615417
>>615415
ext3.c
ext4.c
jfs.c
xfs.c
reiserfs.c
fat32.c
ntfs.c
#103 #615418
>>615416
Не обязательно псевдо-. Это перенос поддержки ФС в userspace.
#104 #615420
>>615417

>ntfs.c


Давно она открытая то?
#105 #615423
>>615418
во fuse оно всегда псевдо, просто код, который ты с использованием этого апи написал может и в блочное устройство писать.
а может и сетевой диск какой-нить делеать или что-то вроде tagfs или аналог proc/sysfs или что угодно.
#107 #615425
>>615420
На чтение работает давно. На запись работает отдельным модулем через fuse, и не гарантирует целостность. ms её активно пилит, не угоняются.
#108 #615426
>>615423
Ну и? В блочное ты ведь пишешь уже раскидывая файлы по блокам. А это и есть задача файловой системы.
#109 #615427
>>615425
Вроде тысячу лет как на запись работает нормально.
#110 #615428
>>615424
>>615425
Так то ntfs-3g.c, прыщеглазая поделка. Вы мне ntfs.c(™) почитать дайти.
#111 #615429
>>615428
Исходники винды2000 уплывали можешь загуглить и там почитать.
#112 #615430
>>615428
Вообще хули там читать. Это реализация. А сами структуры данных, как она устроена мы в универе изучали.
#113 #615431
Господа, в чём состоит причина и суть вашего спора?
#114 #615433
>>615431
В том, что иди нахуй.

>>615430
А вас там в йоба-универе не учили, что теория с реализацией могут расходится? Особенно в случае закрытых поделок, у которых всего одна эталонная реализация, она же по сути и "стандарт"?
#115 #615434
>>615431
1. Пиши консольные гуи только под использование через ssh.
2. urwid > curses
3. В джанге нет особенно архитектуры, нехуй ныть, она просто чуть иначе держит темплейты и прочее.
4. Почему-то оказалось неправильно назвать причину фрагментации файлов коллизией.
#116 #615435
>>615434
Заебал. Мамку свою учи иди.
#117 #615436
>>615434
urwid Это просто какая-то надстройка над curses более высокоуровневая видимо.
#118 #615437
>>615436
curses там один из бэкэндов. И да, она более высокоуровневая и больше умеет.
#119 #615439
Так что там с приложением, которое самолично фрагментирует файлы. Дайте название, пожалуйста. Про FUSE почитал, так он драйвером файловой системы оказался, или я не так понял?
#120 #615440
>>615439
Есть какое-то древнее поделие, представляющее из себя скрипт на баше/перле, который просто перезаписывает файлы в новые сектора.
И ещё одна такая же древняя утилита. И обоим этим лет по 7-10.
А всё потому, что НИНУЖНО
#121 #615444
>>615439
Тебе если интересна эта тема - посморти ещё как кучи в памяти делают. Принцип такой же по сути - allocate(size)/free, только требования несколько иные, нужен именно непрерывный диапазон.
#122 #615445
>>615440
Ну с секторами dd умеет работать, вроде как. Но это просто низкоуровневые операции, а не управление фрагментированием.
Ладно, видимо сказано было для красного словца, мол, вы ничего не понимаете в "тру-архитектуре". Проехали.
#123 #615446
>>615444
Честно говоря, меня интересует именно тема архитектуры приложения. Задумал проект, который состоит из нескольких небольших частей, а как вот связать воедино, как лучше наладить обмен данными я не разбираюсь.
#124 #615447
>>615445

>вы ничего не понимаете в "тру-архитектуре"


И таки да. Архитектура - это не внешний вид исходников, а план как оно физически будет работать. В веб приложениях мало кто планирует архитектуру, делается тонкая оболочка к базе данных + незамысловатая логика. Вся архитектура там заканчивается на кешировании и масштабировании в кластер.

>>615446
Планируй сначала потоки данных. Ввод-вывод например, использование сокетов, звука, итд. Какие требования по количеству данных, задержке обработки, пропускной способности.
#125 #615511
>>615439
База данных какая-нить. Правда она обычно наоборот старается не фрагментировать. По сути веть фс эта тоже бд своего рода.
#126 #615512
>>615446

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


Сигналы. файлы. mmap. Пайпы. юникс сокеты. всякие rpc. mq. mmap. corba. тысячи их
https://en.wikipedia.org/wiki/Inter-process_communication
выбирай на вкус
#127 #615524
>>615257
1. Качаешь архив.
2. Распаковываешь.
3. Кидаешь директорию urwid рядом со своей поделкой.
#128 #615527
>>615524
Там не чисто питон код, там есть .c файл, который надо сконпелять.
Да и не файл что в этом питоне на андроиде есть сам модуль curses.
151 Кб, 768x1280
#129 #615531
>>615527

> Там не чисто питон код, там есть .c файл, который надо сконпелять


https://github.com/urwid/urwid/tree/master/urwid
Где .c файл?

> не файл что в этом питоне на андроиде есть сам модуль curses


Факт.
Сам urwid прекрасно работает, тестировал пару своих поделок на андроиде.
#130 #615534
>>615531
https://github.com/urwid/urwid/blob/master/setup.py

>'ext_modules':[Extension('urwid.str_util', sources=['source/str_util.c'])],

#132 #615542
>>615536
А ну заебись тогда че
159 Кб, 680x960
#133 #615655
Не идеально, но это работает!!

Поиск по папкам и запуск необходимого файла

http://pastebin.com/mg3N3icV
#134 #615659
>>615655
Две строки на баше.
#135 #615661
>>615655
почитай про os.walk

>if i.find(name) != -1


можно просто if name in i
#136 #615662
>>615661
Есть же glob
4 Кб, 520x523
#137 #615663
хэй гайс, какой параметр нужно установить для dash что бы штрих был 1 через 1 пиксель? на пике при любом параметре получается 3 через 3. спасибо
#138 #615664
>>615662
glob не рекурсивно проходится по каталогам.
77 Кб, 400x369
#139 #615665
>>615663

>эта радуга


>это мыло

#141 #615668
>>615666
Вот кстати pathlib же ещё есть. Типа ооп подход.
#143 #615866
Появились какие то проблемы с кодировкой, когда запускаю просто файл .py

пишет "unicodeencodeerror charmap codec can't encode character"

если запускаю в pycharm, то там всё работает, почему так?
sage #145 #615873
>>615872
Спермопроблемы.
251 Кб, 510x379
#146 #615874
>>615866
винда небось?
#147 #615879
1 Кб, 413x21
#148 #615902
Всё, проблема была из за названия найденного файла
José González - Step Out.mp3

подловил через исключение, сделал чтобы он енкодился в ютф-8 и всё заработало, только название у него кривое отображается, но и так норм
#149 #615969
Есть вопрос, вроде и не ньюфаг, но что-то уже не соображаю. Есть список словарей с некоторыми ключами. Нужно отсортировать этот список по ключу likes каждого словаря. Полагаю, нужно использовать функцию sorted, но как - не знаю

с меня как обычно
#150 #615972
>>615879
Установи кодировку консоли в юникод, должно помочь (консольная команда chcp вроде)
#151 #615973
>>615969
list.sort(key=lambda v:v['likes'])
#152 #615975
>>615969
sorted(list, key=lambda d: d['likes']) так?
#153 #615978
>>615973
дякую, анон.
#154 #616016
Таки додрючил learn the python by hard way
Какая же хуета. По прежнему нихуя круче Think Python я не видел.
sage #155 #616020
>>616016

>learn the python by hard way


Learn Python the Hard Way, так-то. Ты уверен что читал, а не картинки смотрел?
#156 #616022
>>616020
Ты прав.
Уверен, конечно же. Все нахуй задания под императивные нотки чуточку истеричного автора. Обрывочная хуйня пиздец.
#157 #616051
>>616022
А тебя предупреждали.
#158 #616069
>>616051
Повёлся что в западных интернетах она распиарена.
Ладно, добил и слава богу.

Всем неофитам надумавшим в будущем к ней приобщиться - не рекомендую.
#159 #616082
>>615902
Спермоклоунада.
#160 #616120
Тупейший вопрос уходящего года:

string = unicode('Карл у Клары украл коралы', 'UTF-8')
encodinglist = ['UTF-8', 'Latin-1', 'UTF-16', 'UTF-32', 'KOI-8R', 'CP1251']

for i in encodinglist: \tprint string.encode(i)

------
File "4-encode.py", line 2
SyntaxError: Non-ASCII character '\xca' in file 4-encode.py on line 2, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

без юникоде() ещё хуже
# -*- coding: ... - до задницы
ось - убунту, консоль 100% юникод
#161 #616124
>>616120
Как ты в latin-1 закодируешь кириллический символы? KOI8-R пишеттся так, а не "koi-8r".
сделай
for i in encodinglist: print string.encode(i, errors="ignore")
#162 #616125
>>616124
Я думал не будет символов для данного кода - будет пустое место.
Спасибо. Пересохранил файл как ютф-8, вписал *- кодинг ютф-8 - заработало. ПиЧарм что-то намудрил.
#163 #616126
>>616125

> не будет символов для данного кода - будет пустое место


Если стоит errors="ignore" иначе будет с ошибкой падать
#164 #616140
>>616069
У них распиарено все, что бесплатно и обычно это лютое говно.
273 Кб, 1280x960
поцоны, как сделать чтоби киска двигалась? #165 #616141
74 Кб, 755x1024
САМАУЧИТИЛЬ ПА ПИТОНУ!!111 ОТЛИЧНЫЙ #166 #616143
#167 #616144
https://github.com/mdevaev/emonoda
Вот смотрите какую кто-то поделку сделал. И архитектура неплохая на первый взгляд.
#168 #616182
>>616144
Вроде ничего, а с другой стороны зачем это? Не знаю, может так модно сейчас, но зачем хранить версии чужих либ. Нет, оно наверное понятно, чтобы если либы изменят свой api, чтобы поделка не сломалась. Но можно же прописать в setup.py/requirements.txt конкретные версии пакетов. И зачем использовать urllib, когда есть requests? Ну, и свой логгер, хотя вроде он как для цветов сделан, тогда, по-моему, лучше его по-другому назвать.
#169 #616183
>>616144
молодца, и >>616182 сей господин отчасти прав
#170 #616186
>>616141
import sys

Потом циклом пиши в sys.stdout.write() и не забудь sleep(0.1) поставить
550 Кб, 782x1200
#171 #616190
Я опять выхожу на связь. Вот допустим есть два скрипта. Первый transmitter.py просто печатает в sys.stdin:
http://pastebin.com/QVvNAZyD
Второй, resiver.py запускает transmitter.py, читает sys.stdout и печатает в терминал:
http://pastebin.com/EqyVPLGk
Получается что ресивер ждет пока трансмиттер закончит работу и вываливает все что получил. Мне же нужно, чтобы ресивер печатал передачу в реальном времени.
Похожее обсуждение нашел на стаковерфло:
http://stackoverflow.com/questions/803265/getting-realtime-output-using-subprocess
Но мне рецепты из этого треда нихуя не помогают. Питон 2.7, вин 7.
#172 #616209
>>616182
Ты лучше отпиши свои замечания на https://www.linux.org.ru/news/opensource/12234215 а не тут
sage #173 #616219
>>616144
Чо у него эта манда с русским readme? Непорядок.
#174 #616249
>>616190
Попробуй sys.stdout.flush() в трансмиттер добавить
#175 #616301
>>616249
Супер, помогло!
#176 #616308
Вот в жаваскрипте нельзя редактировать в файле отдельные строки - чиитаешь файл, меняешь строки и перезаписываешь файл целиком. А в питоне можно? Чтобы прочесть файл и изменить там только несколько строк.
#177 #616313
>>616209
Запостил, нах.
#178 #616316
>>616308
С помощью seek можно избежать полной перезаписи и перезаписать только строки после измененной.
Если записываешь в самый конец - можно не перезаписывать целиком, просто сделать append.

Еще через mmap можно извернуться, но тут скорее ты себе хуй отдавишь.
#179 #616317
>>616313
Там уже половина постеров из этого ИТТ. Даже питон3-не-нужен-кун отметился со своим ынтырпрайзным 2.6
#180 #616318
>>616317
Сдаётся мне и сам автор отсюда.
#181 #616361
>>616316
Нет, не в конец, а изменить только несколько строк посередине.
#182 #616387
>>616144
Нахуя это поделка нужна? Яннп. Торент клиенты и так показывают когда раздача обновилась. И в поиск могут. Велосипед ради велосипеда какой-то.
#183 #616412
>>616387
к веб-интерфейсу её прикручивать просто и на антресоль к домашнему серваку-файлопомойке, как мне кажется
#184 #616417
>>616387
Ну, звёздочки есть, контрибьюторы тоже. Значит это кому-то нужно.
#185 #616421
>>616387
Не твое вот и бесишься. Он успешный разработчик, а ты хелловорлды пиши иди.
#186 #616520

>2016


>python2

51 Кб, 227x282
#187 #616523
45 Кб, 164x180
#188 #616534
41 Кб, 164x180
#189 #616549
#190 #616642
>>616141
Нужно использовать коды ANSI, чтобы перемещать позицию курсора.

import colorama #если ты виндобыдло
colorama.init()

sys.stdout.write('\n\n\n\n')
while True:
time.sleep(1)
sys.stdout.write('\x1b[4A' + ' .....\n. O O .\n. - .\n .....\n')
time.sleep(1)
sys.stdout.write('\x1b[4A' + ' .....\n. - - .\n. - .\n .....\n')

Вместо ' .....\n. - - .\n. - .\n .....\n' вставить строку с котейкой.
Если просто сделать, как советует этот господин - >>616186, то у тебя будут выводиться сотни, тысячи котеек без анимации.
#191 #616655
>>616642
Можно еще добавлять в строку '\x1b[J', это будет очищать экран и убирать артефакты от прошлой отрисовки.
#193 #616669
>>616660
Или так. Grafoniy Edition
http://pastebin.com/X3tP18Mp
Выглядит просто пиздец. Кадры сделаешь сам, как надо. Я просто коряво отредактировал для демонстрации.
#194 #616674
>>616669
Прыжки прилагаются. Нужно для этого добавить перенос строки выше спины кота во втором кадре анимации.
А первый кадр отрисовывать на строку выше второго.
#195 #616817
Двач, скинь сылочку на курс по питонцу от эм ай ти , плиазики.
431 Кб, 783x1200
#196 #616818
Анон, это снова >>616190 кун.

Я окончательно заебался. Условия примерно те же, что и в моем пердыдущем вопросе.
Есть два скрипта. Первый transmitter.py запускает субпроцесс resiver.py в новой консоли и печатает туда через PIPE в stdit. Ресивер должен печететь получаемые строки в своей консоли.

>transmitter.py


from subprocess import Popen, PIPE, CREATE_NEW_CONSOLE
proc = Popen( ["py", "-3", "-u", "resiver.py"], shell=False, bufsize=1, creationflags=CREATE_NEW_CONSOLE, stdin=PIPE)
for line in range(11):
print >>proc.stdin, line

>resiver.py


import time, sys, fileinput
for line in fileinput.input():
print(line)
time.sleep(1)

Получается, что если запускать transmitter.py кликом мышки, на мгновение появляется 2 окна, и тут же закрываются. Елси добавлять принты в трансмиттер, то их можно заметить в первном окне. Елси запускать из сублайма, то появляется пустая консоль, а всесь вывод идет через консоль сублайма. Я подозреваю, что надо как-то переопределить sys.stdout для дочернего процесса. Все дело происходит в вин 7.
#197 #616881
>>616642
>>616655
>>616660
>>616669
>>616674
спасибо парни, но я как бы начинающий суперуровня, где конечная паста? вот моя: http://pastebin.com/kk8dKBB3
#198 #616893
>>616881
Ты хоть попытался понять принцип того, что я скидывал? Запускал код на своём компе?
Или ты ждешь уже готовое решение с готовой же анимацией?
Если последнее - то ты хуй, а про начинающего это уже отмазки. Дали направление, гугли и учись, экспериментируй.
#199 #616894
>>616818
Добавь input() в конец главного файла, чтобы окно с результатами не закрывалось после завершения программы.
А во второй да, попробуй добавить вместо print sys.stdout.write('bla bla').
#200 #616898
>>616894

>А во второй да, попробуй добавить вместо print sys.stdout.write('bla bla').


Хотя не прокатит.
2 Кб, 110x94
#201 #616934
Почему list быстрее, tuple, неба, аллаха и даже ситуации когда у каждого значения своё отдельное поле класса, а tuple тормозит на уровне dict?
http://ideone.com/OnaXuw
#202 #616943
>>616934
потому что в 2 гвидо хуйней какой-то занимался https://hg.python.org/cpython/file/2.7/Python/ceval.c#l1525
в 3 это убрали.
209 Кб, 917x1300
#203 #617260
Ну что же вы, котоны? Неужели ничего не посоветуете? >>616818 кун
#204 #617345
А вам что, инкремента через ++ не завезли?
#205 #617346
>>616520

>2016


>python

6 Кб, 762x144
#206 #617361
>>617346
Если не python, то что ?
#207 #617394
#209 #617429
>>617394

>2016


>C++

#210 #617473
Сап. Призываю SFML-гуру. Суть такова:
Есть спрайт прямоугольника rect. Есть окно window и его view.
Допустим, я хочу, чтобы при растягивании окна через
window.view = sf.View((0, 0, event.size[0], event.size[1]))
и изменении масштаба через
window.view.zoom(event.zoom)
абсолютный размер этого прямоугольника и его положение относительно границ окна не менялось.
Собственно, что уже пробовал:
1) присваивать windows.view кастомный sf.View(0, 0, 1.0, 1.0) - в таком случае меняется размер при ресайзе окна.
2) не присваивать кастомный view - тогда меняется размер при зуме.
Вопрос: что сделать, чтобы всё работало?
#211 #617513
Аноны, разжуйте мне, пожалуйста, как работает рекурсия. Я совсем ебанутый даун, не могу понять даже с примерами.
#212 #617565
>>617429

>2016


>не С++

52 Кб, 380x503
#213 #617577
Господа, может ли быть такое, что веб-версия Питона попросту не "вытаскивает" код?
Задача - http://codingbat.com/prob/p118406
Суть такова, написал решение в PyCharm, вроде пашет.
Переписываю его на сайт, ответ "Timed out"
Копирую в PyCharm то, что написал ранее в браузере - программа работает.
В задаче указано, что можно делать без лупов, но я тупой и сделал с лупами. Может в этом косяк?
#214 #617580
request = request.urlopen(url_all).read().decode()
request2 = request.urlopen(url_all).read().decode()
------
Что за хуйня пачаны? На вторую строчку ругается, на первую нет. Выдает

AttributeError: 'str' object has no attribute 'urlopen'
#215 #617585
>>617513
Мне кажется, ключевое в рекурсиях - это знание, что делает return и что происходит, когда функция вызывается внутри другой функции. Не совсем рекурсия, но близко к этому.

def f1():
print('f1')
return f2()

def f2():
print('f2')
return f3()

def f3():
print('f3')
return f4()

def f4():
print('f4')
return 4

print(f1())

выведет
f1
f2
f3
f4
4
f1 должна вернуть f2. То есть, f2 должна сделать свои действия и вернуть свой результат. Пока этого не произойдет, f1 "открыта", грубо говоря.
А f2 не вернет свой результат, пока его не вернет f3, который не вернет его, пока его не вернет f4.
Результат f4 будет вернут, как результат f3, который будет вернут как результат f2, который будет вернут как результат f1, и только после этого f1 будет выполнена.

На каждом этапе можно производить свои вычисления с результатом, кроме прямого использования return вложенной функции. Например,
def f3():
return 1 + f4().
Тогда f1 вернет 5.

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

def f1():
print('f1')
f2()
return 1

def f2():
print('f2')
f3()
return 2

def f3():
print('f3')
f4()
return 3

def f4():
print('f4')
return 4

print(f1())

Выдаст:
f1
f2
f3
f4
1

Рекурсия тут отличается тем, что внутри функции вызывается сама функция.
x = '0'
def func(x):
print('func call! arg: %s' % x)
x = x + '0'
if len(x) < 10:
return func(x)
else:
return x

print(func(x))

Выдаст:
func call! arg: 0
func call! arg: 00
func call! arg: 000
func call! arg: 0000
func call! arg: 00000
func call! arg: 000000
func call! arg: 0000000
func call! arg: 00000000
func call! arg: 000000000
0000000000

То есть, в каждом отдельном
if len(x) < 10:
return func(x)
происходит отдельный расчет func(x), результат которого передается return по окончанию.
То есть, до достижения где-то в этой стопке условия
else:
return x
у тебя есть стопка невыполненных функций, ожидающих вычисленного значения вложенных функций. Как только через вот это else какая-то функция выйдет из петли, это return x начнет передаваться return-ам наверх.
#215 #617585
>>617513
Мне кажется, ключевое в рекурсиях - это знание, что делает return и что происходит, когда функция вызывается внутри другой функции. Не совсем рекурсия, но близко к этому.

def f1():
print('f1')
return f2()

def f2():
print('f2')
return f3()

def f3():
print('f3')
return f4()

def f4():
print('f4')
return 4

print(f1())

выведет
f1
f2
f3
f4
4
f1 должна вернуть f2. То есть, f2 должна сделать свои действия и вернуть свой результат. Пока этого не произойдет, f1 "открыта", грубо говоря.
А f2 не вернет свой результат, пока его не вернет f3, который не вернет его, пока его не вернет f4.
Результат f4 будет вернут, как результат f3, который будет вернут как результат f2, который будет вернут как результат f1, и только после этого f1 будет выполнена.

На каждом этапе можно производить свои вычисления с результатом, кроме прямого использования return вложенной функции. Например,
def f3():
return 1 + f4().
Тогда f1 вернет 5.

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

def f1():
print('f1')
f2()
return 1

def f2():
print('f2')
f3()
return 2

def f3():
print('f3')
f4()
return 3

def f4():
print('f4')
return 4

print(f1())

Выдаст:
f1
f2
f3
f4
1

Рекурсия тут отличается тем, что внутри функции вызывается сама функция.
x = '0'
def func(x):
print('func call! arg: %s' % x)
x = x + '0'
if len(x) < 10:
return func(x)
else:
return x

print(func(x))

Выдаст:
func call! arg: 0
func call! arg: 00
func call! arg: 000
func call! arg: 0000
func call! arg: 00000
func call! arg: 000000
func call! arg: 0000000
func call! arg: 00000000
func call! arg: 000000000
0000000000

То есть, в каждом отдельном
if len(x) < 10:
return func(x)
происходит отдельный расчет func(x), результат которого передается return по окончанию.
То есть, до достижения где-то в этой стопке условия
else:
return x
у тебя есть стопка невыполненных функций, ожидающих вычисленного значения вложенных функций. Как только через вот это else какая-то функция выйдет из петли, это return x начнет передаваться return-ам наверх.
#216 #617588
>>617585
Ебаная говноразметка глотает отступы.
Закинул на ебучую пасту.

http://pastebin.com/phKPAPKL

Скопируй примеры и поиграйся. Уверен, у тебя проблемы с return и пониманием вызова вложенных функций.
#217 #617591
>>617580
Очки протри, ты request переписал
#218 #617603
>>617577
блять, неправильно нихуя, переделываю
#219 #617611
>>617591
Я знаю. А что, так нельзя? Поясните ньюфагу
#220 #617612
Всем привет! Есть многопоточное приложение, которое обращается к базе, но порой возникает затык "Mysql server has gone away", иногда падает сам mysql, я подозреваю, что это из-за кривой реализации обращения к базе. Как правильно делать связку с бд в многопоточных приложениях? Свой коннект у каждого потока, или общий пул коннектов с блокировкой? Или еще есть варианты?
#221 #617614
>>617611
Ты когда сделал import request
#222 #617620
>>617611
Ебаная макаба...
Ты когда сделал from urllib import request, поместил в переменную request объект, у которого есть все эти методы urlopen и т.д.
А потом переписал его результатом вызова request.urlopen(url_all).read().decode()
В переменной request оказалась строка, поэтому и ошибка AttributeError: 'str' object has no attribute 'urlopen'
#223 #617626
>>617603
Нахуя ты так усложнил?
#224 #617627
Аноны, я вот с днища начинаю кодить на Питоне, и у меня вопрос - как в нём писать графику и звуки? Само собой, я говорю о звуках в плане восьмибитных писков, а о графике в плане кругов и линий. У меня до этого опыт кодинга - только дошкольником на девяносто восьмой Винде на Бэйсике, и там это было легко, а тут всё, что он может выводить - только знаки и всё.
#225 #617635
>>617627
Для простейшей графики - http://mcsp.wartburg.edu/zelle/python/graphics.py
Со звуком не работал, поищи тут https://wiki.python.org/moin/Audio
#226 #617647
капец, я такой тупой, кто нибудь мне поясните по поводу создания шаблонов юрлов.

Вот у меня есть например отдельные модели Article и Category. Как мне прописать так в юрл патернс так, чтобы там само подставлялось название категории.

Я могу как нибудь в эти патерны переменную засунуть, ну или список категорий(который изменяется путем создания и удаления из админки)

кароч ниче не пойму, документацию вроде читал, но там такого не нашел
#227 #617661
>>617627
За графику и звуки отвечают библиотеки для создания gui. Из встроенного это tkinter. Из простого можещь еще установить pygame.
#228 #617663
>>617577

>ответ "Timed out"


Очевидно, что твой код слишком слоупочный, а на сервере есть ограничение на время работы кода.
#229 #617674
>>617260
Пиздос, я уже сам второй день пытаюсь понять, почему при использовании stdin = subprocess.PIPE не работает stdout, хотя он не был переопределен.
Стоит убрать stdin = subprocess.PIPE - все начинает выводиться в консоль, созданную с
creationflags=CREATE_NEW_CONSOLE.
Но упорно блять не хочет ничего выводить, стоит начать передавать какие-то данные через stdin.
#230 #617681
Вопрос по SQL.
В select есть условие:
select if(substr(Table.field,1,5)='penis', Table1.field1, Table2.field1)

Далее идёт куча джойнов, в том числе outer join.

Переписываю его на SQLAlchemy ORM, но результат получается другой. Вот этот кусок, но теперь он стоит в конце после других полей селекта:

func.IF(func.substr(Table.field,1,5)='penis', Table1.field1, Table2.field1)

Порядок перечисления полей в селекте как-то может влиять на результат?
Где я обосрался?
#231 #617682
>>617577
def make_bricks(small, big, goal):
..rest = (goal%5) if (goal/5 < big) else (goal - 5*big)
..return (rest <= small)
В две строчки, аз-аз-аз.
#232 #617684
>>617565

>2016


>не FORTRAN

#233 #617689
>>617626
учусь
>>617663
это и хотел узнать, спасибо
#234 #617692
>>617674
Отпишись если что-нибудь придумаешь, ибо я уже заебался. Даже подташнивать начинает когда думаю об этом. Инетресно, в линухе такая же фигня происходит? сблевал
#235 #617694
Не понимаю нифига:
http://pastebin.com/BbH74V13

Выплёвывает ошибку на

>for nick, chars in raw:


>ValueError: too many values to unpack

#236 #617696
>>617694
проебал чуть с кодом
if nick in wordsdict:
for i in chars: - нахуй не надо и уже удалено
wordsdict['nick'] += len(chars)
#237 #617698
>>617694
Посмотри что у тебя в raw хранится. Очевидно ты проебался разбивая строки или открывая файл.
#238 #617700
>>617698

>raw = [x.split(': ') for x in open('chat.txt', 'r').readlines()]


Так, наверое, лучше будет.
#239 #617718
Всем привет.
Хочу сделать такой сервис. Сначала программа забирает данные с некого API и, обработав их, отправляет их в мою базу. Причем нужно делать это непрерывно, ну или хотя бы раз в минуту. Затем к этой базе мы подключаемся через сайт на Django, что бы получать эти самые обработанные данные.
У меня есть опыт постройки несложны Django-проектов и я пробовал делать запросы к API, но в данном случае я не знаю как делать и чего гуглить. Нужно ли мне залезать в многопоточность, если я даже не знаю ничего про это? Держать ли скрипт, захватывающий данные с API в отдельно от Django проекта или делать все в одной папке? Какие еще инструменты или библиотеки могут пригодиться?
#240 #617768
>>617718
Celery с каким хочешь брокером для такой задачи достаточно.
#241 #617771
>>617700
>>617698
какой-то пиздец. добрый час проебался что бы понять что всё порет нахуй (....барабанная дробь...) ебанный символ новой строки в файле! это пидерастичное говнище и ломало мне всё нахуй. сам дурак но блядь.
#242 #617784
C недоучебника по питону на хабре:

2. Напишите подпрограмму табулирования функции, переданной в качестве аргумента. Так же аргументами задается начальное, конечное значение и шаг табуляции.

Кто-нибудь может объяснить что вообще тут хотят? Не врубаюсь
типа деф косинус..
а потом деф табкосинус(х_старт, х_энд, шаг): вайл косинус < x_енд: принт ....? Так что ли?
#243 #617788
Какие подводные камни в написании своей базы данных на питоне? Насколько мне известно, большинство баз написаны на плюсах или чистом Си. Дело только в скорости или есть ещё причины?
180 Кб, 858x664
#244 #617794

> деф косинус..


>а потом деф табкосинус(х_старт, х_энд, шаг): вайл косинус < x_енд: принт ....?



>>617788
Наверное, она будет слишком быстрой, не?
#245 #617798
>>617788

>написании своей базы данных на питоне


database = {}
77 Кб, 400x369
#246 #617844
>>617794

>эти шрифты


>эти засечки

#247 #617851
>>615127
О, был в том чатике.
#248 #617894
>>617851
А куда ушёл?
#249 #617895
>>617894
Ну там ребята все сделали и больше не переписывались особо.
34 Кб, 550x263
#250 #617906
Котаны, с чего начать разработку, например, вайпалки чата на каком-либо интрент ресурсе? Гуглить работу с сокетами? По какой теме статьи почитать?
#251 #617962
Ебать defaultdict магию хуярит, прям уиии!
#252 #617974
Как вот эту штуку:
raw = [x.split(': ') for x in open('11chat.txt')]
wordsdict = defaultdict(int)

for nick, mess in raw:
...wordsdict[nick] += len(mess)

Переделать в типа такой штуку:
f = open('filename.csv') # f is an iterator
field_names = f.next().split(',') # get the first item from the iterator using next()
records = [dict(zip(field_names, line.split(','))) for line in f] # this will pull remaining lines
print sum(int(record['quantity']) for record in records)

Ну т.е. без цикла вообще. Играюсь "по аналогии" уже 20 минут а толку хуй.
#253 #617991
>>617974
Using zip() with dict() you can combine a tuple of field names with a tuple of values and make a dictionary - combine with list comprehensions you can do this to an entire list in one go.

а как это в парсинг файла перевести я хуй понимаю
#254 #617992
>>615079
>>615079
поддерживаю афтора
#255 #618006
>>617647
Определи метод __str__ в модели, и потом через
Category.__str__ или что?
#257 #618080
Двач, есть у кого ссылка на курс питона от MIT???
#258 #618163
>>617692
Я так понимаю, надо ковырять в сторону deadlock. Если переопределить stdout в файл -то в него все прекрасно выводится, в тч посланное через stdin = subprocess.PIPE. Но как переопределить именно в собственную консоль дочернего процесса - вообще хз.
#259 #618174

>ковырять в сторону deadlock


Чет сомневаюсь. Ничего же не виснет, просто stdout субпроцессса перенаправляется хуй поймешь куда. Алсо, sublime каким-то хуем его перехватывает и выводит в свою консоль, если запускать скрипт из сублайма.
#260 #618212
>>618174
Если в ресивер добавить

import time, sys, fileinput

f = open('1111.txt', 'a')
f.write('a')

for line in fileinput.input():
f.write('b')
print(line)
time.sleep(1)

То при его самостоятельном запуске 'a' запишется в файл. Но при запуске transmitter.py в файл запишется нихуя. Код тупо не выполняется в трансмиттере, хотя запись в файл стоит выше fileinput.input().
#261 #618218
>>618212
f.flush() сделай
#262 #618222
>>618212
Словно, если stdin=PIPE установить, то и stdout тоже устанавливается равным PIPE.
Стоит переопределить stdout на файл, все начинает работать, как надо.
>>618218
Ничего не дало.
#263 #618226
>>618222
Пизжу, дало.
#264 #618234
>>618218
Но f.write('b') все равно ничего не пишет. Даже с f.flush() после.
#265 #618236
>>618234
Note: flush() does not necessarily write the file’s data to disk. Use flush() followed by os.fsync() to ensure this behavior.
#266 #618241
>>618236
f.write('b')
f.flush()
os.fsync(f.fileno())

The method fsync() forces write of file with file descriptor fd to disk. If you're starting with a Python file object f, first do f.flush(), and then do os.fsync(f.fileno()), to ensure that all internal buffers associated with f are written to disk.
http://www.tutorialspoint.com/python/os_fsync.htm
И нихуя. Блок for line in fileinput.input(): не выполняется, словно. Хз, как еще протестировать, что на нем зависает, если не переопределить stdout прямо.
#267 #618266
Почему у вас .index() при ненахождении нужных символов выдает ошибку и валит всю программу? Кто придумал это уебанство?
#268 #618268
>>618266
А, есть .find(), извиняюсь.
#270 #618283
>>618269
спасибо
#271 #618285
Создал на линуксе файл test.py, в нем написал print 'testing'. Запускаю, а вместо того, чтобы вывести мне консоль со словом тестинг ничего не происходит. Вызываю через консоль - пишет Not such file 'testing'. В чём дело?
#272 #618287
>>618285
Консоль первый раз видишь?
#273 #618292
>>618287
Нет. До этого работал с нодой, и если содать файл с console.log('testing'); и вызвать его через консоль, то всё бы отработало нормально.
#274 #618294
>>618292
Запускаешь через консоль как?
#275 #618298
>>618294
А, запустил через питон все нормально отработало, спасибо! А нельзя как нибудь упаковать в .sh на линуксе или .ехе на винде, чтобы исполнялось при обычном запуске?
#277 #618323
>>614738 (OP)
Добрый вечер.

Я аутист пилю игру на питоне, через библиотеку pygame, пилю в саблаймике, потом просто запускаю скрипт, у меня вопрос, я смотрю на то, как пилят в IDE всяких и теку завистью. Там понимаешь подсказочки, всё подсвечивается, а у меня нихуя. Как сделать так, что бы саблаймик всё это подсвечивал? Так же как в эклипсе шоб.
#278 #618332
>>618323
Установить эклипс.
#279 #618334
>>618332
Слишком ненужно. Зачем мне этот монстр, если у меня саблаймик делает всё то же самое помимо подсказок и подсветки, да.

Алсо, на счёт самого питона и pygame, чому у меня одно окошко с объектом, который двигается туда-сюда жутко нагружает пеку? Ну прям реально оче сильно. Нормально, что питон сжирает много ресурсов?
#280 #618335
>>618334
Нет, наговнокодил ты где-то. Должно быть вполне спокойно возможно миллиончики полигонов делать, уж хотя бы на одном объекте.
#281 #618353
Посоны, я жиденько обожрался в коде и не могу понять в чем причина
#282 #618354
Глянте плз
http://pastebin.com/Sga4ThWh
#283 #618355
Затык на строке
row = self._Database.get_element_by_conditions(opts)

Но никаких ошибок оно не выдает
#284 #618365
>>614917
Python standard library by example
#285 #618429
>>618334
Циклы while сжирают максимум доступных ресурсов, если в них не приписывать time.sleep(1), например.
#286 #618540
>>618355

>Затык на строке


Что за затык за тебя догадываться нужно?
#287 #618541
>>618355
conditions="1"
sql = 'select * from %s where %s' % (tablename, conditions)

Вот это что за хуйня?
#288 #618564
>>618541
чем-то похоже на пхпшучу

значит так:
select VSE from TABLITSANAME where CONDITIONS

а теперь подумай где может быть затык
#289 #618579
>>618564
Так нельзя делать. Используй подстановку переменных из твоего db драйвера.
#290 #618589
>>618564
Ну и? Что это за WHERE 1, а?
#291 #618598
>>618589
Примерно тоже самое, что в питоне написать.
if 1: print('foo')
или while 1:
#293 #618611
>>618598
>>618600
Ладно. Добавь
sql = ...
print(sql)
#294 #618623
Анон, поясни нубу. Начал изучать Питон, увидел, что кроме питона есть JPython, Cpython, QPython, нету только *пайтона. что это такое. Чистый питон не используется нигде или как? нужно учить сразу какой то особый пайтон?
#295 #618628
>>618623
cpython эталонная и можно сказать дефолтная реализация, используется в 95% случаев.
#296 #618634
>>618623
Питон один, то все интерпретаторы
#297 #618638
>>618634
Cython конпелируемый.
#298 #618644
Какое GUI лучшее и кроссплатформенное? Есть всякие PyQt, PyGtk, но они же только на одну систему, да? А надо чтоб на основные ДЕ линя и винду.
#299 #618648
>>618644
Все основные питоногуи кроссплатформенные. Из наиболее популярных pygobject для gtk (pygtk устаревшая реализация) и pyqt/pyside для Qt
#300 #618652
>>618644
Я сам еще ничего кроме tkinter'а не пробовал, но PyGtk по скринам показался самым приятным, лишенным уебанских остроугольных окон и элементов интерфейса.
Инфа про его отсутствие на винде вроде устаревшая, не? По крайней мере, для винды инсталляторы есть на офсайте.
#301 #618654
>>618652

>По крайней мере, для винды инсталляторы есть на офсайте.


Ты оффсайт pygtk то читал? На нем прямо в шапке написано:

>Note: New users are encouraged to use GTK+3 through the PyGObject bindings instead of using PyGTK with GTK+2.


Для гтк надо использовать https://wiki.gnome.org/Projects/PyGObject
И в случае венды гтк с кутями подхватывают системную вендовую тему, в случае линукса - тему тулкита. Никто в 2016 не форсит свои темы для отдельных приложений.
#302 #618656
>>618654
Да, читал. Там же советуют пользоваться PyGtk, если виндобыдло. Типа, пока не появится норм инталлятор у PyGo.
#303 #618657
>>618656
Сто лет уже вендовые инсталляторы есть.
#304 #618658
>>618656
Хотя, щас смотрю, а эти инсталляторы у PyGo уже есть.
#305 #618659
>>618652
pygtk тыщу лет как на винде есть, по крайней мере лет 7 назад был. Но многие жалуются что gtk контролы на винде выглядит ненативно типа.
#306 #618665
>>618659
Лишний раз доказывает, что рашкоинтернеты - ебаная деревня и провинция с протухшей инфой, неактуальной годами. Вредно их читать.
#307 #618668
>>618665
Это ты европейских интернетов не видел.
#308 #618671
>>618668
Нет никаких европейских интернетов. Есть интернет, который англоязычный, и все остальные параши на локальных языках, отстающие от интернета на пару лет.
#309 #618699
>>618673
Мест что бы посрать вопросами настолько много, что ещё одно не нужно вообще никому.
105 Кб, 429x350
#310 #618707
Есть одна джанго, нужно запускать в фоне много-много потоков(аудиостримы) которые должны работать самы по себе и по минимуму зависеть от джанги но управляться(запуск/удаления) с нее.
Пока что думаю вынести это в отдельное приложение и реализовать через нативный multithreading а управлять этой хуитой с django через dbus интерфейс, как такой вариант?

>>618673
Так и не пришел инвайт.
#311 #618708
>>618699
Там удобней общаться тем, что не анонимно.
>>618707
Попробуй на другую почту, либо оставь фейкомыльце в треде, я скину инвайт.
#312 #618712
>>618708
Съеби.
#313 #618735
>>618712
Или что?
#314 #618738
>>618735
Или не съеби, очевидно же.
#315 #618780
>>618540
там не происходит ничего вообще. Эта строка и все последующий просто игнорируются
#316 #618781
>>618541
Эта хуйня приехала примяком из старого кода (таких вызовов там тьма). Если передана только таблица - забирать из нее все
#317 #618814
>>614738 (OP)
Начитался всяких тредов про ардуины, решил освоить python для интереса, давно хотелось. Прочел книгу из шапки(160 страниц), понравилось, но там очень поверхностно. Скачал книгу за авторством Лутца, но там 1200 страниц воды, это ж песдетс.
Насоветуйте пожалуйста что-нибудь почитать кратко и по делу.
Алсо хотел спросить - джанго это я так понимаю самый популярный фреймворк для веб-приложений, так?
#319 #618849
>>618814
Think Python мой фаворит из книг. Есть на русском, есть на мовi английской, всё в меру сжато и туда-сюда по применимым к жизни примерам.
#320 #618897
>>618814
Да ты охуел, у Лутца идеальная книга для новичков, относительно всяких онлайнкурсов уж точно.
Куча примеров, результаты каждого примера приводятся, чуть ли не каждая строка и ньюанс поясняются.
Если у тебя нет других языков за плечами - подрачивая на "кратко и по делу" рискуешь не смочь нихуя написать после этого краткого изучения.
#321 #618899
>>618897
А еще Изучаем Питон не раз пригодится в качестве справочника на первых порах, куча инфы, которая не лежит на первых страницах гугла.
#322 #618931
Изучил основы питона. Какую консольную программу можно написать? Подкиньте идей.
#324 #618935
>>618897
У меня есть опыт джавы тырпрайза, немного знаю функциональную дрисню, гуглить умею.
1200 страниц это конечно перебор, да и язык сам по себе простой, чем там разжевывать.
>>618814 кун
#325 #618940
>>618931
Автоматизируй всё и вся. Загрузку в дропбоксы-хуёксы, е-мейлы мамке, одной тне "давай ебаться потому что ххх"через какое-нибудь вк_апи, фтп-поисковики если ещё локалка провайдера сохранилась, парсинг говна с али экспресса что бы потом выгружать в твой же будущий магазик на чайнабай.мухосранск.ру прибавив 40% стоимости и пообещав доставку вожделённого говна в течении двух месяцев, да хоть таймер блин что бы из баша запускать через алиас + аргументы
#327 #618947
>>618931
Имиджборду
#328 #618955
>>618935
Читай официальный туториал на оф сайте и потом документацию.
Вот ещё годнота по стандартной библиотеке https://pymotw.com/3/ https://pymotw.com/2/
#329 #618982
>>618355
>>618354
Ну так и что в 'row' записывается-то?

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

Кстати, вот у тебя есть классовый атрибут, connection, который ты будто бы через self.connection изменяешь. На самом деле классовый так None и останется, а у объекта появится свой. Зачем это так?
305 Кб, 1261x1000
206 Кб, 1920x1080
#330 #618991
>>618931
Подкинул, крути.
#331 #619000
>>618982
Приложение многопоточное и у каждого потока свое соединение с базой данных, если делать одно соединение на всех, то сервер при нагрузке вываливает ошибку 2006
#332 #619003
>>619000
Не, ну так инстанс-атрибут-то я убирать и не предлагал. Меня наличие классового волнует, если он не используется, насколько я понимаю. Или-таки где-то используется?
#333 #619005
>>619003
Нет, классовый можно убрать, но проблему это не отменяет.
#334 #619008
>>619000
threading.local
#335 #619010
Анон помоги. Я запутался. Суть такова. Есть простейший сценарий. Самой первой строкой я прописал кодировку # coding=utf-8, дабы оно воспринимало кириллицу. Но консолька винды наотрез отказывалась выводить кирилицу. В итоге, методом научного тыка я допёр до следующей конструкции. Вопрос в том, во что оно в итоге мне декодирует строку, ведь изначально, если я правильно понимаю, моя строка в utf-8.

print 'Пакуем файл '.decode('utf-8') + currentfile
#336 #619012
>>619010
Если у тебя питон2 то надо писать u'Пакуем файл'
#337 #619014
Вот вам тест, содомиты. https://alexbers.com/python_quiz/

Ответил правильно на 30%. Заставляет почитать родную красноглазую документацию в BNF нотации и пояснения. А также задуматься о гнильце данного языка. Хуже только похапе и яваскрипт по количеству подводных сюрпризов, особенно когда пишется что-то сложнее гостевухи.
#338 #619015
>>619012
u'Пакуем', то бишь unicode, если я правильно понимаю. А в какой кодировке она изначально была?
#339 #619016
>>619015
utf-8, а типа данных str
12 Кб, 665x132
#340 #619020
>>619014
Такие дела.
#342 #619024
>>619014
А что не так-то? Ну кроме разве что того что // возвращает float если один из аргументов float (но все равно округляет).
#343 #619030
>>619010

># coding=utf-8


Нужно исключительно, чтобы при редактировании файла IDLE не выдавал кракозябры.
Если у тебя третий питон - там все строки - юникод, а кодировку подхватывает системную.
Это причиняет БОЛЬ, если ты еще и виндобыдло, так как кодировка там совусем не UTF-8.
#344 #619034
#345 #619043
>>619024
Просто мысли вслух. Каждый динамический язык вызывает у меня баребух. В питоне все усугублено девственником-сениором, который кончает от однострочников, знания сотни аспектов утиной типизации, и с радостью отсосал бы Гвидо за эти чудные знания, делающие его Особенным. Готовлюсь на позицию мида, и вместо архитектурных аспектов и предметной практики должен зубрить это говно.

a = 1 < 2 == 2 > 1 in [1,2,3] < [2,3,4,5] != 1
#346 #619045
>>619022
Где мой сок?
#347 #619046
>>619014
Подорвался с
def f(a):
pass

f(a for a in [1,2])

Я так понимаю, генераторы списков, и тд отличаются лишь тем, что generator object передаются list(<generator object>), dict(<generator object>) и тому подобное?
#348 #619047
>>619043
В реальной практике такое говно не нужно и так никто не пишет.
#349 #619048
>>619046
Мне почему-то казалось, что там у каждого своя реализация, отсюда и различия в скорости выполнения.
#350 #619050
>>619046
Ну в общем да. Генератор объект пишется в скобочках, но если ты передаешь его в функцию типа max(i for i in range(5)) но вторые скобочки внутри писать не обязательно.
Ещё для tuple скобки не обязательны. И наоборот можно писать выражения в скобочках типа if (x>0) или x=(1) и это не влияет.
Но вроде в генераторе списков какие-то оптимизации, хотя хз.
Генератор словарей и set`ов вообще совсем недавно добавили, так то это сахар над dict(k,v for k,v in)
#351 #619051
>>619050
Ну хз
def f(a):
print(a)

f(a for a in [1,2])

Выдает <generator object <genexpr> at 0x00449120>.
Из которого можно сделать список, кортеж или множество.
104 Кб, 959x748
#352 #619052
Подскажите что за фигня, не могу новые поля в базу данных внести
#353 #619054
>>619051
Потому что generator object это инератор а функции dict, list и tuple принимают в качестве аргумента интератор.
https://www.python.org/dev/peps/pep-0202/ появились в питоне раньше, чем https://www.python.org/dev/peps/pep-0289/
#354 #619055
>>619054
*только вот
#355 #619057
>>619054

>инератор


Итератор? Тогда почему из них нельзя ничего достать через
for x in generator:
bla bla
?
#356 #619058
>>619057
Хотя, достается.
<generator object <genexpr> at 0x02A96270>
<generator object <genexpr> at 0x02A96270>
#357 #619059
>>619058
Кек, элементы генератора - тоже генераторы.
#358 #619060
>>619047
Спросит очкастая малолетняя мразь вот эту хуйню >>619046 на собеседовании и домой поедешь. Тупо чтобы пояснить тебе, что он Элита, а ты плебс в его системе гвидоценностей. Еще с/с++ аутисты любят подобные фокусы.
3 Кб, 307x100
#359 #619061
#360 #619063
>>619060
Попадаются такие ты прав. Но это неадекваты же. Тем более если они будут всех таким заебывать они вообще никогда никого не возьмут на работу.
Всё равно лучше баб из hr которые логические задачки тебе дают. Или дебильные вопросы всякие. Я тут видел видео hr бабы которая объясняла что при приеме на работу сисадмина надо обращать внимание на форму ушей и подбородка типа физиономистика если уши острые он умный.
#361 #619064
>>619060
Или дают тестовое задание написать целый блять проект(хоть и небольшой). А это занимает часа 2-3 минимум, а то и целый день убьешь, пока всё оформишь нормально.
#362 #619066
>>619063
Эйчары как хомячки: маленькие, глупенькие, но приятные на ощупь. Тем и прекрасны. Первые пару раз их конечно придётся потерпеть, зато дальше уже если нормальный специалист будешь ходить без них прямо к ПМу/тимлиду.
#363 #619068
>>619066
От конторы зависит. Где-то обязательно надо с ними общаться. Где-то вообще надо несколько собеседовний проходить, а под конец могут сказать мы перезвоним. В одной фирме прошел все технические собеседование в разные дни, все были очень довольны, под конец надо было чтобы директор на тебя посмотрел. Он посмотрел и сказал "нет типа рожей не вышел".
#364 #619069
>>619064>>619068

Я по своей не айти сфере как-то работу профильную 2 года искал. При этом у меня было 5 лет стажа в западных компаниях и консалтинге, и даже на момент поиска новой работы я всё ещё на старой работал. Что там день, блин, я бывало на собеседования в БОДАЙБО летал. А ты хоть можешь пресдавить где Бодайбо? То то же.
И ничего, пережил. А вы нежничаете.
33 Кб, 640x480
#365 #619071
>>619066
А где-то вообще просто спрашивают "ну ты это-то знаешь". "ага" "окей ты нанят". Такое тоже было.
#366 #619108
Почему {1,2,3}<{2,3,4,5} - это False? Какого хуя вообще творится с множествами при их сравнении?
Даже {1}<{2} - это False.
#367 #619112
>>619108
Two sets are equal if and only if every element of each set is contained in the other (each is a subset of the other). A set is less than another set if and only if the first set is a proper subset of the second set (is a subset, but is not equal). A set is greater than another set if and only if the first set is a proper superset of the second set (is a superset, but is not equal).
#368 #619115
>>619112
Отдельный пиздец, что это совершенно не относится к словарям. Их нельзя сравнить по такому же принципу вхождения, но можно сравнить на '=='.
#369 #619116
>>619115
У меня от этого ЯВНОЕ ЛУЧШЕ НЕЯВНОГО.
#370 #619117
>>619115
>>619108
Полуебок, ты понимаешь что такое sets?
#371 #619120
>>619117
Понимаю. А ты понимаешь, почему нельзя {1:'a', 2:'b', 3:'c'} > {1:'a', 2:'b'}, но можно {1, 2, 3} > {1, 2}
#372 #619122
>>619120
Потому что совершенно разные типы?
#373 #619124
>>619120
Где? В каждой паре они одинаковы.
#374 #619129
>>619120
Возможно, потому что Dict - hashable type, а set - net. Только хз, как это влияет на операции сравнения.
171 Кб, 1333x1346
#375 #619133
Два дня тупил, потому что в далекой и забытой функции почему-то написал break вместо continue.
#376 #619143
Пачаны, такое дело. Накидал скрипт для работы с аудиозаписями ВК(скачать пачкой, удалить и тд). И хотел бы прикрутить к этому дерьму ГУЙ, что еще ниразу не делал.
Посоветуйте что выбрать и с каких манов начать.
#377 #619149
>>619129
Ни dict, ни set не являются хешируемыми. dict сравнивается только на равенство. Сравнение множеств — сахар для функций subset, upperset (или как там она) и прочих.
>>619014
Квиз говно, так никто не пишет.
#378 #619161
dict можно сравнивать как set с помощью .keys(), .values()
#379 #619162
>>619149

>subset, upperset


А, тогда ясно.
#380 #619164
Джанго плюется IntegrityError (1048, "Column 'xxxx_id' cannot be null") при попытке добавить в mysql базу запись с ForeignKey(User) через админку или шелл. Беглое гугление называет две основные причины: таблицы используют myisam или экземпляр User еще не создан. Первый вариант отпадает, я проверял свои таблицы. Что касается второго, то, допустим, когда я буду писать свою логику сохранения новых записей, я этот экземпляр создам вручную. А как научить админку его создавать? И почему во всяких туториалах все работает и в таком виде? sqlite пизже в этом случае, чем mysql?
#381 #619165
>>619161
Сначала проверить, вхожи ли все ключи одного словаря в ключи другого, а потом проверить из значения на равенство?
#382 #619169
>>619164

>В моделях Django, вы можете указать, что поле допускает значения NULL, добавив параметр null=True в определение поля.


http://djbook.ru/ch06s06.html
#383 #619170
>>619165
На равенство можно == проверять. А вот .keys(), .values() позволяют сравнивать ключи, значения как множества.
#384 #619174
>>619169
Хочу, чтобы работало с not null, как задумано.

Алсо, про sqlite спиздел - там оно тоже не работает. Туториалы нам врут.
#385 #619182
>>619170
Они же списки возвращают. Списки сравниваются не как множества.
#388 #619198
>>619194

> tutorialspoint


> Я ли?


Ты, точно.
13 Кб, 358x210
#389 #619200
#390 #619226
>>619174
Все, решил свою проблему оверрайдом в соответствующем классе в admin.py:

[code lang="python"]
from django.contrib.auth.models import User

class XxxxAdmin(admin.ModelAdmin):
# ...
def save_model(self, request, obj, form, change):
obj.xxxx = User.objects.get(id=request.user.id)
obj.save()
[/code]
#391 #619266
>>619115
а словари тут вообще при чем? на множествах есть частичный порядок по включению, на словарях нет более-менее нормальных отношений частичного порядка, и что дальше?
еще бомпани от того что min({1}, {2}) != min({2}, {1}).
#392 #619271
Значит так, друзья (все мои). С питоном знаком (ну там математика в основном). А в веб никогда не лез. Решил попробовать джангу. Но сейчас не об этом. Есть задача парсить википедию. Конкретно получить данные из таблиц. Я то думал, что раз я знаю математику, то парсинг это херня лёгкая для обезьян. Поставил себе прекрасное мыло (Beautiful Soup). Скачал для теста страничку html. но чёрт возьми. Что же там всё такое страшное? "?;У*?)(ОРТА" Вот такого плана херня. Как грамотно делать парсинг? Смотреть, какие бывают варианты таблиц и тупо хардкодить всё?
#393 #619277
>>619271
Погляди это:
https://pypi.python.org/pypi/wikipedia

сам не пробовал, но вроде то что тебе нужно
#394 #619300
>>619277
Добра. Пойду пробовать.
#395 #619304
Хочу угореть по разным прикладным приложениям, желательно кроссплатформенным, линукс приоритетней. Какой фреймворк учить? Джанго, асинк и прочее - это же веб?
#396 #619315
>>619304
PyQt4/5, остальное исходя из задач
#397 #619317
>>619304
Сам не знаешь чего хочешь. Каким приложениям? Гуевым? Консольным? Джанго - веб бекенд, асинк ты вообще не в тему вставил.
251 Кб, 2048x1536
Программирование на python (мне зачтется) #398 #619327
http://informatics.mccme.ru/course/view.php?id=156

неплохая теория для начинающих!

Доброго утречка, мои зайчишки-шалунишки! Опять сонненькие, сладенькие котятки? Ну ка, давайте маленькие, просыпайтесь, мордочку умывульки, лапками потягульки-потягульки! Одну лапку подняли, другу лапку подняли - полетели, полетели, полетели, наааа головку сели. Какие вы у меня умнички, медвежатки ласковые, пингвинчики прямо ня, люблю вас всех, нежненькие мои, любименькие, лапками няшите игриво, лентюльки мои пушистенькие, вставать не хотите, глазки сонные, ушки маленькие, мордочкой кривите, а я вас обниму так нежненько, на коленочку посажу и к животику нежненько прижму, чтобы вы бурундчуки махонькие не мёрзли, мурлыкой фыркали приятно так, тёпленько в ладошку и хвостиками хитрили, как котятки смешнявые, ня воть :3
#399 #619330
>>618814
Доброго утречка, мои зайчишки-шалунишки! Опять сонненькие, сладенькие котятки? Ну ка, давайте маленькие, просыпайтесь, мордочку умывульки, лапками потягульки-потягульки! Одну лапку подняли, другу лапку подняли - полетели, полетели, полетели, наааа головку сели. Какие вы у меня умнички, медвежатки ласковые, пингвинчики прямо ня, люблю вас всех, нежненькие мои, любименькие, лапками няшите игриво, лентюльки мои пушистенькие, вставать не хотите, глазки сонные, ушки маленькие, мордочкой кривите, а я вас обниму так нежненько, на коленочку посажу и к животику нежненько прижму, чтобы вы бурундчуки махонькие не мёрзли, мурлыкой фыркали приятно так, тёпленько в ладошку и хвостиками хитрили, как котятки смешнявые, ня воть :3 http://informatics.mccme.ru/course/view.php?id=156
#400 #619331
>>618849

>Think Python мой фаворит из книг. Есть на русском,


tkv7XtktktkANUS;uNinboxPUNCTUMr+Ebu прошу)
#402 #619374
>>619014
Как будто квиз составляли чтобы оправдать собственный обосрамс, но все же кое что узнал это уже мой обосрамс
В 29 правильно расставил скобочки
(1 < 2) == (2 > ((1 in [1,2,3]) < ([2,3,4,5] != 1)))?
В 39 вообще пушка. Приватность не завезли, зато придумали какой-то костыль с трансформацией переменной класса, охуеть вообще, и главное нахуя.
#403 #619378
>>617414
что это?
#404 #619380
>>619378
Это ты не умеешь в гугл.
#405 #619386
Кто питоном на апворке подрабатывает, что в треде?
#406 #619390
>>619317
Преимущественно гуевыми, но консольные тоже пойдут.
#407 #619393
С FIFE кто нибудь работал?
#408 #619396
>>619390
pyqt/pyside для qt, pygobject для gtk
curses для консольных, urwid если ленивый.
Для cli все в стандартном питоне есть.

Надо это все в шапку запихнуть, по десять раз за тред спрашивают.
#409 #619406
>>619271
wikitools еще глянь.
У wikipedia нет возможности получать список статей и подкатегорий в категориях, например.
А у wikitools нет способа получать случайную статью, без прямого запроса через API.
#410 #619414
>>619393
Это тот, что движок для изометрических игорей?
#411 #619417
>>619396
Спасибо! Да, в шапку надо.
#412 #619419
>>619414
Он самый. Пишут любой жанр можно сделать, свой фоллач написать.
#413 #619420
>>619406
А еще wikipedia постоянно подрывается в бесконечные циклы на русской википедии. Там 80% статей - Иван Иванычи Залупкины и по 5 статей про Ивановские сельские советы, ссылающихся друг на друга.
В wikipedia возвращается только строковое название страницы, ищется по нему же. И в этом проблема.
wikitools же возвращает почти везде уже объект конкретной страницы, со набором данных в атрибутах класса.
#414 #619421
>>619420

>Там 80% статей - Иван Иванычи Залупкины


Так а ты чего хотел? Русскую википедию недавно ботами наполняли, чтобы на какое-то там место по популярности языков википедии выйти.
#415 #619424
Педоны, почему здесь возникает memory error?

https://ideone.com/u6swAk
#416 #619427
>>619421
Я так и подумал, когда делал себе бота для сортировки случайных статей по категориям. На английской он выдает куда больше полезной инфы без 100500 категорий уровня "Умершие 21 января" или "Родившиеся в 2001 году" в черном списке.
И при всем этом там больше статей.
#417 #619451
>>619424
Потому что ты питон компилируешь компилятором С++?
sage #418 #619467
>>619424
Если ты на 2 версии, то используй xrange вместо range
#419 #619486
>>619374

>В 29 правильно расставил скобочки (1 < 2) == (2 > ((1 in [1,2,3]) < ([2,3,4,5] != 1)))?


a R b Q c где R, Q - операторы сравнения, означает a R b and b Q c, только b вычисляется один раз. Математические формулы не видел никогда чтоли? Единственный подвох тут - лалки могут не знать, что in это тоже оператор сравнения.
>>619378
Говнище под названием "вольфрам математика".
#420 #619489
>>619374

> какой-то костыль с трансформацией переменной класса, охуеть вообще, и главное нахуя.


Ты документацию хоть почитай.
#421 #619528
Подскажите хостинг, на который можно сайтец на джанго залить
#422 #619531
>>619528
Любая впс.
#424 #619536
>>619528
Питон энивеар
#425 #619537
>>619532
Съеби уже в свой 2004, деградант.
#426 #619543
>>619486
Ебать я лалка.
>>619489
Читай. Не один я интересуюсь полезностью этой хуйни http://stackoverflow.com/questions/1162234/what-is-the-benefit-of-private-name-mangling-in-python
#427 #619545
>>619543
Насчет полезности - никогда этой хуйней сам не пользовался.
#428 #619568
>>619528
heroku
pythonanywhere
#429 #619569
А есть что-нибудь по django в схожей стилистике с Rails Tutorial? Или просто порекомендуйте годную книгу по джанге, пожалуйста.
#430 #619570
>>619569
django tutorial на оф сайте. rails tutorial не читал.
годная книжка 2 scoops of django.
#431 #619572
>>619570
Спасибо. В rails tutorial ты просто пилишь клон твиттера от начала до конца.
#432 #619584
>>619572
На оффсайте только основы, да и на ютубах одно и то же. Здесь, разве что, пару интересных моментов подсмотрел https://www.youtube.com/playlist?list=PLEsfXFp6DpzRcd-q4vR5qAgOZUuz8041S

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

мимо_джанго_ньюфаг
#433 #619602
>>619572
Я находил штуки три туториала по джанге с запилом твиттера, завтра ссылки гляну если сам к тому времени не найдёшь
#435 #619619
В чем разница между (1,2) и [1,2]? Это же всё массивы. Чем они отличаются?
#436 #619631
>>619619
Про {1,2} забыл еще.
#437 #619644
>>619619
(1,2) - tuple. он иммутабелен
[1,2] - list. он мутабелен
{1,2} - set. множество. в нем только уникальные элементы и порядок не сохраняется(как ключи у словаря).
#438 #619679
>>619644
Картинка с бро-не бро так и просится к твоему посту.
#439 #619748
>>619679
Что несёшь?!
>>619631
set мутабелен. Раз уж ты описал эти свойства других контейнеров.
#440 #619770
>>619748
tuple - иммутабелен, имеет метод __hash__ и может быть ключем у dict'а. Функциональный подход считается современным, и способствующим уменьшению числа глупых ошибок. Tuple - твой бро. примерно это
#441 #619774
>>619770
Это не было очевидно из этих двух постов.
#442 #619789
Я написал свой блекджек! Рейтаните на говнокодерство https://github.com/Vladimir37/Blackjack/blob/master/blackjack.py
#443 #619794
>>619789
Я бы приминил всякие фишки питона тут. Например чтобы можно было писать:
Card(10,'club') > Card(6, 'club')
Или sum(cards_list)
Ещё запилил бы класс Deck(колода) который бы перемешивал карты сам и можно было брать карту из него методом.
Карточные игры всякие хорошая практика в ооп.
#444 #619813
>>619789
Зачем выкладывать такой мусор на гитхаб? Не, понятно что раз дают возможность - можно заабузить и хоть бэкапы там хранить, но авторитета это твоему профилю не прибавляет.
125 Кб, 640x896
1299 Кб, 3046x1050
#445 #619818
Суп, анончики. Написал тут скриптец, чтобы он мне стримцы с твича из консольки лайвстримером запускал.

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

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

Второй питон, сурцы тут http://pastebin.com/18MeL1Ws

inb4: анимеребенок съеби, лолопараша не нужна, нахуя вообще стримы смотреть
#446 #619819
>>619818
хз у меня вот такое есть в закладках https://github.com/neithere/argh
А стримы твои youtube-dl скорее всего умеер
#447 #619820
Парни, хоть вопрос и не сюда, но раз уж об api заговорили, а перескажите что было за последние лет 7 с апи этими всеми?
Когда уходил из профессии все спорили что выбрать: mootools или jquery, все искали тысячу способов генерить XML для ajax, а сейчас куда не гляжу - всюду json'ы которые примерно та же фигня по логике что и XML только чуть по-другому.
А angular это что? А coffee script?
#448 #619822
>>619820
говно это всё. есть ещё backbone, react всякие. ещё что-то. дохрена этого всего наделали плюс остается старое говно типа extjs и прочих
#449 #619823
>>619818
У тебя линукс? Блин, а у меня лолец с вайном не пошел. Всё работает, но шмотки не покупаются. Играю с виртуалки как сыч
#450 #619824
>>619820
А api что api все используют https://en.wikipedia.org/wiki/Representational_state_transfer которые отдает ответы в виде json. А клиентом к этому апи выступает или браузер со всеми этими модными библиотеками или мобильное приложение или десктопное даже иногда.
#451 #619825
>>619822
Ну это да, я так и понял примерно хоть и не особо понимаю что именно оно делает и как
>>619824
А ангуляр зачем? Я понимаю что аналогии фронтэнда и бекенда искать бесполезно, но все же писал сегодня консольную фигню что бы погоду в баш печатало с опенвезермап, там жсон приходит-парсится в одну строку как так и надо самой стандартной библиотекой питона. А жс чего, разучился уже это делать? Не понимаю.
#452 #619826
>>619825
Ангуляр чтобы на основе данных которые приходят с бэкэнда и виде json рисовать это всё в бразере т.е. оно включает в себя что-то типа шаблонов на клиентсайде, формы и т.п.
Сам я его нихуя не знаю и что-то лень учить. javascript был норм пока был простым сравнительно. сейчас это какой-то пиздец пусть фрондендщики сами ебутся.
97 Кб, 640x896
#453 #619827
>>619819
Спасибо за ссылочку. Обязательно гляну.
А вот за youtube-dl не знаю. Я думал он для немного другого использовался или тот же лайвстример его сам использует. Но я им напрямую только видосики с ютубов воровал...

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

>>619823
Да. Бубунта.
Ничего не скажу про лолец под вайном. Я только под шиндовском играл, лол. Но я уже сезона, наверно так, джва, как не играю сам. Дальше нижней платины даже на рашке не смог подняться. Отчаялся и забыл. Сейчас только по испорту угораю - лкс и прочей бесполезной хуйне.
#454 #619828
>>619826
Ну вроде как понял

спасибо за ответы, парни
#455 #619829
>>619827
Ну ты не прав. Нужно играть, совершенствоваться и все дела. Даймонд.
#456 #619830
>>619829

>играть


>совершенствоваться


/0
#457 #619833
Я чё-то Flask-Login понять не могу нихуя. Как мне понять, аутентифицирован ли пользователь? Поясните с примерами.
#458 #619838
>>619813
Нульчую.
>>619820
Во фронте много перемен. json хорош, для людей зделан. Факт, что появились языки компилирующиеся в жс говорит о том, что жс — монополист, но далеко не всем нравится. Реакт заебись, сам во фронт редко захожу, но после жкьюери просто услада.
#459 #619846
>>619833

@app.before_request
def before_request():
g.user = current_user

if g.user is not None and g.user.is_authenticated:
return 'poshla von, psina'

http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-v-user-logins
555 Кб, 700x800
#460 #619847
>>619846
Спасибо за статью.
#461 #619848
>>619847
книжку скачай по flask Grinberg M. - Flask Web Development - 2014
#462 #619850
>>619848
Генлибрусек упал, на русракере нет.
#463 #619851
>>619850
Тебе в каком формате? pdf? mobi? epub?
#464 #619852
>>619851
Мне похуй, но желательно PDF.
266 Кб, 605x800
#466 #619854
>>619853
И за книжку спасибо.
#467 #619864
>>619850
Палю годноту - www.foxebook.net
#468 #619885
>>615093

>впс намного дороже


Лол. Ты собрался работать на контору которая не может позволить себе даже VPS? За еду в буквальном смысле ишачить хочешь?
#469 #619887
>>619584
>>619602
>>619617
Добра вам, аноны
#470 #619894
>>619794
Первая же глава книги Fluent Python
#471 #619897
>>619864
Там же один голимый пакт публишинг
#472 #619910
Анон, на данный момент остался без ноута и есть только небольшая лопатка5.0 дюймов на ведре. Есть ли среда IDE для ведра и смысл начинать пробовать кодить на лопате?
#473 #619915
>>619910
Пальцы поломаешь на виртуальной клаве прогать
208 Кб, 590x303
#474 #619957
#475 #620010
>>619813
Чому нет? "Мой гитхаб мои правила" и все такое, нет?

(не автор)
95 Кб, 1024x768
99 Кб, 1024x768
#476 #620018
>>614738 (OP)
Sup программисты!
Кун, 25 лвл, с детства хотел обмазаться вер-программированием, но все никак не получалось, сейчас же, зарывшись в личных проблемах решил осуществить свою давнюю мечту. Попросил знакомого чела научить основам, он предложил Python для начального языка, поучил какое-то время, а потом он уехал в далекие края и мое обучение закончилось. Потом я записался на курсы в Netcreacker, но не доучился, не получалось по времени посещать и я отстал от занятий.
Потом понял, что Java мне не по нраву и начал самостоятельно учить Python на codeacademy, в итоге не долго поучившись, увидел вакансию Django-программист-стажер, записался, на данный момент успешно посешал занятия, так называемое домашнее задание по Python сдал без проблем, потом был один вводный курс по Django и вот 3 января мне задали домашку, которую нужно сдать до 7 числа. Собственно с того самого дня, как мне ее задали, почти не сплю, вгрызаюсь в этот Django-гранит и читаю, читаю, но к завершению мой проект так и не близится, более того, на момент написания поста создал опять новый проект и сижу перед пустым приложением, не могу ничего сделать, в голове каша, силы на пределе, но я не сдаюсь, углубляюсь все дальше и настолько же вязну в пучине знаний.

Собственно вот я и приблизился к самому вопросу:
Уважаемые гуру, может есть у кого свободное время, чтобы выделить несколько часов мне, смиренному стажеру, чтобы помочь в создании этого дела, даже не так, помочь это мягко сказано, поэтапно рассказать, что и как делается, чтоб собрать в голове модель работы. Можно в скайпе или как удобно.
Задание такое:
создать модуль достижения целей

Пользователь должен иметь возможность добавить сколько угодно целей, у каждой из них создать сколько угодно этапов. У каждого названия должны быть название и описание, а также статус исполнения. У цели также должно быть название и описание. Статус выполнения цели должен отображаться в % в зависимости от готовности этапов цели.

Все манипуляции должны происходить через web-интерфейс..(без стилей и JS)

в пике приложу то, что я смог сделать.
95 Кб, 1024x768
99 Кб, 1024x768
#476 #620018
>>614738 (OP)
Sup программисты!
Кун, 25 лвл, с детства хотел обмазаться вер-программированием, но все никак не получалось, сейчас же, зарывшись в личных проблемах решил осуществить свою давнюю мечту. Попросил знакомого чела научить основам, он предложил Python для начального языка, поучил какое-то время, а потом он уехал в далекие края и мое обучение закончилось. Потом я записался на курсы в Netcreacker, но не доучился, не получалось по времени посещать и я отстал от занятий.
Потом понял, что Java мне не по нраву и начал самостоятельно учить Python на codeacademy, в итоге не долго поучившись, увидел вакансию Django-программист-стажер, записался, на данный момент успешно посешал занятия, так называемое домашнее задание по Python сдал без проблем, потом был один вводный курс по Django и вот 3 января мне задали домашку, которую нужно сдать до 7 числа. Собственно с того самого дня, как мне ее задали, почти не сплю, вгрызаюсь в этот Django-гранит и читаю, читаю, но к завершению мой проект так и не близится, более того, на момент написания поста создал опять новый проект и сижу перед пустым приложением, не могу ничего сделать, в голове каша, силы на пределе, но я не сдаюсь, углубляюсь все дальше и настолько же вязну в пучине знаний.

Собственно вот я и приблизился к самому вопросу:
Уважаемые гуру, может есть у кого свободное время, чтобы выделить несколько часов мне, смиренному стажеру, чтобы помочь в создании этого дела, даже не так, помочь это мягко сказано, поэтапно рассказать, что и как делается, чтоб собрать в голове модель работы. Можно в скайпе или как удобно.
Задание такое:
создать модуль достижения целей

Пользователь должен иметь возможность добавить сколько угодно целей, у каждой из них создать сколько угодно этапов. У каждого названия должны быть название и описание, а также статус исполнения. У цели также должно быть название и описание. Статус выполнения цели должен отображаться в % в зависимости от готовности этапов цели.

Все манипуляции должны происходить через web-интерфейс..(без стилей и JS)

в пике приложу то, что я смог сделать.
#477 #620023

>2.x или 3.x - Решать тебе, но 2.x официально перестаёт поддерживаться почти везде.


Странно, но в научных вычислениях 2.х до сих пор в тренде.

Scientific Computation: Python Hacking for Math Junkies (2015)
A Primer on Scientific Programming with Python (2014)

Обе книги используют 2.х.
#478 #620027
>>620023
http://legacy.python.org/dev/peps/pep-0373/

Как и сказали, решать тебе.
#479 #620028
>>619813
Схуяли нет? Гитхаб это удобное и стабильное хранилище для своего говна. У меня на гитхабе в перемешку с крупными проектами лежат всякая перлопараша на 10-20 строк и ничего.
#480 #620030
>>620028
bitbucket лучше там и приватные репы бесплатно и mercurial
правда сам питон вот переезжает на гитхаб.
#481 #620031
Ононы, есть ли для питона нечто подобное win forms для шарпа?
#482 #620034
>>620031
Что ты имеешь ввиду? Рисовать формочки мышкой?
#483 #620036
>>620034
Графический интерфейс создаваемой программы
195 Кб, 1183x770
#484 #620038
>>620036
Да дохуя. pygtk/pygobject, pyqt/pyside, wxwidgets, tkinter, fltk
#485 #620041
>>620036
Собственно есть немало популярных программ графических на питоне - deluge, gajim, ubuntu-software-center, exaile
#486 #620043
>>620030
Ну у меня и там есть акк с несколькими проектами, но к интерфейсу гитхаба ну очень уж привык.
#487 #620046
>>620041
mirage ещё, meld, pytivi, pysol
#488 #620049
>>620043
Может создать форк гитхаба с бесплатными приватными репами, а окупать с помощью рекламы в дальнейшейм
#489 #620050
>>620049
Готовый стартап
#490 #620051
>>620049
GitLab?
#491 #620056
>>620018
Долго ты конечно тянул, завтра уже 7-е число. Раньше бы обратился, может кто-нибудь и помог бы.
#492 #620062
>>619813
Я вообще туда все подряд выкладываю, тутоииалы готовые, говнокод, велосипеды.
Можно подумать что я ебанутый, но в некоторые дни единственное что меня заставляет дальше учить кодинг это зелёные квадратики в профииле гитхаба
3 Кб, 738x292
4 Кб, 525x197
#493 #620066
>>620062

>зелёные квадратики в профииле гитхаба


Между прочим, жидхаб только за год их показывает. И public activity после года неактивности будет девственно чистым, будто ты никогда ничего не делал и не существовал.

Вот мой заброшенный в 2013 аккаунт. А когда-то он был оче зеленым и даже получал коммиты от других юзеров и какие-то лайки.
#494 #620068
>>620056
я все же не теряю надежды. С преподавателем списался - говорит до 10 можно сдать.
я так полагаю, там не особо то и сложно?
#495 #620084
>>620066
Ну мне всё же не гитхабоквадратики нужны, а выучить язык, закодить то говно что я придумал и может ещё кое-чего, а там видно будет, так что переживу, думаю. Просто иногда бывают ну очень ленивые вечера, и тут-то пока квадратики меня и выручали. Методичный подход, все дела.
#496 #620088
>>620084
А у меня вот бомбит от отсутствия полноценной статистики/истории. В каждой всратой соцсети такая функциональность есть, а у гитхаба нихуя. Еще и старую активность скрывают. Мудаки.
#497 #620090
>>620088
Они просто мечтают что ты заебенишь зеленое комбо в 10000 дней
#498 #620091
>>620066
ФУ КАКРОЙ ШГ У ТЕБЯ
#500 #620105
>>620093
Даже в виндус лучше
#501 #620106
>>620105
какой кстати в виндусе шрифт стоит? хочу на убунту поставить себе в броузер
31 Кб, 460x345
#502 #620108
>>620062

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

#503 #620110
>>620018
Хочу тебя расстроить, но ты учишься программировать не на пейтоне, а на джанге.
399 Кб, 1679x1049
#504 #620116
Сап, двачик. Есть вопрос. У меня предстоит задача из питона заполнять достаточно сложный документ Word (или, возможно, такой же, но в Excel). Он, собственно, на пике. Какую библиотеку выбрать? Лучше для тройки, но варианты для 2 тоже нужны
#505 #620131
>>620116
Для генерации ODT полно фреймворков, гугли python odt. doc/docx - анальщина и зашквар, с ними как правило все кроме МС Офиса работает хуево и через анус. Тем более тебе сложный документ нужен. Хотя тоже было. А тебя что, в гугле забанили?
#506 #620138
>>620106
sudo apt-get install ttf-mscorefonts-installer
или liberation поставь они с виндовых срисованы
#507 #620157
>>620041

>ubuntu-software-center


Хуета, которая, из всех приложений на компе единственная тормозит и падает иногда.
#508 #620159
>>620018
Простое задание, но мне почему-то даже таких не предлагают. Ничего не предлагают. Сосу хуи уже второй месяц.
#509 #620169
Перекат пилите.
#510 #620186
Вчера давал линк на посонов с гайдами по джанго - сегодня они выкатили новый туториал по 1.9 https://www.youtube.com/playlist?list=PLEsfXFp6DpzQFqfCur9CJ4QnKQTVXUsRy
#511 #620207
>>620018
Вообще тред уже утонул, но вот тебе на всякий случай:
тебе нужно две модели, цель и этап, у цели много этапов. Соотв-но поля у этих моделей как ты описал, название, статус, описание. Для цели нужны методы создать, просмотреть. Дальше стандартный crud.
#512 #620210
>>620186
>>620207
на русском цє?
#513 #620271
>>619897
Там все есть.
#514 #620272
ребят, помимо сессий и куков можно как-то защитить накрутку лайков на сайте от незарегистрированных пользователей? (django)
#515 #620293
Анончики, делаю 2d игру на pygame, и мне как-то нужно сделать ускорение персонажа. Вот есть переменная скорости и код
MOVE_SPEED = 5

if right:
self.xvel = MOVE_SPEED
и потом на клавишу
if e.key == pygame.K_RIGHT:
right = True

И нужно сделать, что бы при нажатии правой стрелочки персонаж первую секунду набирал скорость, и когда скорость станет 5 оно должно фиксироваться пока клавиша нажата. Как это реализовать?
#517 #620392
>>620293
while e.key == .... ?
#518 #620500
>>620392
Можно подробнее? Я только учу питон, нихуя не понял, зачем мне там цикл.
234 Кб, 1117x504
193 Кб, 1030x628
#519 #620812
Вкатился в этот ваш Питон с C++, на чем вы пишите?
Скачал редактор comodo edit, пикрелейтед. Не могу запустить одну строчку кода (!). После MVS вообще невозможно писать, синтаксис до сохранения исходника не подсвечивает, запускать хуй пойми как, ни в редакторе, ни в терминале, что блять это такое?
#520 #620816
>>620812
все уже перкатились в новый тред, туда репостни
пишут преимущественно на пичарме который вообще няшка
#521 #621070
Как решается задача с Codeacademy, где надо создать поле для морского боя? Надо создать список, в котором было бы пять списков, в каждом по пять "O" и каждый из пяти списков был бы отдельной строчкой.
Я пишу:

> for m in range(5):


> board.append(["O"]*5)



и оно, мне, ожидаемо, выдаёт всё одной строчкой, а не пятью. Что делать?
#522 #621072
>>621070
Фор и ин # вертикаль
....Фор б ин # горизонталь
........
#523 #621073
>>621072
Так, что ли?

> for m in range(5):


> board.append(["O"])


> for i in range(5):


> board.append(["O"])


Всё равно не то
#524 #621079
>>621073
Надо 5 столбцов, 5 строк
Первый цикл забиваешь столбцы, в каждом столбце вторым циклом забиваешь строки.

Т.е. боард.аппенд вложено во второй цикл
#525 #621081
>>621079

> забиваешь столбц


Как?
#526 #621087
>>621081
http://www.pythontutor.com/visualize.html
Вставляй сюда код и шаг за шагом смотри как оно заполняться будет
Всю кодекадеми с этой херней прошёл
#527 #621562
Анон, сижу изучаю "Укус питона", переписываю ручками примеры, и охуеваю от ошибки:

class Student(ScoolMember):
^
SyntaxError: invalid syntax

В чем я ебанат кроме генетики?
#528 #621564
>>621562
Пишешь в брошенный тред

Предыдущую строчку посмотри может где скобочку не закрыл
#529 #621719
Змеяны, подсобите чутка, впервые вообще такое вижу и даже как-то не могу загуглить.
Вместо цифр питон в консольку выбивает 1D, 2D, ну короче цифру и D(наверное decimal).

Когда делаю просто
x = 1
print x
Все нормально, но вот в этой хуе-задачке получается ебала:
from sys import stdin

tokens = stdin.read().split()
n = int(tokens[0])
islands = 0
old_type = ""
for island in tokens[1:n + 1]:
\tif island != old_type:
\t\tislands += 1
\t\told_type = island

print islands

Примерчик:
Ввод:
3
10
10
10
Вывод:
1D
#529 #621719
Змеяны, подсобите чутка, впервые вообще такое вижу и даже как-то не могу загуглить.
Вместо цифр питон в консольку выбивает 1D, 2D, ну короче цифру и D(наверное decimal).

Когда делаю просто
x = 1
print x
Все нормально, но вот в этой хуе-задачке получается ебала:
from sys import stdin

tokens = stdin.read().split()
n = int(tokens[0])
islands = 0
old_type = ""
for island in tokens[1:n + 1]:
\tif island != old_type:
\t\tislands += 1
\t\told_type = island

print islands

Примерчик:
Ввод:
3
10
10
10
Вывод:
1D
#530 #621720
>>621719
Блять ну хуле он так табуляцию сделал:
from sys import stdin

tokens = stdin.read().split()
n = int(tokens[0])
islands = 0
old_type = ""
for island in tokens[1:n + 1]:
if island != old_type:
islands += 1
old_type = island

print islands
#531 #622245
Мне выбивает exit code -1073741515. Что это значит?
#533 #622838
>>621087
Забавное дерьмо, конечно, но лучше сразу к дебагеру привыкнуть.
42 Кб, 485x485
#534 #625173
#535 #625901
>>620272
в LocalStorage впихни ещё что-нибудь.
54 Кб, 479x479
#536 #626685
>>614738 (OP)
Скажите мне, как из одного Python-скрипта запустить другой CGI Python-скрипт, дав на вход POST-аргументы, а на выходе получить выхлоп в виде вывода этого самого CGI скрипта и я уёбываю.
Гуглил, нихуя не нашел.
634 Кб, 1951x2850
#537 #627503
>>614738 (OP)
Как за минимальные сроки научить человека пользоваться линуксом и писать скрипты на питоне, на уровне неофита, в минимальные сроки? В идеале нужно одна статья, которая бы обьяснила все на пальцах. Хоть сам пиши, ей богу.
#538 #627531
>>627503
Как вам нахуй удаётся писать не то что в прошлый тред, а сука прямо в позапрошлый? Если бы из дашчана удалить не забыл так бы и сидел ждал ответа вечно, мудило ты пиздоглазое.

Линукс и командная строка : https://github.com/jlevy/the-art-of-command-line/blob/master/README-ru.md
Быстрые видосики по питону: https://developers.google.com/edu/python/?hl=ru
Если именно в контексте сисадмининга то быстро никак, но https://media.readthedocs.org/pdf/python-for-system-administrators/latest/python-for-system-administrators.pdf мне понравилось
40 Кб, 600x800
#539 #627539
>>627531
Спасибо анон, я пиздоглаз
122 Кб, 600x800
#540 #628232
Привет котаны, я не кодил полгода и уже чуть подзабыл что-как. Тут есть один проект-исследование, я биохимик, первая его часть заключается в анализе 5000 публикаций по исследованию Альцгеймера и надо вытащить название препарата и фирму, которая его произвела. Я скачал это гору статей, конвертнул их тхт. А что дальше? Кто-то вообще здесь обрабатывает текстовую информацию? Это лютое говно.
Ладно еще название препарата либо (Латинская буква)[число]
или же (Латинская буква)[число](Латинская буква)[число], я написал простенькую регулярку, а что если в статье встречаются разные препараты? А с фирмой что делать? У кого есть идеи? Язык статей - Английский.
106 Кб, 498x689
#541 #628257
>>628232
Запарси список всех фармафирм и сверяй ._.
И иди в новый тред: https://2ch.hk/pr/res/626701.html (М)
#542 #628787
Аноны, пожалуйста соберите и скиньте, я с шиндовса.
140 Кб, 1660x940
#544 #629108
Анон, у меня django-проблемы или нет.
Есть желание сделать подгрузку части контента из html-файла на страницу(допустим, index.html) через jquery методом .load() по клику на кнопки, например. html-файл с контентом и index.html лежат в одном каталоге.

К в методе .load() прописать нужный(возможно, статичный) url? Потому что, как я понял, джанго(или нет?) дописывает строку url из метода .load() к хрен знает чему и ищет по получившемуся адресу. Соответственно, при нажатии кнопки скрипт не находит html-файл с контентом.
#545 #630535
>>615093
Ну если ты собрался ПЕСАТЬ САЙТЕКИ, то как бы ничего другого, кроме пхп, тебе и не надо. Питон всё-таки создан для более серьезного бэкэнда и редко с веб-интерфейсом.
1357 Кб, 1574x648
#546 #630920
Дайте хорошие гайды по визуализации данных, анализу данных
Хочется научиться и это делать, но нужны гайды
рандомпик
#547 #630965
>>630920
http://newcoder.io/dataviz/extended/
И сам туториал по ссылке

====================
Етот тред закончился, мудаки, пишите в новый!!!!!
====================
2или3 с какой версии начать изучение? #549 #632525
Мнения расходятся, причём диаметрально противоположно, что посоветуете?
Тред утонул или удален.
Это копия, сохраненная 25 января 2016 года.

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

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