タグ

ブックマーク / iogi.hatenablog.com (10)

  • Pythonで整数であることをチェックする - おぎろぐはてブロ

    引数が整数であることを確認するのに、こんなコードをよく書いてるんだけど if type(arg) not in (int, long): raise InvalidArgumentError ちょっと冗長じゃないかな。先日は (int, tuple) とか書いてて危ない思いをしたりも。。 どうにかならんものかとつぶやくと、 if not isinstance(arg, (int, long)): って教えてもらった。isinstanceでタプル渡せるの知らなかった。(2.2 or later) なんだが、単語数は減ったけど文字数が減ってない。 あと、bookはintのサブクラスなため、isinstance([bool instance], int) は True となるけど、素直に文字列変換すると (True|False) の文字列になる点が要注意。 >>> arg = True >>>

    Pythonで整数であることをチェックする - おぎろぐはてブロ
  • リストをn個ずつのサブリストに分割 (Python) - おぎろぐはてブロ

    愚直にやればもちろんできるんだけど、パフォーマンスが気になったり、かっこよく書きたいとか思うわけです。 >>> a = range(15) >>> a [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14] >>> [a[i:i+3] for i in range(0,15,3)] [[0, 1, 2], [3, 4, 5], [6, 7, 8], [9, 10, 11], [12, 13, 14]] range(0, 15, 3) が [0, 3, 6, 9, 12] に展開されて、スライスしていく感じ。 zip(*[iter(s)]*n) で n 個ずつ分割 探しているとこんなのがでてくる。 2. 組み込み関数 — Python 2.7ja1 documentation iterable の、左から右への評価順序が保証されます。そのため z

    リストをn個ずつのサブリストに分割 (Python) - おぎろぐはてブロ
  • 軍艦島 - おぎろぐはてブロ

    6月28日は軍艦島のよい記事がタイミングを合わせたのか2つ上がっていた。 Google Japan Blog: "軍艦島”をストリートビューで歩いてみよう @niftyデイリーポータルZ:軍艦島はオーシャンビューな廃墟だった ストリートビューで公開したよというのと、デイリーポータルでの取材。 どちらも普通、一般見学では入れない部分が観られる。 ストリートビューよりもメイキングのムービーのがリアルでよかった。 軍艦島をストリートビュー / Google Maps Street View of Battleship Island ... 最近だと、ソニーのアクションカムで撮影した風景もあった。 Sony's Action Cam on RC Helicopter filming 軍艦島 ... 軍艦島の見学コースはごく一部 一般の見学ができるようになって話題となった軍艦島。なんだけど、デイリ

    軍艦島 - おぎろぐはてブロ
  • PHPでWSSE認証のメモ - おぎろぐはてブロ

    はてなダイアリーAtomPubにリクエストを投げるためには、WSSE認証が必要ですが、その認証をPHPのみでやるときのメモ。 sha1()で第2引数を true にするのを忘れてはまった。

    PHPでWSSE認証のメモ - おぎろぐはてブロ
  • PHPのstream wrapperをさわってみた - おぎろぐはてブロ

    PHPには、ストリームラッパーというファイルなどへのアクセスを抽象化するしくみがあります。普段よく使う http:// とかがそうです。 組み込みで提供されるストリームラッパーは以下です。 ファイルシステム HTTP と HTTPS FTP と FTPS PHP 入出力ストリーム 圧縮ストリーム データ (RFC 2397) Glob Phar PHP: Supported Protocols and Wrappers - Manual それぞれどういうふうに使うものなのか試してみました。 ファイルシステム /path/to/file.ext relative/path/to/file.ext fileInCwd.ext C:/path/to/winfile.ext C:\path\to\winfile.ext \\smbserver\share\path\to\winfile.ext f

    PHPのstream wrapperをさわってみた - おぎろぐはてブロ
  • 現在trunkにあるTokyoCabinetのdbaハンドラをPHP5.3で使ってみる - おぎろぐはてブロ

    dba関数というのを知っていますか?dbm形式のデータベースの抽象化レイヤとなる関数を提供するモジュールで、PHPのソースコードに同梱されています。 PHP: DBA - Manual 例えば、dbm や qdbm といったものを利用できる他、inifile という php.ini 形式のようなファイルをDBMのように読み書きできるハンドラが用意されています。 で、現在、PHPのソースコードのtrunkには、TokyoCabinetのハンドラがコミットされています。 php/php-src/trunk/ext/dba/dba_tcadb.c (実装体) php/php-src/trunk/ext/dba/php_tcadb.h (ヘッダ) php/php-src/trunk/ext/dba/config.m4 いつ、これが提供されるようになるかは不明ですが、現時点でもbackportすれ

    現在trunkにあるTokyoCabinetのdbaハンドラをPHP5.3で使ってみる - おぎろぐはてブロ
  • pharのしくみ - おぎろぐはてブロ

    PHP5から追加された機能として、SimpleXMLとかSPLなど、動作的にユーザレベルでは実現できないおもしろい動きをするものがあります。5.3から標準モジュールとなったpharも同じように結構見えないところでPHP体の動きを変えるような実装をしているので、調べてみました。 以下の部分に大きく分けています。 stream wrapperの定義 zend_compile_fileの差し替え ファイルアクセス系関数の差し替え パス解決の差し替え stream wrapperの定義 pharは、stream wrapperとして動くことで、"phar://path/to/foo.phar/bar.php" といったファイルにアクセスすることができます。 普段よく使う http://〜 、 https://〜 、ftp:// などと同様で、抽象化してアクセスできるようになるしくみです。 定義

    pharのしくみ - おぎろぐはてブロ
  • FacebookのXHPを導入してみた - おぎろぐはてブロ

    XHPとは、 Today, I'd like to take to this opportunity to share with you a project that's quickly becoming a cornerstone of front-end PHP development at Facebook. XHP is a PHP extension which augments the syntax of the language to both make your front-end code easier to understand and help you avoid cross-site scripting attacks. XHP: A New Way to Write PHP | Facebook ということで、フロントエンドのコードを書きやすく理解しやすいものにし

    FacebookのXHPを導入してみた - おぎろぐはてブロ
  • PHPカンファレンス2008での動画配信について - おぎろぐはてブロ

    PHPカンファレンス2008が無事に終了いたしました。ご出席頂いたみなさま、講演者のみなさま、協賛スポンサー各社さま、ありがとうございました。そしてスタッフの皆様おつかれさまでした! 今回のPHPカンファレンスでは、みんなやってるしということで、Ustream.tvによる配信を実施しました。大きな配信障害もなく、最も同時閲覧者数が多かったとき(パネルディスカッション)で200強と、多くの方に見て頂くことができました。 当日の模様は、techtalk.jpの方でアーカイブを参照頂けます。(サブ会場のセッションも公開準備中です) PHPカンファレンス2008 小会場(サブセッション)の動画 - techtalk.jp cojiさんありがとうございます! ということで、動画配信関連についてまとめておきます。 配信機材図 次回に参考にできるよう、当日に実際に使った状態に資料をアップデートしています

    PHPカンファレンス2008での動画配信について - おぎろぐはてブロ
  • (PHP)プログラマのためのVIM (11) - PHP向けカスタマイズ(3) Andreiがつかってるプラグイン - おぎろぐはてブロ

    Yahoo!のAndreiさんのプレゼンのPDFを勉強がてら訳していってます。訳は微妙です。 元記事: Andrei Zmievski: "VIM for (PHP) Programmers" slides and resources この記事シリーズまとめはこちら: (PHP)プログラマのためのVIM (まとめ) - おぎろぐはてな カーソル位置・カーソル移動・マーク・挿入 削除・検索 置換・テキストオブジェクト コピー/削除/貼り付け、レジスタ undo ビジュアルモード、ウィンドウ、タブ 補完・マップ・オプション セッション、misc、ヘルプ PHP向けカスタマイズ PHP向けカスタマイズ(2) タグ・補完・netrw そのまえに Andreiの実際使っているvimの設定についての説明が含まれます。ファイルは元記事からダウンロードすることができます。 PHPと付いてはいますが、ほとん

    (PHP)プログラマのためのVIM (11) - PHP向けカスタマイズ(3) Andreiがつかってるプラグイン - おぎろぐはてブロ
    heavenshell
    heavenshell 2007/04/30
    php 用カスタマイズ
  • 1