
Romka
19.02.2017
00:51:33
Есть xml http://pastebin.com/tdAQgT4w
нужно спарсить <last-name>Butler</last-name>
Делаю re.findall(r'<last-name>([^*]+)</last-name>', text)
но мне парсит ['James</last-name></author>\n
<book-title>Board Games</book-title>\n
<coverpage><image xlink:href="#_0.jpg" /></coverpage>\n
<lang>en</lang>\n
<keywords>detective</keywords>\n
\n
</title-info>\n
<document-info>\n
<author><first-name>Butler</first-name><last-name>James']
что делать?
исправил ограничением длинны имени

melancholiac
19.02.2017
01:06:28
дык

Google

melancholiac
19.02.2017
01:06:28
https://regex101.com/r/RTHb89/2

Pavel
19.02.2017
05:06:51
что делать?
Не использовать regexp для парсинга xml-файлов, например.

I
19.02.2017
05:24:26
согласен, лучше взять полноценный xml-парсер

Ivan
19.02.2017
06:44:58
lxml, да?

Ivan
19.02.2017
06:46:04
Ну нормальный парсер, да

Yan?
19.02.2017
06:46:37
Scrapy возьми
Или тот же grab

Igor
19.02.2017
06:50:57
я с помощью регекспов js парсил, а html bs4 lxml

Ivan
19.02.2017
06:51:45

Igor
19.02.2017
06:52:41
? ну типа значение какой-то константы оттуда

Ivan
19.02.2017
06:53:44
понял)

I
19.02.2017
06:54:07
дык нодой можно достать все =)
ну или свой парсер написать, там грамматика простая достаточно
ну да похер

Google

Gzuz
19.02.2017
10:34:07
arr = [1,2,6,3,10,214,445,66,323463,63463,56]
tok = 0
for i in arr:
#if i == 445:
# break
tok+=i
print(sum(arr))
поясните про tok и про i, зачем и как работает, пожалуйста

Pavel
19.02.2017
10:44:17
arr = [1,2,6,3,10,214,445,66,323463,63463,56]
tok = 0
for i in arr:
#if i == 445:
# break
tok+=i
print(sum(arr))
поясните про tok и про i, зачем и как работает, пожалуйста
запись for i in arr означает "перебираем все элементы из массива arr, на каждом шаге i равна следующему элементу". запись tok += i означает "к переменной tok добавляем переменную i и результат записываем обратно в tok".
А если всё сложить в кучу, то получится "берём все элементы и arr и суммируем их"

Gzuz
19.02.2017
10:45:22

b0g3r
19.02.2017
10:45:32
Не совсем

Игорь
19.02.2017
10:45:46

Pavel
19.02.2017
10:45:56
i это счетчик, выходит
нет. счётчик - это раз два три. а i - это значения из массива, в твоём случае 1 2 6 3 10 214...

Сергей
19.02.2017
10:46:43

b0g3r
19.02.2017
10:47:38
Или не станет :)

Gzuz
19.02.2017
10:47:58
Спасибо

Игорь
19.02.2017
10:48:00
счетчиком оно будет в таком случае:
arr = [1,2,6,3,10,214,445,66,323463,63463,56]
tok = 0
for i in range(len(arr)):
tok+=arr[i]

Gzuz
19.02.2017
10:51:08
счетчиком оно будет в таком случае:
arr = [1,2,6,3,10,214,445,66,323463,63463,56]
tok = 0
for i in range(len(arr)):
tok+=arr[i]
мне надо сменить видео курс
а может и книги
хотя книгу только начал

Johnnie
19.02.2017
10:56:08
Codeacademy go

Игорь
19.02.2017
10:57:25
я когда стартовал, то прочитал вики по питону. А потом уже документация и стэковерфло, плюс статьи на хабре

Gzuz
19.02.2017
10:59:53

Игорь
19.02.2017
11:03:26
асемблер, бейсик, паскаль ну и очень специализированые языки типа МК-61 или кокой-то математический на наладонниках Cassio. Я с ранних лет с функциональным программированием, а вот объектное постигал своими силами. Трудно давалось.

Maksim
19.02.2017
11:59:15
Привет, всем
Как можно в numpy к массиву добавлять списки

Janek
19.02.2017
12:13:29
кто пишет явно аннотации к функциям тут?

Google

Janek
19.02.2017
12:13:48
я имею в виду типы принимаемых значений и возвращаемого результата

Lisa
19.02.2017
12:17:33
кто-нибудь сталкивался с проблемой сортировки украинского алфавита в django (в частности django_tables2)? он выносит всякие нетрадиционные буквы типа Є, I наверх. как бы это победить

Janek
19.02.2017
12:21:01
вручную

Lisa
19.02.2017
12:24:04
эхехех...

vlade11115
19.02.2017
12:25:44

Janek
19.02.2017
12:29:03
Жизнь облегчаться нчала, после явного указания типов?

vlade11115
19.02.2017
12:31:48

Janek
19.02.2017
12:33:05
Меньше вероятности ошибок в рантайм ?

vlade11115
19.02.2017
12:34:31
Ничто не мешает эти подказки игнорировать, так что не особо.

Janek
19.02.2017
12:36:03
хех
т.е. IDE не запрещает передавать в аргументы неверные типы

vlade11115
19.02.2017
12:37:00
Конечно не запрещает, динамическая типизация же.

Janek
19.02.2017
12:38:34
но тот же ВБ ругается и не компилируется, если аргумент не соответствует указанному типу, хоть указывать типы- это чисто опционально

vlade11115
19.02.2017
12:41:12
Компиляции нет в питоне. Но главная причина почему не сделали такой запрет: в питоне утиная типизация.

Janek
19.02.2017
12:42:00
теперь проясняется

vlade11115
19.02.2017
12:43:23
Для полного прояснения:
https://www.python.org/dev/peps/pep-0484/
https://www.python.org/dev/peps/pep-0526/
https://habrahabr.ru/post/161205/

Janek
19.02.2017
12:47:06
я уже читаю и начинаю применять
спасибо

Viacheslav
19.02.2017
14:14:57
А как тут код по человечески вставить? чтоб не набор символов ?

I
19.02.2017
14:15:20
gist.github.com лучше

Google

Maxim
19.02.2017
14:15:30
три обратных тика, код, опять три тика

Viacheslav
19.02.2017
14:22:45
Хэлп ми плиз! Кто с джанго знаком! вот вьюха - http://dpaste.com/3RDZJP4 сортирует по категориям так сказать, например она выводит все записи со значениями "дача", затем "частный сектор", "квартира", ''база отдыха''...
А как сделать чтобы она еще сортировала по алфавиту - ''база отдыха'', "дача", "квартира", "частный сектор" ???

Сергей
19.02.2017
14:29:42

vlade11115
19.02.2017
14:31:19

Admin
ERROR: S client not available

Viacheslav
19.02.2017
14:33:46
http://dpaste.com/3WE750A

Сергей
19.02.2017
14:37:31
http://dpaste.com/3WE750A
Если не ошибаюсь, он сортирует по значениям вашего кортежа указанного для choices.. Расставьте в алфавитном порядке в соответствии с требованиями сортировки

Viacheslav
19.02.2017
14:44:20
точно, спасибо )

Игорь
19.02.2017
15:57:06
Можно ли передать в качестве аргумента функции словарь?

Denis
19.02.2017
15:57:53
Можно

Роман
19.02.2017
16:08:51
господа
а никто не знает в постгресе(9.3) можно сделать array из foreign keys ?
без каких-то дополнительных таблиц
а, ну еще все это через sqlalchemy :)

Игорь
19.02.2017
16:16:45
#!/bin/env python3
# -*- coding: UTF-8 -*-
import paramiko
import sys
def get_data(host, user, secret, port):
commands={'spisok':'ls -l', 'size':'df -h'}
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(hostname=host, username=user, password=secret, port=port)
result={}
for key in dict.keys(commands):
stdin, stdout, stderr = client.exec_command(commands[key])
data = stdout.read() + stderr.read()
result[key] = data.decode('utf-8')
client.close
return result
def wrtofile (a):
print(a)
if __name__ == '__main__':
func = sys.argv[1]
if func == 'get_data':
print(get_data(host=sys.argv[2], user=sys.argv[3], secret=sys.argv[4], port=int(sys.argv[5])))
elif func == 'files':
wrtofile(get_data)
else:
print('Usage: get_data')
В чем ошибка?

Di
19.02.2017
16:17:39
dna

Johnnie
19.02.2017
16:17:42
В формате сообщения, кинь на gist.github.com и покажи трейс

Игорь
19.02.2017
16:23:36
https://gist.github.com/anonymous/6cc6fb38d2860de3e2c0f253e2059e74

Google

Denis
19.02.2017
16:25:53
Что значит wrtofile(get_fata)? Вывести функцию?

Игорь
19.02.2017
16:27:45
в качестве аргумента, который передается фунцкии wrtofile, передается результат выполнения функции get_data

Denis
19.02.2017
16:28:03
Нет, передается сама функция
Она не вызывается

Игорь
19.02.2017
16:28:28
Ок. Спастбо

Maksim
19.02.2017
16:43:01
А можно ли узнать, сколько пользователей используют бот в тг?

Denis
19.02.2017
16:43:36
Можно логи писать

Maksim
19.02.2017
16:44:29
Тип, как только юзер новый пришел и начал беседу сразу в логи пишется, такой механизм?

Denis
19.02.2017
16:45:13
Да

Maksim
19.02.2017
16:45:39
А так как нибудь возможно, если там уже есть пользователи?

Denis
19.02.2017
16:46:30
Там могут быть и неактивные пользователи

Maksim
19.02.2017
16:49:11
Без разницы
Тут главное узнать

Ilija
19.02.2017
17:03:34
Подскажите, пожалуйста, чат начинающих С++
Эта группа больше не существует