Skip to content

Instantly share code, notes, and snippets.

{"iv":"09hmXXWoTomKNGZUtJ8tsQ",
"salt":"3MzaifTMm1M",
"ct":"Hoo0fsfm1AZQKSUQbpZ7NrV084Zs0t1+uR+7KSKVVqBuzu+ogkECW7nCaWFXLESYcoUUf/HIQRPkLigr1A7x+7c2hymrHsdudVF5ikMGILr4YczuJV89eJo4uzND5H+V0TY7vTCA8Cw4AglAoAhoWn2dCZHRtCXmEGFwxo915Rn0P7ov0zpyJYRaEP86iCzC/RzseUBWnMCTZQTlfgXCbbvTEL8U8KsI3guPUSKf7R+7CUlfAgvLUF0eFGvX/PBj2vY4T6ClqAtK93Q168Nn3UfGsx6GbtL83Z2QEwb4Ia3Fl3WifWWU/cf76a8rm48PvnPrIWfWxVscHVqR5zmEj/mda1dkz9z8TeVABErIh7XyMRLqQsLQnBHKO2CmhorJM+I2pLX7pNYyOUfrWw/kb8+r8QYbj2wkIv0UbzSd4HDYH3tXTdLnOWG+eBLAFaMoUgNjzTlXRuEOtZIy3UC0YaR9xJ8rQgEECYExAEI9u+eUTQYJgH2Z8vYNte3+FjKXSreI9i+7gfnvlzOza88bHWIYKfOhJzcUcEYnba0r80wJtRqQxW7dYyimfAsJeHBn6nRYFGcHcXW20WxUbSax0AWCjJc3HCFpxfc9/J0IyGuqCFgBLaESrQV7oCRhTfc+VHzCwR2Ns5NaAXZyKzarW1XY9rWbnK8NZmMq+WN3rL46SO4NbfiWq9sRU7zX2neOfJ8C3M19Lq5+sMXeihP+TxZWcUhD/NxRSQDARN8/zE6JfOrilxGDGglJmkskwqHJH/52Q7LckdBXu5sC0Oc67J7QMdsDQot7Ulr/Asql2yYK4joV4Rd7i+4CuvanAPXT3uJmuphN6KK9tjU9tgVnRvZO0gvCEeFjhOGNatQGcF2TJFyi2q/l9iQR3+BNQrRcUiUfKwjNQq5PuIy/T8LyKvwC3xquF3syJ7Ck2lhL1CbspEdR3tvBLkc3SZsfJFhJxkYq
"{
"iv":"HG2g79e9G6fCesdu43g+Mg",
"salt":"uCblQBfucg8",
"ct":"hG+n0QzrDzuHRnmUedZo2Gf6v+ktgGDLFok3efHdI0XrnUq0xVWiF7JkMSRwFSO699+uQxfIKg+wTLU/ykXbHuIRX6WpENH8WvnUL1TGSSRuhfbNR/MWL8EBPAT62Je77Ej0CPecnCB4SFKHR1ubjA35M0ullW/OobupskXyYBmk5wsE7IQFKTWXdougzyxCABIxqQxF5i3rlIzHotSuJT+WpccAjtU2zEszGSJngVVFQ7m9C3SC5anU9hMYOntg6OK5d87BQ+j4AphAmKasyPVlaZlwLwIwdERFRLVk0ZEnIQZf9zLHNX90cC2Qf8yj1QTHUUHlAJ1Q4wpZhAQ4qFmLQ8Vn7YVyNPgqXM7PIsG0OX198BP238F59gr5qdq8o59qAize6/Ab0rR/rpx/477o7RLyUZVsccPbqoiJdSVCmvbh1UUUqUAHDD09+b6ioW57jO08jgT5xZMRmsDYzgxGdab2dkoWvbK3mr0CpVEyLXB7NNsoJNtO+FfeynaylOV8Rols/kx3izV8xgDESbl/o8pDB9cvXewodWE8cDI7bJnL1aAiIULxJL9Qe+kmFGwa8ahxVBnb+ECookeo9WcC5bGIV5JOX+o1d9lMDEnVIplCr5zPi4MvoyGEZNkjA7XXW9WILuupaNcp6eLsOufiBZb6SQ4EUCxU/wyigRFj5VOBBOlK57CCyXtXwy38GtGvTBFdQ1s9lCAmlGhtsaV6P8Ye/Pf5iDIMzGvkrHy7PB14HZ5zK0fzNQ5RHy1yMbtUrPO7gkuXLdzYz8cRFtttTLmoTv1q4Tm36ksqI/Dioo4fbwlurErkFcLX/3b+l6Z5UaYxdPea/L9ZJXft29hlxZqasymIGcbjdSlkXy2kvgofozsPxBxRP7eao7RYqQ5bSI91GUxun14z4CI7U7PVl2SmNqdSMaWIRwI6bxTl/PO2wY83aW0j4l6jejK/q4
"{
"iv":"HG2g79e9G6fCesdu43g+Mg",
"salt":"uCblQBfucg8",
"ct":"hG+n0QzrDzuHRnmUedZo2Gf6v+ktgGDLFok3efHdI0XrnUq0xVWiF7JkMSRwFSO699+uQxfIKg+wTLU/ykXbHuIRX6WpENH8WvnUL1TGSSRuhfbNR/MWL8EBPAT62Je77Ej0CPecnCB4SFKHR1ubjA35M0ullW/OobupskXyYBmk5wsE7IQFKTWXdougzyxCABIxqQxF5i3rlIzHotSuJT+WpccAjtU2zEszGSJngVVFQ7m9C3SC5anU9hMYOntg6OK5d87BQ+j4AphAmKasyPVlaZlwLwIwdERFRLVk0ZEnIQZf9zLHNX90cC2Qf8yj1QTHUUHlAJ1Q4wpZhAQ4qFmLQ8Vn7YVyNPgqXM7PIsG0OX198BP238F59gr5qdq8o59qAize6/Ab0rR/rpx/477o7RLyUZVsccPbqoiJdSVCmvbh1UUUqUAHDD09+b6ioW57jO08jgT5xZMRmsDYzgxGdab2dkoWvbK3mr0CpVEyLXB7NNsoJNtO+FfeynaylOV8Rols/kx3izV8xgDESbl/o8pDB9cvXewodWE8cDI7bJnL1aAiIULxJL9Qe+kmFGwa8ahxVBnb+ECookeo9WcC5bGIV5JOX+o1d9lMDEnVIplCr5zPi4MvoyGEZNkjA7XXW9WILuupaNcp6eLsOufiBZb6SQ4EUCxU/wyigRFj5VOBBOlK57CCyXtXwy38GtGvTBFdQ1s9lCAmlGhtsaV6P8Ye/Pf5iDIMzGvkrHy7PB14HZ5zK0fzNQ5RHy1yMbtUrPO7gkuXLdzYz8cRFtttTLmoTv1q4Tm36ksqI/Dioo4fbwlurErkFcLX/3b+l6Z5UaYxdPea/L9ZJXft29hlxZqasymIGcbjdSlkXy2kvgofozsPxBxRP7eao7RYqQ5bSI91GUxun14z4CI7U7PVl2SmNqdSMaWIRwI6bxTl/PO2wY83aW0j4l6jejK/q4
[
{ "keys": ["ctrl+d"], "command": "run_macro_file", "args": {"file": "Packages/Default/Delete Line.sublime-macro"} },
{ "keys": ["shift+alt+d"], "command": "find_under_expand", "context":
[
{ "key": "selection_empty", "operator": "equal", "operand": false, "match_all": true }
]
},
{ "keys": ["shift+alt+c"], "command": "run_macro_file", "args": {"file": "Packages/User/color.sublime-macro"} },
{ "keys": ["ctrl+alt+p"], "command": "previous_edit" },
{ "keys": ["ctrl+alt+n"], "command": "next_edit" }
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# vim: ai ts=4 sts=4 et sw=4 nu
import urlparse
import os
import urllib
from scrapy.utils.url import urljoin_rfc
from scrapy.selector import HtmlXPathSelector
@ksamuel
ksamuel / gist:1521153
Created December 26, 2011 13:30
Urwid chat UI
#!/usr/bin/env python
# coding: UTF-8
# code extracted from nigiri
import os
import datetime
import sys
import traceback
import re
@ksamuel
ksamuel / gist:1510635
Created December 22, 2011 15:12
Closure python en lecture seule
# this works (like javascript)
def test(value): # functions that returns a function
def closure(plus): # function got 'value' in a closure
return value + plus
return closure
@ksamuel
ksamuel / gist:1438211
Created December 6, 2011 13:31
Solr config file
<?xml version="1.0" encoding="UTF-8" ?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# vim: ai ts=4 sts=4 et sw=4
import urllib
import urllib2
import cookielib
import os
import gzip
import io
On peut aussi s'amuser avec les (peu connus) sets, qui sont built-in comme les dictionnaires::
In [1]: set((1,2,3,3,3,3,4)) # les set n'ont pas de doublons
Out[1]: set([1, 2, 3, 4])
In [2]: 1 in set((1,2,3,4)) # operation O(1) comme les dicts
Out[2]: True
In [4]: set((1,2,3,4)).intersection((4,5,6)) # operations ensemblistes
Out[4]: set([4])
Toutes les collections sont iterables, et donc on peut utiliser functions associées telle que zip() sur les listes, les tuples, les dicts, les sets, etc::