Skip to content

Instantly share code, notes, and snippets.

View JokerQyou's full-sized avatar

Joker_ JokerQyou

View GitHub Profile
@JokerQyou
JokerQyou / sudoku.py
Created June 13, 2014 07:03
A Sudoku solver in Python2, can't find the original author
#!/usr/bin/env python
#coding=utf-8
units = ([[j for j in range(81) if j%9 == i] for i in range(9)] +
[[j for j in range(81) if j/9 == i] for i in range(9)] +
[[j for j in range(81) if (j%9)/3+(j/27)*3 == i] for i in range(9)])
uindexs = [[j for j, u in enumerate(units) if i in u] for i in range(81)]
class Sudoku(object):
@JokerQyou
JokerQyou / decorator.py
Last active August 29, 2015 14:12
Type check
import functools, inspect
def _strict_type(type_map):
'''
Check func parameter type
:param f: func
:param type_map: mapping of parameter types
:return:
'''
def _wrapped(f):
@JokerQyou
JokerQyou / github.css
Last active December 18, 2015 00:18 — forked from andyferra/github.css
body {
font-family: Helvetica, arial, sans-serif;
font-size: 14px;
line-height: 1.6;
padding-top: 10px;
padding-bottom: 10px;
background-color: white;
padding: 30px; }
body > *:first-child {
@JokerQyou
JokerQyou / nginx.conf
Created July 7, 2013 14:19
Nginx configuration for my selfoss site
#涉及到真实的服务器地址一律以 myselfoss.com 代替
server {
listen 80;
server_name myselfoss.com;
index index.php index.html index.htm;
root /home/wwwroot/rss;
error_log /var/log/nginx/rss.error.log;
access_log off;
location ~ \.php$
@JokerQyou
JokerQyou / agtrunc
Last active April 19, 2016 06:03 — forked from tweekmonster/agtrunc
A script to truncate the_silver_searcher's output in Vim
#!/usr/bin/env python
'''Truncates matches from ag
Place this script somewhere in your $PATH, like ~/bin and pipe ag into it.
Vim could be setup like this:
if executable('ag')
set grepprg=ag\ --vimgrep\ -w\ $*
if executable('agtrunc')
@JokerQyou
JokerQyou / example.py
Created May 11, 2016 02:54 — forked from schlamar/example.py
mplog: Python advanced multiprocessing logging.
import logging
import multiprocessing
import time
import mplog
FORMAT = '%(asctime)s - %(processName)s - %(levelname)s - %(message)s'
logging.basicConfig(level=logging.DEBUG, format=FORMAT)
existing_logger = logging.getLogger('x')
@JokerQyou
JokerQyou / pattern_split.py
Created May 23, 2016 07:26
Regular expression to split by punctuation
# coding: utf-8
from __future__ import print_function
import re
pattern = u''.join([
u'[',
u'\u0020-\u002f', # < General Latin characters, exclude @, letters and numbers
u'\u003A-\u003f',
u'\u005b-\u0060',
@JokerQyou
JokerQyou / watchdog_persistent_observer.py
Created June 14, 2017 09:49 — forked from serge-kilimoff/watchdog_persistent_observer.py
Persistent watchdog observer. When watchdog re-start, check if new/modify/delete/etc.. files or directories since the last launch, and send events for suscribers handlers.
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Subclassing Observer for saving states of folders, and load this states at the next observation.
TODO : mapping events and handlers dispatching, for a shorter code.
"""
from __future__ import unicode_literals, print_function, division
import cPickle as pickle
import os
@JokerQyou
JokerQyou / README.md
Last active September 29, 2017 07:28
Wtf is with these docker registry clients, I just want to delete an image.

Usage:

python delete_docker_image.py 192.168.2.1:5000/hello-world:latest --delete-layers
@JokerQyou
JokerQyou / osx_notify.py
Last active January 2, 2018 12:30 — forked from instagrim-dev/notify.py
A python lib for sending notification on OS X
# coding: utf-8
from Foundation import NSUserNotification
from Foundation import NSUserNotificationCenter
from Foundation import NSUserNotificationDefaultSoundName
def notify(message, title='Notification', sound=False):
notification = NSUserNotification.alloc().init()
notification.setTitle_(title)
notification.setInformativeText_(message)
if sound: