読者です 読者をやめる 読者になる 読者になる

Python

2系では使えないPython 3の優れた機能

Python 3で新たに導入された機能であっても、dict内包/set内包、setリテラル、そして__future__.print_functionについてはPython 2.7にバックポートされ未だに使える。 しかしながら、Python 3でしか使えない有用な機能は多く存在する。この記事はそれを紹介…

Pythonで文字列の長さに対するmax/minを取る

Pythonにおける文字列の大小比較はどのように行われるのか。それは文字列を先頭文字から順に比較して、Unicodeコードポイントが大きいほうが大きいと扱われる。 >>> max('abcde', 'efg') 'efg' 長さを比較したい場合は関数len()を用いて文字列長に変換する。…

pythonでasciiコード対応表を出力する

from pprint import pprint pprint([(i, chr(i)) for i in range(32, 128)])

ドナルド・トランプのツイートを元に株式取引を行うPythonスクリプト

ジョークプログラムだと思うがWeb APIマッシュアップとしては秀逸だと思った(こなみ maxbbraun/trump2cash: A stock trading bot powered by Trump tweets Twitter Streaming APIで発言をリアルタイム抽出 Google Cloud Natural Language APIで固有表現抽出…

文字列のパングラム(pangram)判定 in Python

パングラムは文字列に26種のアルファベットそれぞれが1回以上使われているもの。以下は文字列がパングラムならTrue,でなければFalseを返す。 import string def is_pangram(text): A = set(map(lambda x: x.lower(), text.replace(' ', ''))) B = set(strin…

整数をSI接頭辞で簡易表現(Firendly Number, by checkio)

Friendly number :: py.CheckiO - game for python coders 基数、桁精度、接頭辞、接尾辞。すべてデフォルト引数があるがオプショナルに指定できる。 提出に何度も落ちて都度失敗した入力をかわす、という感じで継ぎ足した。ひどいコードになった。最初のう…

アナグラム判定(checkio)

最初一行でall(x == y for x, y in zip(*map(...)))という書き方を試みた。zipは短い方の配列の要素が尽きたら処理を切り上げるのでverify_anagram("Hello", "Hell")のような入力で死にます。大人しく書き直したのが以下。 def verify_anagrams(w1, w2): f =…

Cipher map(checkio)

rotateして舐めてく富豪実装。 def recall_password(cipher_grille, ciphered_password): rotate = lambda x: list(zip(*reversed(x))) j = "".join r = "" for _ in range(len(cipher_grille)): for x, y in zip(j(cipher_grille), j(ciphered_password)): …

minとmaxの自前実装(checkio)

サンプルケースにはないけどgeneratorがテストケースに入ってる。 それまでは要素からもいっちょ先頭取り出す(args = args[0])という感じだったのでnot subscriptable errorで怒られた。 まぁそうだよねと思いながらiterとnextに変えた。あんまり面白くは…

整数をローマ数字に変換

冗長なのでもっと短くできる。 また別の書き方もあるんだろう。 でも自分にはこれくらいベタな書き方がわかりやすいかな…(あとあと見るぶんにも) ローマ数字は1から3999までしかないので拡張性は気にしなくていいのです。 def int2roman(n) s = [] singles…

Pythonの簡易な壊し方

r/pythonでバズったスレを垂れ流す作業。 MIT License Copyright © 2017 Adhityaa Chandrasekar adtac/destruction: Break Python programs with a simple import. builtinsの名前がPython 2か3かにより違うので、ここでは3系前提で話す。 Pythonの組み込み…

Pythonでbash風のパイプやリダイレクトが使えるライブラリ(syntax_sugar)

パイプ、リダイレクト、中置関数、関数合成演算子、俺が好きな構文糖衣をPythonで書けるようにしてくぜ!という姿勢が素敵。 GitHub - czheo/syntax_sugar_python: A library adding some anti-pythonic syntatic sugar to Python いやREADMEにはmatzのstree…

Flask 入門日誌 - ブログ構築(flaskr)編

Flask 入門日誌目次 - にっき Quickstartは、すでに他のWAF経験がある人向けの文書で、Flask特有のやりかたが書かれているという印象。まったくの初心者は読んでいってもピンと来ない部分が多いので、チュートリアルを読み進める。Flaskのチュートリアルは、…

Flask 入門日誌 ハロワ編

Flask 入門日誌目次 - にっき FlaskはPythonのWeb開発するためのマイクロフレームワークです。Pythonの極小WAFでは一番有名な子のはずなので、この子はとってもいい子だよ!的な紹介はいらんでしょう。本シリーズではチュートリアルを読んで考えたこと、つま…

Flask 入門日誌目次

Hello, World. チュートリアルでブログ作り(flaskr)

Pythonとタートルグラフィックスによる(再帰)プログラミング教育処方案

この記事のウリ Python+turtleで再帰を用い、フラクタル的なお絵描きの作例をそこそこ用意しました。 前半は初心者向けの簡単な図形から始めているので、フラクタルを見たい人は記事後半まで頑張ってスクロールしてください。もちろん調べればLOGOによるこの…

2017はありきたりな素数ではない(pythonによるたしかめ算)

ごあいさつ 今年は2017年で6年ぶりの素数年です。素数年には素数うんちくおじさんという生き物が現れて、みんなにうんちくを披露する習性があります。僕はそういう素数うんちくおじさんを観察するのを趣味としています。僕自身はおじさんを観察するだけで特…

Python 3.6の新機能f-strings(フォーマット文字列リテラル)について

今までのPythonには文字列をフォーマットする方法が標準機能で3種類あった(%, str.format(), string.Template)。pythonはたったひとつの冴えたやり方を求める言語じゃないんですか?*1などと皮肉るのは簡単だが、実際に便利だし、主観的な評価としてはこの…

anacondaでpython3.6をインストール(Windows)

追記:2016/02/02 anacondaにバンドルされているPythonインタプリタが3.6にアプデされました(01/31)。この記事は無用の長物です(元から存在価値は(ry。 2016/12/23にPython 3.6が正式にリリースされたので、インストールします。 要約 これだけ conda cr…