Skip to content

Instantly share code, notes, and snippets.

View JulienPalard's full-sized avatar
🐍
🐍

Julien Palard JulienPalard

🐍
🐍
View GitHub Profile
@JulienPalard
JulienPalard / mail-parse.py
Created February 16, 2016 15:10
Not-so-good example of mail header / body parsing
import os
import re
import sys
from email.parser import Parser
from email.header import decode_header
import logging
logger = logging.getLogger(__name__)
@JulienPalard
JulienPalard / asynczip.py
Created April 2, 2016 19:09
Aggregation of asynchronous iterables
import asyncio
SOON = 'SOON'
PAIRED = 'PAIRED'
class AsyncZip:
"""Aggregates async iterables, like `zip` or `select`.
The current state is stored in `self.iterating` as the `__anext__()`
@JulienPalard
JulienPalard / uri_multi_expand.py
Created May 16, 2017 14:01
URI multi template
#!/usr/bin/env python3
import itertools
from uritemplate import URITemplate
def dict_product(a_dict):
"""Iterate over the product of all values of the given dict.
>>> for d in dict_product({'foo': [1, 2], 'bar': [1, 2]}):
@JulienPalard
JulienPalard / python-build.20180623214511.15791.log
Last active June 23, 2018 20:01
./bin/pyenv install 3.7.0rc1 failing
/tmp/python-build.20180623214511.15791 ~/.pyenv
/tmp/python-build.20180623214511.15791/Python-3.7.0rc1 /tmp/python-build.20180623214511.15791 ~/.pyenv
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for python3.7... python3.7
checking for --enable-universalsdk... no
checking for --with-universal-archs... no
checking MACHDEP... checking for --without-gcc... no
checking for --with-icc... no
checking for gcc... gcc
### Keybase proof
I hereby claim:
* I am julienpalard on github.
* I am julienpalard (https://keybase.io/julienpalard) on keybase.
* I have a public key ASC7dVPPYwLtCqT2bOTWWE-JgQ40WPTZCTkgFS4JEZqm1wo
To claim this, I am signing this object:
@JulienPalard
JulienPalard / find_in_po.py
Created October 5, 2018 10:17
Find a word in msgids, show msgstrs.
#!/usr/bin/env python3
import argparse
from glob import glob
import os
from textwrap import fill
import regex
import polib
from tabulate import tabulate
def van_eck():
"""https://oeis.org/A181391
"""
seen = {}
yield 0
previous, current = 0, None
i = 1
while True:
if previous in seen:
current = i - seen[previous] - 1
@JulienPalard
JulienPalard / FastFood.py
Created December 10, 2019 10:36 — forked from PiDroid-B/FastFood.py
FastFood
import asyncio
import random
from datetime import datetime
from enum import Enum
from dataclasses import dataclass
class CMD_STATE(Enum):
Undefined = 0
Ask = 1
@JulienPalard
JulienPalard / pi.py
Created December 12, 2019 14:50
Examine Python's PI
from math import pi
from fractions import Fraction
import struct
def double(bits: str) -> Fraction:
def exponent(input_value: str):
return int(input_value, 2) - 1023
def fraction(b):
@JulienPalard
JulienPalard / covid19fr.py
Last active September 7, 2020 16:33
Wikipedia: To update Covid graphs
#!/usr/bin/env python3
# Uses https://www.data.gouv.fr/fr/datasets/donnees-hospitalieres-relatives-a-lepidemie-de-covid-19/
# - donnees-hospitalieres-covid19
# - donnees-hospitalieres-nouveaux-covid19
import csv
from statistics import mean
from itertools import groupby
from dateutil.parser import parse