@python_beginnersЭта группа больше не существует

Страница 1018 из 1885
Doomsday
29.12.2016
01:23:33
и шелл тебе напишет какая точно версия

Doomsday
29.12.2016
02:22:18
Переменные в циклах и условных операторах изолированные, я так понимаю? Типа for bla in blabla[], переменная bla больше нигде не будет доступна, кроме как в теле цикла?

Dmitriy
29.12.2016
02:23:33
И увидишь

Google
Doomsday
29.12.2016
02:25:33
Щас отдебажу. Со 111-й страницы учебника для бичей на 115 перейду и дебажить начну как не в себя. А на 120й вообще свою реализацию напишу блять.

На малболге

Dmitriy
29.12.2016
02:28:13
Дебаггер на самом деле очень удобная штука. Для изучения тоже, т.к. можно посомтреть что творит каждая команда

>>> for x in 1,2: ... pass ... >>> dir() ['__builtins__', '__doc__', '__name__', '__package__', 'x']

Или так: >>> [x*2 for x in 1,2] [2, 4] >>> dir() ['__builtins__', '__doc__', '__name__', '__package__', 'x'] >>> x 2

Doomsday
29.12.2016
02:34:59
Допускаю, только я в вышепредставленном, начиная с 4й строки ничо не понял.

Dmitriy
29.12.2016
02:36:59
Видишь в конце списка x?

Doomsday
29.12.2016
02:41:28
разумеется

Dmitriy
29.12.2016
02:42:20
Вот это и есть твоя переменная blah снаружи цикла

Johnnie
29.12.2016
04:06:40
тем временем timeit еще считается :)

Igor
29.12.2016
04:09:21
print('не уверен, подсказывал ли уже кто-то,' 'но обычно длинные строки заключаются в скобки' 'и используются примерно как-то так') print( 'или вот так.' 'главное - не ставить запятых между строками,' 'тогда это будет не кортеж и не передача разных аргументов в одну функцию (print например).' )

Johnnie
29.12.2016
04:12:36
Игорь, а ты вообще спишь?

Google
Johnnie
29.12.2016
04:23:39
такое не канает? или я не пойму чо надо то?

Cykooz
29.12.2016
06:03:17
а по-моему бекслеши жутко чуждо выглядят
Никто не любит бекслеши, даже сам Гвидо их не любит. ? Я для себя наиболее оптимальным вариантом выбрал скобки - нет некрасивых бекслешей и при этом отступы по PEP8.

Igor
29.12.2016
06:03:45
воооот

Zart
29.12.2016
06:14:48
# бакслеши print('very long string here\ very long string here\ very long string here') # выкидывание левых отступов в рантайме print(textwrap.dedent('''\ very long string here very long string here very long string here''')) # правильный вариант print('very long string here' 'very long string here' 'very long string here')

Vladislav
29.12.2016
06:17:23
Ребят кто нибудь делал распознавание голоса на Питоне? Куда курить?

Zart
29.12.2016
06:18:00
"ок, пайтон!"

Vladislav
29.12.2016
06:18:36
Типо того

Либра есть или только костыли?

Zart
29.12.2016
06:19:48
https://pypi.python.org/pypi/SpeechRecognition/ ?

Johnnie
29.12.2016
06:20:34
@zartsoft, мой пылесос еще пыхтит :)

Zart
29.12.2016
06:21:25
угу, как было видно из моих тестов - твой код тормознее на 4-5 порядка

а не. 3 порядка. 11 vs 0.03

нет никакого смысла гонять столько итераций

Johnnie
29.12.2016
06:23:17
я думал, что будет быстрее

Baal
29.12.2016
06:29:01
Я похоже не понимаю самого принципа работы со словарями. Почему например вот такой короткий код не работает?

for key, value in slov.items(): if value == 'c': print(key)

Johnnie
29.12.2016
06:29:18
потому что там нет 'c'?

Google
Baal
29.12.2016
06:29:28
slov = {'f': 6, 'c': 3, 'g': 8, 's': 5}

ААААА

Johnnie
29.12.2016
06:29:39
> value

Baal
29.12.2016
06:29:42
БЛЕАТЬ!

Zart
29.12.2016
06:29:48
ты же значение сравниваешь, а не ключ

Baal
29.12.2016
06:29:48
Надо было спать (((

А как например для словаря slov узнать значение ключа для максимального value?

Johnnie
29.12.2016
06:33:50
в твой цикл добавь переменные две

одна хранит ключ макс значения, вторая макс значение

в самом простом случае

if k[v] > max_value: max_key = k max_value = v

Baal
29.12.2016
06:36:50
if key[value] > vmax: IndexError: string index out of range

kmax = 0 vmax = 0 slov = {'f': 6, 'c': 3, 'g': 8, 's': 5} for key, value in slov.items(): if key[value] > vmax: kmax = key vmax = value print(kmax, vmax)

Pavel
29.12.2016
06:37:06
if k[v] > max_value: max_key = k max_value = v
по большому счёту, max_value лишнее.

Baal
29.12.2016
06:38:39
Точно, спасибо. 22 часа не сплю, уже совсем плыву. Спасибо

Johnnie
29.12.2016
06:42:27
slov = {'f': 6, 'c': 3, 'g': 8, 's': 5} max_key = None for k, v in slov.items(): if max_key is None or slov[k] > slov[max_key]: max_key = k print('k = {}, v = {}'.format(max_key, slov[max_key]))

k = g, v = 8

Google
Johnnie
29.12.2016
06:42:47
хз насколько правильно делать max_key = None в начале)

Pavel
29.12.2016
06:43:15
хз насколько правильно делать max_key = None в начале)
я обычно делаю max_key = первому элементу

Alex
29.12.2016
06:43:25
доброе утро. Подскажите пожалуйста вот что: Как-то можно сделать метод, который будет применяться ко всем экземплярам класса без итерации?

Johnnie
29.12.2016
06:43:47
я обычно делаю max_key = первому элементу
это да, но как узнать первый элемент у дикта?

Igor
29.12.2016
06:43:53
в смысле - без итерации?

Johnnie
29.12.2016
06:43:54
порядка-то нет

Igor
29.12.2016
06:43:59
Johnnie
29.12.2016
06:44:05
ну нихуя :D

Igor
29.12.2016
06:44:14
это удивление?)

Johnnie
29.12.2016
06:44:26
да, от такого подхода)

кстати, когда 3.6 будет в стабильных ветках?)

Igor
29.12.2016
06:44:44
так уже

неделю-две как

даже в brew есть уже (это я макоёбствую. неважно)

Johnnie
29.12.2016
06:45:00
ээм

а че мой арч молчит тогда

Igor
29.12.2016
06:45:25
ахахахах, удивительно

ну-ка

слушай, и правда, 3.5.2-3

есть python 3.6.0-1 [staging] (x86_64)

Google
Johnnie
29.12.2016
06:48:13
ладно, ждем тогда, не дергаемся :)

Alex
29.12.2016
06:48:54
в смысле - без итерации?
ну вот например у меня есть 100 экземпляров класса point. у них например координаты меняются и их надо перерисовывать. только for point in Point: point.redraw() ???? никак не сделать что-то вроде Point.redraw() и они "Вжжух!" и все перерисовались?

Johnnie
29.12.2016
06:49:23
slov = {'f': 6, 'c': 3, 'g': 8, 's': 5} maximum = max(slov, key=slov.get) print(maximum, slov[maximum])
круто, но чел пока путается где ключ а где значение :) я думаю простейший и очевидный цикл лучше для понимания

Igor
29.12.2016
06:50:29
я бы хранил инстансы внутри класса и написал метод, который таки итерируется по списку инстансов потом сделать его @classmethod (вроде. постоянно их путаю) и вызывать Point.redraw_all() типа но мб есть решение лучше

Pavel
29.12.2016
06:51:59
Какао
29.12.2016
06:52:16
Прозрачные и перпендикулярные

Johnnie
29.12.2016
06:52:43
тоже про них вспомнил)

Alex
29.12.2016
07:01:27
7 прозрачных и перепендикулярных точек, нарисованых синей краской, но три зеленые ?

Johnnie
29.12.2016
07:06:36
> перепендикулярных точек o_o

Baal
29.12.2016
07:07:59
круто, но чел пока путается где ключ а где значение :) я думаю простейший и очевидный цикл лучше для понимания
Да с этим я не путаюсь )) Я запарился! Проблема как раз в отсутствии порядка в словаре, точнее в моем понимании этого отсутствия. Мозг подсказывает конструкции типа if value + 1 > value, но я так понимаю, что в словарях +1 невозможен

Какао
29.12.2016
07:10:10
То есть, нет ничего нереального

Johnnie
29.12.2016
07:13:53
любой каприз за ваши деньги

кстати, я посмотрел, в AUR валяется питон 3.6.0.1, но чет не хочу оттуда ставить :)

Igor
29.12.2016
07:15:05
зачем аур-то

говорю же в staging есть

Johnnie
29.12.2016
07:18:23
нууу, это надо лезть в pacman.conf и там что-то менять. лень и боюсь что начнет всякая нестабильная шляпа ставиться :)

Страница 1018 из 1885

Эта группа больше не существует Эта группа больше не существует