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

Страница 120 из 1885
Марк
07.07.2016
06:09:01
Самая известная в инсте

Темный
07.07.2016
07:45:40
@KennyDT и тут ты

Kill me pls
07.07.2016
08:08:30
Ребят, есть ли какое-то решение, нужно сделать бэкап паблика, но перевести новую группу в закрытую группу?

Roman
07.07.2016
08:10:49
техпод

Google
Roman
07.07.2016
08:11:05
тебе поможет

Kill me pls
07.07.2016
08:11:55
Не поможет

Там с пиратским контентом связано

Roman
07.07.2016
08:13:05
тогда ручками)

Kill me pls
07.07.2016
08:13:27
овер 50 к записей

Ариох
07.07.2016
08:15:09
что нас не убивает делает нас сильнее

и пример этого https://github.com/AceLewis/my_first_calculator.py/blob/master/my_first_calculator.py

Ruslan
07.07.2016
09:28:40
Приветствую. Гитхаб у всех норм грузит?

dmks
07.07.2016
09:30:52
и пример этого https://github.com/AceLewis/my_first_calculator.py/blob/master/my_first_calculator.py
Надеюсь это шутка и использовали генератор к ода

Zart
07.07.2016
09:31:19
Ruslan
07.07.2016
09:32:53
Чуваки, у меня у одного гитхаб без таблиц стилей грузит?

Google
JPyFoxy
07.07.2016
09:34:28
Задачка изи: Шифрование данных . Основные требования к программе: 1) Шифрование и дешифрование данных с возможностью настройки методов шифрования. Общее количество алгоритмов шифрования не менее пяти. Для реализации алгоритмов использовать собственный класс для работы с длинными числами (причем предложить два варианта такого класса в зависимости от выбора способа хранения цифр длинного числа). 2) Стеганографические алгоритмы. Скрытие данных в текстовом файле, скрытие данных в изображениях, скрытие данных в аудиофайлах. 3) Атаки на криптосистемы (в частичной или полной неизвестности).

Марк
07.07.2016
09:34:38
In [1]: x = 100 In [2]: y = 100 In [3]: id(x) == id(y) Out[3]: True In [4]: x = 500 In [5]: y = 500 In [6]: id(x) == id(y) Out[6]: False

Схуяли?

Ruslan
07.07.2016
09:34:54
да, у меня все ок
Спс. Странности

Zart
07.07.2016
09:35:25
Схуяли?
оптимизация

Марк
07.07.2016
09:39:07
оптимизация
а подробнее? Чем 500 не утраивает и один адресс?

Zart
07.07.2016
09:39:56
тем что для 500 создаются новые объекты, поэтому две разных 500 с разными id

Denis
07.07.2016
09:40:07
В PyPy везде True вроде

Sergey
07.07.2016
09:40:13
а подробнее? Чем 500 не утраивает и один адресс?
Мелкие числа выделяются при старте

Zart
07.07.2016
09:40:32
на старте питоне создаются интегер объекты от -10 до 256

Sergey
07.07.2016
09:41:21
Другой вопрос - зачем числа сравнивать как объекты?

Zart
07.07.2016
09:41:25
когда нужны числа в этом диапазоне, то цпитон берет готовые

Марк
07.07.2016
09:41:57
Такс, а после каждый инт имеет свой адресс?

Zart
07.07.2016
09:42:19
это детали реализации

Sergey
07.07.2016
09:42:33
И, если уж на то пошло, есть x is y вместо id(x) == id(y)

Темный
07.07.2016
09:42:36
забавно что об этом ни в одном учебнике не написано

*который я читал

Sergey
07.07.2016
09:42:52
Zart
07.07.2016
09:43:30
потому что на практике это вряд ли всплывёт

Андрей
07.07.2016
09:43:32
еще забавно что если в одной строке писать x, y = 500, 500 id(x) == id(y) True

Google
Марк
07.07.2016
09:43:34
В Лутце написано, емнип
Ну это уж совсем надо внимательно читать

Темный
07.07.2016
09:44:47
потому что на практике это вряд ли всплывёт
а если всплывет, то перелопатишь все, но не эти интегеры

Zart
07.07.2016
09:44:56
не всплывет

Андрей
07.07.2016
09:45:04
Марк на 2 чата играешь?

Марк
07.07.2016
09:45:31
Вопрос там задан был, а тут я запросил процессорное время Зарта

Темный
07.07.2016
09:46:38
да там сидеть зашквар

тут уютнее

Zart
07.07.2016
09:53:33
https://docs.python.org/2/faq/programming.html#why-does-a-tuple-i-item-raise-an-exception-when-the-addition-works

http://bugs.python.org/issue11562

ну и http://stackoverflow.com/questions/9755990/why-can-tuples-contain-mutable-items до кучи

Sergey
07.07.2016
09:57:46
Вооьще прикольно, конечно. Если TypeError отловить и не знать об этой фиче, можно многое сломать

Zart
07.07.2016
09:58:15
ну так тут идёт присваивание элементу тупла

Zart
07.07.2016
09:58:21
что ты ловить собрался?

>>> a = ([0], 1) >>> a[0] += [2] Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'tuple' object does not support item assignment >>> a ([0, 2], 1) >>> x = a[0] >>> x += [3] >>> a ([0, 2, 3], 1)

Sergey
07.07.2016
09:59:40
что ты ловить собрался?
In [1]: a=([1],2) In [2]: try: ...: a[0]+=[3] ...: except TypeError: ...: pass ...: In [3]: a Out[3]: ([1, 3], 2)

?

Zart
07.07.2016
10:00:06
с туплами так не работают обычно

Sergey
07.07.2016
10:00:12
это понятно =)

Zart
07.07.2016
10:00:51
хотя сюрприз здесь скорее в том, что __i*__ методы не просто мутируют элемент, но и повторяют присваивание

Sergey
07.07.2016
10:00:53
в них вообще mutable обычно не кладут

Google
Zart
07.07.2016
10:01:15
в туплы кладут всё

от перемены контента в мутабельном контейнере - референс на него не меняется

Sergey
07.07.2016
10:04:13
спасибо, кэп

Zart
07.07.2016
10:15:43
спасибо, кэп
тогда капитанский вопрос - знаешь как питон отличает списки от диктов при сериализации в пикл?

Sergey
07.07.2016
10:16:32
мне ни разу не приходилось использовать пикл, так что - нет

Zart
07.07.2016
10:17:11
вопрос не совсем в пикле, а в обходе дерева объектов поменяй пикл на copy.deepcopy

Admin
ERROR: S client not available

Zart
07.07.2016
10:18:13
тот же принт взять

>>> x = {} >>> x['x'] = x >>> x {'x': {...}}

Sergey
07.07.2016
10:23:21
ну ссылки на самого себя там (в deepcopy) отдельно отлавливаются, как я вижу, а в чем вопрос-то?

Zart
07.07.2016
10:24:09
ну чтобы ссылки на самого себя ловить - тебе надо реализовать алгоритм обхода, чтобы отлавливать и кэшировать каждый референс

в общем это такой капитанский вопрос на знание метода __reduce_ex__

Sergey
07.07.2016
10:27:49
в deepcopy для кеширования вообще dict используется

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

Zart
07.07.2016
10:29:42
то что питон все операции над объектами делает путем выполнения специальных методов - это тоже азы

ну, редьюс довольно редкий из них, да

Sergey
07.07.2016
10:33:40
Что-то по-моему тут разговоров про Python больше, чем в соседнем чатике

Zart
07.07.2016
10:34:12
удивительно

Roman
07.07.2016
10:36:27
всё потому что тут есть zart, а там нет

Zart
07.07.2016
10:36:58
пф

Google
Zart
07.07.2016
10:37:14
ты путаешь причину со следствием

Roman
07.07.2016
11:26:35
3,5,2 питон есть х64? То смотрю установлен 3.5.1 х64 а 3.5.2 х32

Zart
07.07.2016
11:27:58
https://www.python.org/ftp/python/3.5.2/python-3.5.2.exe https://www.python.org/ftp/python/3.5.2/python-3.5.2-amd64.exe

Zart
07.07.2016
11:30:45
нет, это ipython

ipy - это IronPython

D:\>ipy IronPython 2.7.5 (2.7.5.0) on .NET 4.0.30319.42000 (32-bit) Type "help", "copyright", "credits" or "license" for more information. >>>

Dmitry
07.07.2016
11:32:08
ipy - это IronPython
омг и такой есть )

Марк
07.07.2016
12:05:51
Такс, можно еще раз пояснить такую штуку: a, b = 500 500 имеют один адрес, а a = 500 b = 500 разные.

Zart
07.07.2016
12:06:30
логично же

потому что в первом случае при компиляции обе константы станут одной

Марк
07.07.2016
12:07:59
Но если инт меньше 255, то разницы не будет. Верно?

Zart
07.07.2016
12:08:14
зачем тебе эта херня?

или ты еще не понял как это работает?

Марк
07.07.2016
12:08:58
Не всё понятно

На начальном этапе у пайтона зарезервировано от -10 до 256 значений инта(верно?). Поэтому если мы указыаем a = 100 и b = 100 , то они будут иметь одинаковый адрес в памяти хоть ёбнись башкой об стену. А вот после 300 - нет. Окей. В этом же случае, когда мы пишем a , b = 100 100 , как ты говоришь, компилятор делает одну переменную. Или уже нет, ибо смысл то?

Там итак id совпадать будут

Sergey
07.07.2016
12:12:56
-5...256, если уж буквоедствовать

Zart
07.07.2016
12:13:00
если тебе интересна такая ерунда - иди читай исходники

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

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