タグ

2012年2月23日のブックマーク (7件)

  • シェルスクリプトを書く際に気を付けていること8箇条 - カイワレの大冒険 Third

    エンジニアという職業柄かシェルスクリプトを書くことはちょくちょくあるのですが、自分なりに気を付けていることを備忘録&自分への戒めも含めて、簡単に書いてみたいと思います。 変数は大文字 シェルスクリプト書いていれば変数の出番は至るところであるでしょう。その際、可読性を増すように、変数は大文字を使っています。 RET=`cmd1`みたいに。好みの問題もあるでしょうが、分かりやすいので。 クオテーションは選ぶ クオテーションにはシングルだったり、ダブルだったり色々ありますが、使い分けておいたほうがよいでしょう。 変数の展開がないようであれば、シングルクオーテーションのほうがスマートでしょうし、展開があるのならダブルクオーテーションを使えばと。 ダブルクオーテーションを使うのにも意味があって、変数は「$RET」のようにクオテーションで囲まなくても動作はたいていするのですが、 echo "${RET

    シェルスクリプトを書く際に気を付けていること8箇条 - カイワレの大冒険 Third
    masudaK
    masudaK 2012/02/23
    こう書いてみると、まだまだ知らないこと多そうだなぁ…
  • 西尾泰和のブログ: Pythonでワンライナーを作成する際のノウハウ集

    これはLL Ringというイベントの「じゃんけん2.0」に出場する際に「多くの構文に改行が必須であるPythonで書かれたじゃんけんエージェントをワンライナーにしていたらウケるかな」と思ってワンライナー化しているときに書いたメモです。自分用のメモのつもりだったので書き殴ってありますが、意外と人気のようなので近いうちに加筆します。 実は後から書いた英語版(How to make oneliner in Python?)の方が整理されているのかも。 完成したワンライナー def文を式にする defは改行を要求するのでlambdaに置き換える必要がある。 def foo(x): return x + 1(ここに改行) foo = lambda x: x + 1 globals().__setitem__("foo", lambda x: x + 1) lambdaは式しか含むことが出来ないので、

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • pysetup3のご紹介 - そこはかとなく書くよ。

    python2ではsetuptoolsやdistutilsがありますが、python3では "packaging"という新しいパッケージ用ライブラリが搭載されます。 pysetup3はこのpackagingを使うためのコマンドです。これは、setuptoolsやdistutilsを使うためのコマンドがpipやeasy_installである、という関係と同じです。 まとめるとこういう関係になります。(正確にはちょっとずれていますがまあこんなものかと) ライブラリ ツール python3.2まで distutils/setuptools/distribute easy_install/pip/buildout python3.3〜 packaging pysetup3 なお、packagingはpython2.4〜3.2ではdistutils2という名前でバックポートされ、サードパーティパッケ

    pysetup3のご紹介 - そこはかとなく書くよ。
  • Python3 Advent Calendar 一日目 - Python とジェネレータ関数 - プログラマのネタ帳

    みなさんジェネレータ関数使ってますか? ジェネレータ関数便利ですよね! 無いと死んじゃいますよね! というわけで Python3 Advent Calendar 一日目を担当する [twitter:@shomah4a] です。 ジェネレータ関数って? とりあえずジェネレータ関数です。 めんどくさいのでソース def calc_fibonacci(): ''' フィボナッチ数を生成し続けるジェネレータ関数だよ! ''' yield 1 yield 1 n = 1 m = 1 while True: yield n + m o = n + m n = m m = o こんな感じで関数の途中で yield を使って値を返す関数をジェネレータ関数と呼びます。 >>> calc_fibonacci <function calc_fibonacci at 0x1ceb958> >>> a = calc

    Python3 Advent Calendar 一日目 - Python とジェネレータ関数 - プログラマのネタ帳
  • 初めてのPython(4) 関数でさえオブジェクトであるPython

    やっと、”初めてのPython“のIV部を読み終わりました。 “初めてのPython“の読書はすごく順調に進んでいます。 そう、すごく順調に…。 そこには触れないようにして、今日のPythonのまとめに行きましょう。 初めてのPython IV部 “初めてのPython“のIV部は、”関数“についてまとめてあります。 “え、関数なんて余裕だよ。“という人も、読み飛ばさずに読んでください。 Pythonにおける関数も他の言語とちょっと変わっています。 PHPの関数宣言functionにあたる宣言がPythonではdefです。 この宣言を使って、Pythonではこんなことが出来ちゃいます。 def create_memory(x, y): def memory(): return x, y return memory mem = create_memory(2, 3) print me