
Stanislav
26.07.2016
13:46:41
Пффф
Я тебе не сишник
Хотя можно попробовать юзать 1 список для спецефичных задач

Aragaer
26.07.2016
13:47:06
если например у меня есть список, из которого я намерен что-то удалять, и это допустим жава, то я могу на одном проходе собрать список индексов, которые хочу дропнуть

Google

Stanislav
26.07.2016
13:47:22

Aragaer
26.07.2016
13:47:35
но можно просто идти с конца. В этом случае я буду итерироваться не по списку, а именно цикл по индексу

Whore Amazing
26.07.2016
13:47:37
Хм, а это идея.
Только вот мне не только удалять надо, а еще и вставлять. И порядок важен.

Aragaer
26.07.2016
13:47:56
ты можешь это разделить на два цикла - вставки и удаления?

Whore Amazing
26.07.2016
13:48:05
Нет, не могу.

Aragaer
26.07.2016
13:48:26
альтернативно - делай не цикл по списку, а именно цикл по индексу

Whore Amazing
26.07.2016
13:48:33
От паскуда.

Alexander
26.07.2016
13:48:42
или deque... ?

Whore Amazing
26.07.2016
13:48:43

Aragaer
26.07.2016
13:48:51
вон как написано

Whore Amazing
26.07.2016
13:48:58
Дануевонах, я лучше список продублирую...

Aragaer
26.07.2016
13:49:01
не for i in a, а for i in range(len(a))
тогда ты всегда знаешь, что происходит с индексом на вставках и удалениях (подсказка - ничего)

Google

Whore Amazing
26.07.2016
13:50:09
Это и плохо. Индекс двигать куда сложнее, чем список дублировать.
Придется пожертвовать памятью. И принципами.

Alexander
26.07.2016
13:50:25
это не извращение, нет?
может лучше двухсвязный список для такого?

vlade11115
26.07.2016
13:50:46

Whore Amazing
26.07.2016
13:50:55

Alexander
26.07.2016
13:52:00
в двухсвязном ведь можно грохнуть текущий элемент и потом дальше пойти

Zahar
26.07.2016
13:52:04
Treap по неявному ключу строй

Whore Amazing
26.07.2016
13:52:54
Эта операция со списком еще не окончательная и не самая важная даже)
Так что не

Aragaer
26.07.2016
13:53:15
а вот ты ваще скажи, что за список и что именно ты в нем править собрался
а то может и правда правильнее копию собирать

Whore Amazing
26.07.2016
13:53:40
Э, тут объяснять дольше будет, чем пишу. Сам уже понял, что правильнее.

Zahar
26.07.2016
13:53:47
Трип с неявным ключом поддерживает все те же операции, что и со списком

Whore Amazing
26.07.2016
13:54:09
Трип - это что-то из наркомании, не?

Zahar
26.07.2016
13:54:19
Ну

Pavel
26.07.2016
13:54:22

Whore Amazing
26.07.2016
13:54:54

Zahar
26.07.2016
13:55:01
Treap, Декартово Дерево, дуча, курево, дерамида
Много названий

Google

Whore Amazing
26.07.2016
13:55:41
Ничего, подождут.
В этом процессе я имею право заставить юзера подождать :)

Aragaer
26.07.2016
13:59:27
ну это функциональный подход - мы не модифицируем исходный список, мы просто создаем новый

Alexander
26.07.2016
14:01:12
что иной раз эффективнее, так как нет перемещения данных и фрагментации памяти

agic
26.07.2016
14:01:21
вот вам еще один питонист

Alexander
26.07.2016
14:01:57
alloc - это дорого
один раз на весь список, часто лучше чем 100500 раз на каждый элемент

Aragaer
26.07.2016
14:02:08
это если заранее выделить новый список достаточно большого размера
а не делать append 100500 раз
еще фишка в том, что такую операцию можно вообще потом превратить в list comprehension
и там уже питон начнет свои оптимизации творить

Danil
26.07.2016
14:06:08

Alexander
26.07.2016
14:06:17
http://stackoverflow.com/questions/311775/python-create-a-list-with-initial-capacity

Alexander
26.07.2016
14:06:26
simple append 0.0102
pre-allocate 0.0098

Whore Amazing
26.07.2016
14:06:34
эх, где ж то простое время, когда все на генераторах писалось...

Alexander
26.07.2016
14:06:41
хотя этот pre-allocate - очень подозрителен

Stanislav
26.07.2016
14:06:41

Игорь
26.07.2016
14:06:56
А вот подскажите.
Есть джанго и MySQL, джанго хранит в MySQL в том числе JSONы через JSONField.
Как бы безболезненно перевести его на использование хранилища в файловой системе?

Whore Amazing
26.07.2016
14:08:45
Безболезненно, по-моему, никак.

Aragaer
26.07.2016
14:09:37
сконвертить из мускуля в скулайт!

Paul
26.07.2016
14:09:47

Google

Alexander
26.07.2016
14:09:56
конвертишь JSONField в TextField, мигрируешь в новые поля данные

Whore Amazing
26.07.2016
14:10:32
Кокой ужас.

Paul
26.07.2016
14:10:59
коллеги, а подскажите пжлст библиотеку под пайтон для генерации высокоэнтропийных строк? Пароли, например, генерировать. Желательно, чтобы это было что-то действительно по-настоящему случайное, а то я в пхп использовал рандом цифрами, так пхп легко мог выдать 44444 или 01234

Danil
26.07.2016
14:11:01

Stanislav
26.07.2016
14:11:21

Whore Amazing
26.07.2016
14:11:32

Danil
26.07.2016
14:11:33
через собачку это ж просто сахар

Admin
ERROR: S client not available

Stanislav
26.07.2016
14:11:48
Факт в том, что
@decor
def func()Выглядит лучше в сто раз
И во всех туторах, гайдах, учебниках и прочем показывают только такую запись

Paul
26.07.2016
14:12:14
uuid!
нет, мне нужно иметь возможность генерировать только цифры или только буквы, UUID не катит, увы

Whore Amazing
26.07.2016
14:12:25
Напиши сам.

Paul
26.07.2016
14:12:27
UUID знаю, люблю и использую

H
26.07.2016
14:12:29

Danil
26.07.2016
14:12:57
def generate_random_string(n=16):
r = random.SystemRandom()
alphabet = string.ascii_letters + string.digits
return ''.join(r.choice(alphabet) for _ in xrange(n))

Paul
26.07.2016
14:12:59
я не криптограф, увы. Боюсь накосячить. Моей квалификации уже хватает, чтобы понять, как можно сломать криптосистему кривой реализацией

Whore Amazing
26.07.2016
14:13:21

Danil
26.07.2016
14:13:33
%)
аааа
случайно удалил

Google

Danil
26.07.2016
14:14:01
что происходит блин

Whore Amazing
26.07.2016
14:14:14
Анархия.
Конец света.

Aragaer
26.07.2016
14:14:21
генерить на питоне рандомные строчки?

Alexander
26.07.2016
14:14:37

Whore Amazing
26.07.2016
14:14:38
Ладно, лимит хуевых советов исчерпан, пойду список теребить.

Pavel
26.07.2016
14:14:44

Paul
26.07.2016
14:14:53

Aragaer
26.07.2016
14:14:59
join([random.choice(string.ascii_letters + string.digits) for _ in range(16)])

Alexander
26.07.2016
14:15:05

Danil
26.07.2016
14:15:17
нафиг все эти проверки, системного рандома должно хватать

Aragaer
26.07.2016
14:15:20
и все
ну import random, string

Danil
26.07.2016
14:20:47
(я предполагаю, что система винда/линь а не что-то особенное)

Stanislav
26.07.2016
14:21:38
Гайс
Никто не помнит, там вроде какой-то магический метод был для списков
Типа создание списка с определенным количеством слотов. Там еще тесты видел, список с определенным количеством слотов был вроде как быстрее чем обычный список

Danil
26.07.2016
14:22:01
список с определенным количеством слотов? Оо
ну просто массив сделай

Игорь
26.07.2016
14:22:18
как прокладка между json и третьим сервисом

Stanislav
26.07.2016
14:22:42