Skip to content

Instantly share code, notes, and snippets.

View sxslex's full-sized avatar

Alexandre Villela - SleX sxslex

View GitHub Profile
@sxslex
sxslex / gist:0edd432426770af63251
Created December 3, 2014 16:21
list sort lambda
voo = [
('KLM75', 'Amsterdam', '14:35', '60', '50'),
('AF111', 'Paris', '14:20', ' 50', '64'),
('LH333', 'Frankfurt', '14:10', '112', '203'),
('KLM71', 'Madrid', '14:55', '120', '100'),
('TAP103', 'Salvador', '15:20', '174', '210'),
('KLM79', 'Sofia','09:30','113','13'),
('LH123', 'Berlin', '15:10', '115', '210')]
voo.sort(lambda x, y: cmp(x[2], y[2]))
@sxslex
sxslex / gist:d029752b656b8a4a1834
Created June 15, 2015 23:21
exemplo de retornos diferentes para atraves de views
dados = [dict(id=1,name='slex',year=25+i) for i in xrange(10)]
def view1(items):
return [
dict(
id=item['id'],
name=item['name'],
year=item['year'],
)
# -*- coding: UTF-8 -*-
# by slex@slex.com.br
# =)
def infinity():
# Ao infinito e alem ...
i = 0
while True:
i += 1
yield i
@sxslex
sxslex / split_xml_tag_level.py
Last active May 20, 2016 16:11
Separa Node XML Level
import pprint
conteudo = """
<?xml encoding="utf-8"?>
<Bola>
<Imovel>
<sssss>asdasd</sssss>
<AAAA>asdasd</AAAA>
</Imovel>
<Imovel>2<!--Bolas?><?<# --></Imovel>
<Imovel>3</Imovel>
@sxslex
sxslex / da_urllib.py
Last active September 7, 2016 16:22
Decodifica um url em partes
# -*- coding: utf-8 -*-
# da_urllib.py
# by sx.slex@gmail.com
import urllib
def urldencode(params):
resp = {}
for item in params.split('&'):
if not item:
# -*- coding: utf-8 -*-
"""Renomeia pastas de acordo com uma tag de um arquivo dentro da pasta."""
# renomeia_pastas.py
import unicodedata
import glob
import os
def remove_accents(s):
"""Remove acentos de uma string."""
# -*- coding: utf-8 -*-
"""Fecha todas as janelas pelo nome."""
from gi.repository import Gtk, Wnck
import os
Gtk.init([])
screen = Wnck.Screen.get_default()
screen.force_update()
@sxslex
sxslex / template_jijja2.py
Last active August 2, 2019 02:36
exemplo jinja2 tojson
def template(html, **params):
import jinja2
env = jinja2.Environment(loader=FileSystemLoader(''))
def tojson(s):
import json
return json.dumps(s)
env.filters['tojson'] = tojson
@sxslex
sxslex / pagination_json_get.py
Created May 4, 2017 15:26
Busca os dados de um JSON paginando
import requests
def busca_noticias(url, limit=10, debug=False):
offset = 0
while True:
urlget = url.format(limit=limit, offset=offset)
if debug:
print('#### GET: ' + urlget)
resp = requests.get(urlget).json()
for noticia in resp['ok']['noticias']:
@sxslex
sxslex / semaphore.py
Last active May 8, 2017 18:16
Implementa semaphoro para controle de blocos atômicos em arquivo.
# -*- coding: utf-8 -*-
"""Implements semaphoro to control atomic blocks on file."""
# by sx.slex@gmail.com
import os
import sys
import uuid
import time
import signal