golang
python 2.xsys.maxintで取得。環境によって32bit符号付き整数、または64bit符号付き整数の最大値が取得できる print sys.maxint # 9223372036854775807 print hex(sys.maxint) # 0x7fffffffffffffff print 2**63-1 # 9223372036854775807 python 3.x sys.max…
CodeEval 関連:Python 3.xでCodeEvalのAge Distribution - brainstorm
CodeEval 関連:Python 3.xでCodeEvalのRoller Coaster - brainstorm
CodeEval
CodeEval
CodeEval
CodeEval
CodeEval
CodeEval
CodeEval
CodeEval
CodeEval 正規表現で書きなおした。 package main import ( "bufio" "fmt" "log" "os" "regexp" "strings" ) var email_pattern = `^(?i:[^ @"<>]+|".*")@(?i:[a-z1-9.])+.(?i:[a-z])+$` var email_re = regexp.MustCompile(email_pattern) func main() { fi…
CodeEvalcapitalizeはstrings.Titleでできた。
CodeEval
CodeEval
CodeEval
CodeEval
CodeEval
CodeEval
CodeEval
CodeEval
CodeEvalpythonで書いたコードを、golangで書きなおすのはそれほど大変ではない。 rubyのほうがより簡単だと思うけど。 リスト内包表記は欲しくなる。
CodeEval関連 : python2でCodeEvalのDATA RECOVERY - brainstorm
CodeEval関連 : Python2でCodeEvalのWorking Experience - brainstorm
martini-contribにgzipも用意されている。martini-contrib ただ、Accept-Encodingにgzipが含まれていれば無条件でgzipするので、小さいコンテンツを返すときは余計にサイズが大きくなってしまう。 djangoを見てみたら、django.middleware.gzip.GZipMiddlewar…
関連 : Python2で1秒ごとのメソッド呼び出し回数を制限するデコレータ - brainstorm goだとtime.Tickで、指定した間隔でメッセージを受け取ることができるので、こんな形でできそう
reflect.TypeOfで package main import ( "fmt" "reflect" ) func main() { fmt.Println(reflect.TypeOf(1)) // int fmt.Println(reflect.TypeOf("")) // string fmt.Println(reflect.TypeOf([]string{})) // []string fmt.Println(reflect.TypeOf(true)) //…
キーでソートして、値はエスケープする package main import ( "fmt" "net/url" "sort" "strings" ) type SortedQuery struct { _map map[string]string keys []string } func (sq *SortedQuery) Len() int { return len(sq._map) } func (sq *SortedQuery) …
HMACでハッシュ値を生成してbase64エンコードしてurlエスケープする。 amazon product apiでsignatureとして使われる値。python2 import hmac import urllib from hashlib import sha256 from base64 import b64encode key = "key" data = "data" digest = h…