Skip to content

Instantly share code, notes, and snippets.

View liuliqiang's full-sized avatar

Liqiang Lau liuliqiang

View GitHub Profile
@liuliqiang
liuliqiang / app.py
Last active September 9, 2016 03:34
flask-issue-2016-test
#!/usr/bin/env python
# encoding: utf-8
import os.path as op
from flask import Flask, request, render_template
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
@liuliqiang
liuliqiang / array.py
Last active September 9, 2016 07:34
python toml examples
import json
import toml
result = toml.loads("""
[array]
hello=['a', 'b', 'c']
arrya_with_array=[
['1', '2', '3'],
['4', '5', '6']
]
@liuliqiang
liuliqiang / keyboard4_4.py
Last active May 11, 2022 08:51
Raspberry 4*4 keyboard code
# #####################################################
# Python Library for 4x4 matrix keypad using
# 7 of the avialable GPIO pins on the Raspberry Pi.
#
# This could easily be expanded to handle a 4x4 but I
# don't have one for testing. The KEYPAD constant
# would need to be updated. Also the setting/checking
# of the colVal part would need to be expanded to
# handle the extra column.
#
@liuliqiang
liuliqiang / authors_books.sql
Created September 18, 2016 06:37
sqlalchemy try
-- SQL for the Authors & Books tables
BEGIN TRANSACTION;
DROP TABLE IF EXISTS Books;
DROP TABLE IF EXISTS Authors;
CREATE TABLE Authors(AuthorId INTEGER PRIMARY KEY, Name TEXT);
INSERT INTO Authors VALUES(1, 'Jane Austen');
INSERT INTO Authors VALUES(2, 'Leo Tolstoy');
INSERT INTO Authors VALUES(3, 'Joseph Heller');
@liuliqiang
liuliqiang / client.py
Last active January 10, 2020 03:15
celery-demo
#!/usr/bin/env python
# encoding: utf-8
from worker import add
# add.apply_async((1, ), priority=1)
# add.apply_async((1, ), priority=1)
add.apply_async((7, ), priority=7)
add.apply_async((6, ), priority=6)
add.apply_async((5, ), priority=5)
add.apply_async((8, ), priority=8)

Free O'Reilly books and convenient script to just download them.

Thanks /u/FallenAege/ and /u/ShPavel/ from this Reddit post

How to use:

  1. Take the download.sh file and put it into a directory where you want the files to be saved.
  2. cd into the directory and make sure that it has executable permissions (chmod +x download.sh should do it)
  3. Run ./download.sh and wee there it goes. Also if you do not want all the files, just simply comment the ones you do not want.
@liuliqiang
liuliqiang / tmux-cheatsheet.markdown
Created November 17, 2017 10:44 — forked from ryerh/tmux-cheatsheet.markdown
Tmux 快捷键 & 速查表

Tmux 快捷键 & 速查表

启动新会话:

tmux [new -s 会话名 -n 窗口名]

恢复会话:

tmux at [-t 会话名]
@liuliqiang
liuliqiang / defer顺序
Last active August 15, 2018 15:41
Go 语言中的异常处理
package main
import "fmt"
func main() {
defer func() {
fmt.Println("stack a")
}()
defer func() {
fmt.Println("stack b")
@liuliqiang
liuliqiang / XMLHTTPRequest
Created August 20, 2018 15:42
XMLHTTPRequest
<html>
<!-- created by https://liqiang.io -->
<head>
<script type="text/javascript">function loadXMLDoc() {
// code for IE7+, Firefox, Chrome, Opera, Safari
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
console.log(xmlhttp.responseText);
}
@liuliqiang
liuliqiang / XMLHTTPRequest
Created August 20, 2018 15:42
XMLHTTPRequest
<html>
<!-- created by https://liqiang.io -->
<head>
<script type="text/javascript">function loadXMLDoc() {
// code for IE7+, Firefox, Chrome, Opera, Safari
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
console.log(xmlhttp.responseText);
}