
Zart
26.04.2017
18:08:26
несложно?
для очереди тебе надо наваять набор операций над ней: добавление элемента, удаление элемента, просмотр элемента в хвосте/голове, очистку, проверку на пустоту
возможно итерацию, но обычно на очередях её не делают

Alexander
26.04.2017
18:14:41

Google

Alexander
26.04.2017
18:14:55
кроме очистки и просмотра в хвосте

Расписная Черепашка
26.04.2017
18:17:40
В связи с недавними событиями в чате http://telegra.ph/import-drama-04-19
данный диалог остался без администраторов, в следствии этого советуем перейти в новый аналогичный диалог - @ru_python_beginners

Zart
26.04.2017
18:20:50
очистка превращается в self.head = self.tail = 0

Alexander
26.04.2017
18:21:28
можно же пересоздать
это даже лучше будет

Zart
26.04.2017
18:22:04
не совсем, но можно

.
26.04.2017
18:25:52
Как в питоне открыть файл .docx как текст?

Zart
26.04.2017
18:33:02
через ворд и ком
docx на самом деле zip, внутри которого пачка xml файлов
можно пойти сложным и кроссплатформенным путем - открыть зип, парсить хмл, выдрать нужные ноды и применить пачку трансформаций
легкий и винда-онли метод - попросить ворд открыть файл за тебя и забрать текст из него

Petro
26.04.2017
18:43:02
Вроде же на хабре кто-то писал про библиотечку для работы в питоне с docx

.
26.04.2017
18:50:30
уже нагуглил, но там поиск чет неудобный все равно, мне щас легче выдрать весь текст и запихнуть его в txt

Игорь
26.04.2017
18:51:42
опенофис еще

Google

Alex
26.04.2017
18:51:48
Сложный вопрос, потому что затрудняюсь сформулировать -
Есть у меня вот такой код:
def get_country(self):
try:
Shop.country = []
sql = 'SELECT * FROM country'
conn = get_conn()
c = conn.cursor()
c.execute(sql)
rows = c.fetchall()
conn.close()
rows = [list(_) for _ in rows]
for row in rows:
_new_country = Country(*row)
Shop.country.append(_new_country)
except Error as e:
Shop.message = e
И таких мне надо 3 разных сущности вытащить. Писать три раза почти одно и то же - не комильфо.
Но вот как передавать класс вот сюда -> _new_country = Country(*row) ?? Они все три разные.

Alexander
26.04.2017
18:51:57
@zartsoft что он умничает
все, перестал

Artem
26.04.2017
18:53:50
java.lang.IllegalArgumentException: Cannot create PyString from null! с такой штукой кто-нибудь сталкивался ? оО

Игорь
26.04.2017
18:54:08

Alex
26.04.2017
18:55:22
точно. мне же по сути rows вытащить из разных таблиц.

Zart
26.04.2017
19:14:49


Alex
26.04.2017
19:16:25
Shop.country = [Country(*row) for row in c.fetchall()] - когда вот таким образом лист заполняется - его не надо обнулять?
(У меня было через эппенд, я не обнулял и с каждым апдейтом магазина список распухал одинаковыми записями)

Zart
26.04.2017
19:31:06
это лист компрехеншен, он создает лист с нуля

Alex
26.04.2017
19:31:52

Расписная Черепашка
26.04.2017
22:46:12
Привет!
В связи с недавними событиями в чате http://telegra.ph/import-drama-04-19
данный диалог остался без администраторов, в следствии этого советуем перейти в новый аналогичный диалог - @ru_python_beginners

Dread
26.04.2017
22:49:42
Как питон используется в веб разработке? И может ли он заменить PHP? Помогите новичку плс, хочу разобраться что лучше учить

Маришка
27.04.2017
01:07:29

Sergey
27.04.2017
02:24:26

Dmitriy
27.04.2017
02:27:06
АХАХАХАХХАХА

Sergey
27.04.2017
02:32:47
Не чего смешного!
Все современные инструменты для работы с веб приложениями сделаны на js. Например тот же шаблонизар pug(jade), если ты на питоне его захочешь использовать, то питону придется запускать процесс который работает с js. Так зачем же нам посредник? Бери и делай сразу на node js

Dmitriy
27.04.2017
02:33:55
Ой пощади

Google

Sergey
27.04.2017
02:35:03
Извини, я не понимаю твоих железобетонных доводов)
Заспамьте его кто нибудь

Artem
27.04.2017
02:40:07
Заспамьте его кто нибудь
Вот, врываешься такой в питоновский чат. Там кто-то спрашивает, можно ли использовать Python в вебе. Чуваку советуют попробовать Django.
Ты лезешь со своей нодой, аргументируя это тем, что все современные вещи для веба написаны на js.
Ну, вон, nginx на Си нафигачен, очень современен и популярен, давайте теперь все на Си писать веб.
Не аргумент. И, на самом деле, смешно.

Sergey
27.04.2017
02:40:42
Nginx для статики

Dmitriy
27.04.2017
02:41:02
Тут сейчас все охуеют от своей безнаказанности
Думаю не секрет почему

Sergey
27.04.2017
02:42:52
Парень решает что использовать для веба - php or python, я предложил не плохой вариант - node js

Artem
27.04.2017
02:44:06
Nginx для статики
Ну, ок, шаблонизатор на js — дёрнет их питон, не передохнет от этого.
Не шибко-то тяжело.
А у django и свой шаблонизатор есть. Так что можно даже вообще ничего не дёргать. Не сошёлся свет клином на Jade.

Sergey
27.04.2017
02:44:40
Оке, а если на реакте фронт захочешь сделать?

Zart
27.04.2017
02:45:11
https://pypi.python.org/pypi/pyjade
нахуя дергать ноду?

Dmitriy
27.04.2017
02:45:55
Вот и я про то же

Zart
27.04.2017
02:45:57

Dmitriy
27.04.2017
02:46:12
Что-то не могу найти ни одного упоминания запуска процесса
https://github.com/syrusakbary/pyjade

Artem
27.04.2017
02:46:29
Оке, а если на реакте фронт захочешь сделать?
Буду рендерить на клиенте, парень.
А со своей изомрфностью и пре-рендеренгом SPA идите-ка вы в js.
Но это уже разговор о совсем разных вещах.
API под ваш реакт можно и на питоне, и на хаскеле, и хоть на эрланге фигачить.

Sergey
27.04.2017
02:46:34

Zart
27.04.2017
02:47:16
пои желании бакенд может быть и не нодовым
комбинаций дофига
в целом это все фломастеры - ебашь на чем нравится

Sergey
27.04.2017
02:52:31

Google

Dmitriy
27.04.2017
02:53:26

Sergey
27.04.2017
02:53:55

Dmitriy
27.04.2017
02:54:57
Вот именно, что смысла нет. Если нужно запустить жс, то делается это соответсвующим инструментом

Sergey
27.04.2017
02:55:12
То есть, он просто парсит шаблонизар как тест, и на выходе компилить его своими средствами?

Dmitriy
27.04.2017
02:55:52
Ох уже эта вебня фронтендная

Sergey
27.04.2017
02:57:02
Просто пуж на дж сделан, я подумал смысл сообществу питона было переписывать его на питон, подумал они просто запускают типо эмулятор дж

Dmitriy
27.04.2017
02:57:47
Умльцы уже сочинили обертку https://github.com/markfinger/python-react
Вот тут реально что-то запускается стороннее

Sergey
27.04.2017
02:58:24
Так зачем же посредник) бери и делай сразу на js)
Ладно ребят, извините что лезу в чужой огород со своей капустой

Роман
27.04.2017
02:59:53
больше жс для бога жс

Sergey
27.04.2017
02:59:55
Я просто сам раньше на пхп кодил, последнии два года на дж, немного питон умею

Zart
27.04.2017
03:47:58
какие в жопу посредники...
и чо, для того же jQuery ты на php тоже эмулятор писал?

Dmitry
27.04.2017
03:54:30
Народ не подскажете, что значит вызвать через Call интерфейс? Мне с тарантула надо метод вызвать а в стаднартном коннекторе его нет...
вот такое нашел, но не понимаю о чем речь
auto_increment это функция schema, можно ли её вызвать через CALL или он
> предназначен только для вызова своих функций?
> https://github.com/tarantool/tarantool/blob/d92f858fb6a499669b008b2830b92116e05fac53/src/box/lua/schema.lua#L939
Да, можно вызвать через CALL.

Zart
27.04.2017
04:58:02
у коннектора call есть, если что

Dmitry
27.04.2017
04:58:19
спасибо уже нашел

Расписная Черепашка
27.04.2017
05:30:59
Привет!
В связи с недавними событиями в чате http://telegra.ph/import-drama-04-19
данный диалог остался без администраторов, в следствии этого советуем перейти в новый аналогичный диалог - @ru_python_beginners

Gabb
27.04.2017
06:20:09
Есть база слов и ответов на них

Google

Gabb
27.04.2017
06:20:26
Слово/ответ
Как сказать питону что после / идет ответ и его нужно выдать?

vlade11115
27.04.2017
06:25:17


Dmitry
27.04.2017
06:29:04
пытаюсь обратиться к тарантул через call
result=conn.call('upsertInc',('users','username',[row[0],row[1],row[2],row[3],row[4],row[5],row[6],row[7],row[8],row[9],row[10],row[11],row[12],row[13]]))
но вылетает с ошибкой,
Traceback (most recent call last):
File "trntl.py", line 23, in <module>
result=conn.call('upsertInc',('users','username',[row[0],row[1],row[2],row[3],row[4],row[5],row[6],row[7],row[8],row[9],row[10],row[11],row[12],row[13]]))
File "/usr/local/lib/python2.7/dist-packages/tarantool/connection.py", line 307, in call
request = RequestCall(self, func_name, args)
File "/usr/local/lib/python2.7/dist-packages/tarantool/request.py", line 221, in __init__
IPROTO_TUPLE: args})
File "/usr/local/lib/python2.7/dist-packages/msgpack/__init__.py", line 47, in packb
return Packer(**kwargs).pack(o)
File "msgpack/_packer.pyx", line 231, in msgpack._packer.Packer.pack (msgpack/_packer.cpp:3661)
File "msgpack/_packer.pyx", line 233, in msgpack._packer.Packer.pack (msgpack/_packer.cpp:3503)
File "msgpack/_packer.pyx", line 192, in msgpack._packer.Packer._pack (msgpack/_packer.cpp:2657)
File "msgpack/_packer.pyx", line 221, in msgpack._packer.Packer._pack (msgpack/_packer.cpp:3230)
File "msgpack/_packer.pyx", line 221, in msgpack._packer.Packer._pack (msgpack/_packer.cpp:3230)
File "msgpack/_packer.pyx", line 228, in msgpack._packer.Packer._pack (msgpack/_packer.cpp:3382)
TypeError: can't serialize datetime.datetime(2017, 4, 27, 13, 25, 23, 420000)
у функции 3 параметра
два строковых и третий TOUPLE, как правильно вызов сделать?


Zart
27.04.2017
06:32:37
тебе английским по белому написано что он не смог осилить datetime тип, ты его должен преобразовать в строку сам

Dmitry
27.04.2017
06:33:18
хм, я ввобще думал я все строкйо передаю, понял...

Zart
27.04.2017
06:33:19
и вместо этого [row[0], row[1], ..., row[13]] пиздеца примени row[:14]

Dmitry
27.04.2017
06:33:22
спасибо
о как row[:14] он поймет как все столбцы? огромное спасибо

Zart
27.04.2017
06:34:20
как "первые 13"
точнее первые 14, ибо отсчет с нуля

Dmitry
27.04.2017
06:34:41
ага, понял...
спасибо
написал вот так
result=conn.call('upsertInc',('users','username',[row[:13],str(row[13])]))
но новые грабли
tarantool.error.DatabaseError: (18, 'Supplied key type of part 0 does not match index part type: expected string')
что-то все равно неверно передаю....

Zart
27.04.2017
06:39:41
неверно
ты вместо списка начал передавать список списков
result=conn.call('upsertInc',('users','username',row[:13]+[str(row[13])])) можно например так

Dmitry
27.04.2017
06:42:10
хм, так тоже ругается
2017-04-27 13:41:44.878 INFO in 'trntl' at line 21: Total Row(s):43067
Traceback (most recent call last):
File "trntl.py", line 24, in <module>
result=conn.call('upsertInc',('users','username',row[:13]+[str(row[13])]))
TypeError: can only concatenate tuple (not "list") to tuple
по идее надо последний стобец включить в touple, я пытался объедигнить через []
Эта группа больше не существует