タグ

ブックマーク / cocu.hatenablog.com (2)

  • 闇Pythonista入門(Pythonワンライナーのテクニック集) - cocuh's note

    世界には1行でプログラムを書くワンライナーという技巧的プログラミングの世界があります。 ワンライナーと言われる言語の多くはPerlRubyなのですが、委員長キャラのPythonでもワンライナーができます。 PEP8とZen of Pythonで綺麗になっているPythonicな世界に Pythonでも1行で書いたよ!楽しい!! ✌('ω'✌ )三✌('ω')✌三( ✌'ω')✌ などと技巧プログラミングをする闇Pythonista(私)がテクニックなどもろもろをまとめたものがこの記事になってます。 まだPython力を鍛えている途中のわたしなのでなにか指摘などありましたらコメントをいただければです。 対象読者 Pythonをある程度かける人 Pythonの細かい挙動に興味のある人 白Pythonに飽きてしまった人 テクニック1:代入文を式にする Pythonでの代入は基改行が必要です。

    闇Pythonista入門(Pythonワンライナーのテクニック集) - cocuh's note
  • Python黒魔術でfizzbuzzを書こう - cocuh's note

    なんとなく思い立って、 「今の自分がfizzbuzzをどこまで(技巧的に)かけるか書いてみよう」 のがこれです。 今回の縛りはこちら 無限リスト ↑必然的にジェネレータ(generator) ifはいらない もちろんワンライナーで できたのがこちら gen = ((x%3<1and'fizz'or'')+(x%5<1and'buzz'or'')or str(x)for x in __import__('itertools').count(1)) 動作環境はPython2.7.5です。 詳しい解説 ジェネレータを書こう ジェネレータ式は下のように書けるためそれを使いました。 gen = (x for x in [1,2,3]) gen.next() # => 1 gen.next() # => 2 gen.next() # => 3 gen.next() # => 例外(StopIterat

    Python黒魔術でfizzbuzzを書こう - cocuh's note
  • 1