タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

Pythonとoyakataに関するAltNightのブックマーク (3)

  • fabricとbuildoutで環境構築 第1章 fabricで再利用可能なレシピを書こう - 今川館

    Python, fabric, buildout | 10:03わたしはインフラとかOSのインストールがとても苦手で、仕事で新しい案件にアサインされる度に仮想環境を作って諸々インストールするのが面倒で嫌いです。例えばnginxのインストール・セットアップをしようと思ったとき、やり方をぐぐって手順書としてメモします。しかし、手順書を見ながらコマンドをコピペすること自体やめてしまいたいと思う事が多いです。環境構築手順をレシピとして作っておくnginxのインストールならば nginx_install.sh 、セットアップは nginx_setup.sh みたいに、環境構築手順をシェルに書いておいて使い回し可能にできたら楽なんじゃないかと思います。こういうものをレシピを呼ぶらしいです。Pythonで開発するのだから、レシピPythonで書ければ楽でしょう。具体的なイメージとしては、レシピを書いた

    AltNight
    AltNight 2012/09/01
    buildoutつかうのかー
  • fabricとbuildoutで環境構築 第2章 fabricタスクとして任意のPythonの関数を実行する方法 - 今川館

    Python, fabric, buildout | 10:46fabfileから解放されたいfabricのfabというコマンドはカレントディレクトリにあるfabfile.pyを見つけてその中に定義されている関数を実行します。一応、 -f というオプションで対象のファイルを指定することも可能です(以下例)。 $ fab -f /home/oyakata/maro.py useradd:name=tiger,password=scott しかし、ファイルを指定して実行する点は変わりません。これを、任意のPythonの関数を実行するよう変えることがこの記事の話の目的です。fabricにちゃんと仕組みが用意されている!fabric.api.executeという関数を使えば任意のPythonの関数をfabricタスクとして実行できます。ドキュメントに書いてあります。Execution model

  • 何段にも深くなるループを絶対に一段で書く方法 - 今川館

    ループの中でループを回す処理は読みにくい 例えば友達が5人いて、サンドイッチが3種類あって、2種類の飲み物を配る処理を作るとします。 こういう場合、for文を何段にもネストするプログラムを書かざるを得ないときがありますよね。 for friend in friends: for sandwich in sandwiches: for drink in drinks: do_something(friend, sandwich, drink) そもそも、こういうプログラムを書く前は、当にそういう処理で正しいのか考えた方がいいですが、とにかくこんなコードは読みにくいです。 ループの中でループを回すプログラムを字下げして書くことが読みにくさに寄与していると思うのですが、pythonだと字下げは必須なので悩ましいものです。 itertools.productを使えば絶対に1段で書ける しかし、こ

    何段にも深くなるループを絶対に一段で書く方法 - 今川館
    AltNight
    AltNight 2012/04/15
    itertoolsすごいな
  • 1