In [52]: %timeit ujson.dumps(n, ensure_ascii=False)
10000 loops, best of 3: 46.4 µs per loop
In [53]: %timeit ujson.dumps(n, ensure_ascii=True)
10000 loops, best of 3: 58.3 µs per loop
In [40]: import json
In [41]: %timeit json.dumps(n, ensure_ascii=True)
10000 loops, best of 3: 79 µs per loop
In [42]: %timeit json.dumps(n, ensure_ascii=False)
1000 loops, best of 3: 448 µs per loop
~ $ system_profiler SPUSBDataType
USB Hi-Speed Bus:
...
iPhone:
Product ID: 0x12a8
Vendor ID: 0x05ac (Apple Inc.)
Version: 6.02
Serial Number:
Speed: Up to 480 Mb/sec
Manufacturer: Apple Inc.
Location ID: 0xfd120000 / 4
Current Available (mA): 500
Current Required (mA): 500
Extra Operating Current (mA): 500
Bluetooth USB Host Controller:
Product ID: 0x821f
Vendor ID: 0x05ac (Apple Inc.)
Version: 1.31
Speed: Up to 12 Mb/sec
Manufacturer: Apple Inc.
Location ID: 0xfa113000 / 6
Current Available (mA): 500
Current Required (mA): 0
Большое спасибо за то, что показали webassets. Используем django_compressor, но в нем не хватает management command. WebAssets в свою очередь похоже включает все лучшее из compressor'а и compress'а.
Хорошая и достойная идея, но очень маленький шрифт в ответах (возможно так и надо, но стоит сделать возможность его увеличивать на лету) и наличие DEBUG=True в settings.py
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)]
Core i5 (2.5Ghz)
Если дело в этом, то тогда чем хорош третий вариант? Он точно так же, как и первый вариант, не даст изменить размер словаря во время итерации :)
медленнее, чем
Мало того, что первый вариант быстрее, так он еще и не создает в памяти список для итерации: