タグ

programmingに関するbonlifeのブックマーク (213)

  • Contents -- Eloquent JavaScript

    This file is part of the first edition of Eloquent JavaScript. Consider reading the third edition instead.

  • inforno :: Python標準モジュールでRakeもどき

    誰もが一度使うと便利さと気軽さに感動するRubyが誇るライブラリ、 Rake 。 プログラムのビルドもそうなんですが、雑多なタスクを簡単に書けて、整理できるのがなんといっても魅力的。RailsなんかではDBの作成から何から、ばんばんRakeタスクにされていますよね。 さて、俺はPythonistasなので、PythonでRakeみたいなのがほしいわけです。ビルドに限っていえばPythonは Scons という素晴らしいツールがあります。C言語はおろか、JAVAPDF、PostScriptなどなど、さらにはSubversionもサポートしていますし、並列コンパイルもでき、実績も多数で申し分ありません。 でも俺がしたいのは、雑多なタスクを放り込む、コレ。そういうのを簡単にやるライブラリってPythonではないんでしょうか。RubyではRakeが標準添付されるというのに。いえ、あります。前から

  • Pythonの技法:ジェネレータを用いた遅延リストの構築 - builder by ZDNet Japan

    プログラムがやる気を出しすぎて、必要のない処理やあなたが実行して欲しくないと思っている処理まで行ってしまうのはよくあることである。プログラムにはもっと怠け者であって欲しいのだ。そこで、ジェネレータの出番である。Pythonのジェネレータを用いると、いつどれだけ処理を行って欲しいかを正確に指定することが可能となる。 既にリストの内包表記というものを紹介した。リストの内包表記を用いれば、リストの内容をより自然な方法で表現することが可能なのであった。稿では、そのリストの内包表記と「いとこ」の関係にあるもの「ジェネレータ」を紹介しよう。ジェネレータを利用すると、シーケンスの各要素を一つずつ構築することが可能となるため、あなたが必要とするだけの処理が行われるようになるのである。 これは遅延評価と呼ばれ、プログラムが値を実際に必要とするまで、特定の値の計算を遅らせるしくみである。遅延評価を利用すれば

    Pythonの技法:ジェネレータを用いた遅延リストの構築 - builder by ZDNet Japan
  • Bookmarklet - ブックマークレットを作成する際のポイント

    Updated: 2003-09-28 05:44:07+0900 [Home] 値を返してはいけない 値を返す式を使うとページを移動してしまいます。 javascript:contents='aaa' これならOK javascript:void(contents='aaa') 変数はページ内でグローバルになってしまう varをつけても、ブックマークレットで使用した変数は、ページ内でグローバルになってしまいます。表示中のページの動作や、他のブックマークレットの動作を変えてしまう可能性があります。 javascript:var contents='abc' javascript:var contents='123' 上のリンクをクリックしたあと、以下をクリックするとcontentsの中身が変わっているのが見えます。 javascript:alert(contents) これはページに書かれ

  • python-twitterでフレンドタイムラインを取得する2 - kuma8の雑記帳

    doctest勉強用に書き直し。 テスト関連はまとめていきたい。 5.2.6.1 オプションフラグとディレクティブ http://www.python.jp/doc/2.4/lib/doctest-options.html 家ドキュメントより抜粋) ELLIPSIS このフラグを指定すると、予想出力中の省略記号マーカ (...) を実際の出力中の任意の部分文字列に一致させられます。部分文字列は 行境界にわたるものや空文字列を含みます。 doctest内に予測できない値が出力される場合に、使えます。 今回は、twitter.Api objectのアドレスはわからないため、ELLIPSISオプションを指定して、任意の部分文字列で処理できるようにしています。 """ >>> u = 'tarou' >>> p = 'yamada' >>> api = login(u, p) >>> api #

    python-twitterでフレンドタイムラインを取得する2 - kuma8の雑記帳
    bonlife
    bonlife 2008/01/15
    ELLIPSIS(...)の使用例
  • 2008-01-12 - Future Insight

    実際に取得した画像がどんなことになっているか把握したかったので、画像2100枚をHTMLで出力してみました。75x75の画像を読み込んでおり、画像をクリックするとlightboxして元のサイズの画像にアクセスします。下のtitleをクリックするとFlickrのページに飛びます。軽くなるように気をつけましたが、それでも結構CPUパワーを使うので、遅いPCで開くときは気をつけてください。 http://choichoi.sakura.ne.jp/idols/ こうやって眺めてみるとFlickrにあがりやすいアイドルとあがりにくいアイドルというのがいるようです。小倉優子は500枚取得しても、まだまだたくさん画像があるようでした。さすがグラビアを終わらせたアイドルです。この辺りの考察はまた後で行いたいと思います。 [追記]アイドルの名前のスペルミス、画像を取得できないアイドルの整理し、データを取り

    2008-01-12 - Future Insight
    bonlife
    bonlife 2008/01/15
    REP 8的に余分な空白の取り除いてキュッとした方が読みやすそう
  • ニコニコから動画を落とすスクリプト - ひきメモ

    勉強がてら、ニコニコから動画をダウンロードするスクリプトを書いてみました。一応、コメントとヘルプメッセージは英語にしてみましたが、正直、そこが一番自信がないです。というかプログラムそのものよりも、どういうメッセージを表示するかの方が悩みました。日語としても英語としてもたいした文じゃありませんが。 使い方 python nico-download.py -m メールアドレス -p パスワード -c Cookieを保存するファイル - d ファイルを保存するディレクトリ http://www.nicovideo.jp/watch/{video_id}$ python nico-download.py -m xxxxxx -p xxxxxx -c cookie.txt -d "C:\My Documents" http://www.nicovideo.jp/watch/sm1462977 Di

    ニコニコから動画を落とすスクリプト - ひきメモ
    bonlife
    bonlife 2008/01/10
    http://d.hatena.ne.jp/odz/20070804/1186239981 と比べる / login() がある / LWPCookieJar を使っている / ファイル名の処理は微妙 / ProgressBar使っても良いのでは / ベタ書きすぐる (関数バチバチ定義してmain()で処理の方が好み)
  • Pythonコーディング規約

    bonlife
    bonlife 2008/01/09
    ちゃんと読んでみる
  • Python のエンコーディング - odz buffer

    % cat /usr/lib/python2.5/site-packages/sitecustomize.py import sys sys.setdefaultencoding('UTF-8') % cat enc.py import sys print >>sys.stderr, 'sys.stdout.encoding: %s' % sys.stdout.encoding print >>sys.stderr, 'sys.getdefaultencoding(): %s' % sys.getdefaultencoding() print unichr(0x3042) % python enc.py sys.stdout.encoding: UTF-8 sys.getdefaultencoding(): UTF-8 あ % python enc.py | cat sys.stdout.

    Python のエンコーディング - odz buffer
  • IPMSGのメッセージ送信 - mitszoの日記

    処理時間のながーーいバッチ処理のテストをすることが多い今日この頃。昨夜、「バッチおわったよ!」の通知を IP Messenger 使ってやれないかなぁと思ってソース見てみたら、プロトコルの説明書きが付いてて分かりやすかった。 #!/usr/bin/env python # -*- coding: utf-8 -*- import socket import random IPMSG_VERSION = 0x0001 IPMSG_SENDMSG = 0x00000020 LOCAL_USER = 'mitszo' LOCAL_HOST = 'pyhost' def makemsg(message): return "1:%d:%s:%s:%d:%s" % ( random.randint(1, 1000), LOCAL_USER, LOCAL_HOST, IPMSG_SENDMSG, mes

  • Python の unicodedata モジュール - bkブログ

    Python の unicodedata モジュール Unicode のちょっとしたテキスト処理をしようと思い、 Python の unicodedata モジュールを使ってみました。これは非常に便利です。 unicodedata は Python に標準で付属するため、別途のインストールは不要です。次のようなことができます。 文字の名前を取得する 文字の名前を取得することができます。Unicode の文字にはすべて一意の名前がつけられています。ソースコード内で Unicode のコードポイントを使うときは U+20AC (EURO SIGN) などとコメントをつけておくと便利でしょう。 >>> unicodedata.name(u'A') 'LATIN CAPITAL LETTER A' >>> unicodedata.name(u'あ') 'HIRAGANA LETTER A' 文字の

  • コードを書く全ての人に - builder by ZDNet Japan

    PHP技術者認定機構、ウェブセキュリティ試験を導入--サイバー攻撃の激化を受け ウェブサイトを狙うサイバー攻撃の脅威が高まっていることから、PHP技術者認定機構は開発者やユーサーを対象にウェブセキュリティ試験を導入する。 2018-12-12 11:25:00 「etcd」がCloud Native Computing FoundationのインキュベーティングプロジェクトKubernetesクラスタの情報を保持する分散KVSプロジェクトetcdが、Cloud Native Coputing Foundation(CNCF)にインキュベーティングプロジェクトとして加わった。 2018-12-12 11:07:00

    bonlife
    bonlife 2007/12/13
    とりあえず
  • Microsoft - Official Home Page

    すべての Microsoft 製品 Global Microsoft 365 Teams Copilot Windows Surface Xbox セール 法人向け サポート ソフトウェア Windows アプリ AI OneDrive Outlook Skype OneNote Microsoft Teams PC とデバイス Xbox を購入する アクセサリ VR & 複合現実 エンタメ Xbox Game Pass Ultimate Xbox Live Gold Xbox とゲーム PC ゲーム Windows ゲーム 映画テレビ番組 法人向け Microsoft Cloud Microsoft Security Azure Dynamics 365 一般法人向け Microsoft 365 Microsoft Industry Microsoft Power Platform W

  • InfoQ: JavaScriptへのマルチスレッド・プログラミングの導入

    function backgroundLoad ( ids ) { for ( var i=0; i < ids.length; i++ ) { var a = getArticleWithCache(ids[i]); backgroundLoad(a.children); } } このbackgroundLoadはIDの配列を引数に取り、その各IDに対して上で定義したgetArticleWithCacheを呼び出します。これでIDに対応する記事のデータがキャッシュされます。そして読み込んだ記事の子記事のIDに対してbackgroundLoadを再帰的に呼び出すことで、ツリー全体をキャッシュすることができます。 ここまですべてうまくいっているように見えます。しかし、一度でもAjax開発を経験したことのある方ならば、これではうまくいかないということはすでにおわかりだと思います。これまでの例で

    InfoQ: JavaScriptへのマルチスレッド・プログラミングの導入
  • Geekなぺーじ : Rubyネットワークプログラミング

    ここでは、Rubyによるネットワークプログラミングの説明を行いたいと思います。 ここで対象としている読者は、ネットワークプログラミング初心者(もしくは入門者)です。 TCP 簡単なTCPサーバとクライアント TCPクライアント(エラー処理付き) 何度も受信できるTCPサーバ TCPサーバ(acceptした相手の確認) UDP UDPを使う UDPでブロードキャストを使う UDPでマルチキャストを使う(マルチキャストを送信する) UDPでマルチキャストを使う(マルチキャストを受信する) UDPでマルチキャストを使う(TTLを設定する) Web 簡単なHTTP GET(Net::HTTP) HTTP HEADと全てのHTTPヘッダの表示(Net::HTTP) HTTP POST(Net::HTTP) 簡単なRSSクライアント その他 IO::selectを使う IPアドレスからホスト名への変換

  • inforno :: Python:お手軽にPluggableにする

    Pythonで自分用の小物アプリを結構書き溜めてるんですけど、実はそのほとんどにプラグインシステムみたいなのをつくってたりします。 たとえばファイルの整理自動化みたいなの。ファイルの移動前に処理を追加する、てな部分をプラグインにしてあるわけです。 まぁ機能的にはCPANのClass::Componentっぽいもんですね。ですがそこまで高機能なのはいらないので、シンプルに自分が必要な部分だけまとめてみました。 1from inspect import getmembers, ismethod 2import types 3 4class Pluggable(object): 5 def __init__(self): 6 self.hooks = {} 7 8 def load(self, *config): 9 self.load_config(*config) 10 self.load_

  • DEVShed

    DEVShed is the perfect place for developers seeking to learn more about web development, or those who want to share their own knowledge with others in the community. Our goal is simple: to provide a space where all developers can come together and collaborate.

    DEVShed
  • 指定した株銘柄と似た値動きをするものを探すpythonスクリプト - Λάδι Βιώσας

    昨日のエントリーで勢いで書いたスクリプトは、いまいち使えない&汚いので改良してみました。改良したスクリプトはココに置いてあります。直近の25日間で、指定した株の銘柄と似たような値動きをしている他の銘柄を検索することができます。株価のデータは、無尽蔵というサイトのものを使わせて頂きました。ありがとうございます。 使い方 まず株価データを取ってくる為に、 find_similar_stock.py -dとして起動します。直近の25日分の株価データをダウンロードします。その後、 find_similar_stock.py 銘柄コードとする事で、指定した銘柄と似たものを検索してくれます。 あ、言い忘れました。昨日と同じくmacbookで動作検証を行っており、スクリプト内部で、lhaコマンドを使っているので、入れてない方は、sudo port install lha してください。ちなみに、スクリプ

    指定した株銘柄と似た値動きをするものを探すpythonスクリプト - Λάδι Βιώσας
  • Pythonを始めよう:CodeZine

    はじめに こんにちわ、hirataraです。 稿では、オブジェクト指向のスクリプト言語であるPythonの紹介をしたいと思います。と言っても、実は私がPythonを勉強し始めたのは数ヶ月前のことで、まだPythonに関してさほど詳しいとは言えません。それでもこの記事を書こうと思い立ったのは、ある言語が他の言語に比べて面白い部分と言うのは、その言語にどっぷり漬かってその言語を使うことが当たり前になっている人間よりも、その言語を好きになり始めたくらいの人間の方が見つけやすいのではないかという思いからです。 そのような事情で、もしかすると当のPythonistaからお叱りを受けるような内容も含まれるかもしれませんが、その点はTBやコメントでご教授頂けると幸いです。この記事で、少しでもPythonに興味を持ってくれる方が増えることを願っています。対象読者他言語でのプログラミング経験者Pytho

    bonlife
    bonlife 2007/09/13
    ほどよい難易度、ボリュームの記事
  • ニコニコ動画ダウンローダ - odz buffer

    ref:404 Blog Not Found:perl - 勝手に添削 - ニコニコ動画ダウンローダー 以前、Irvine(via OLE) でダウンロードする Perl スクリプトを書いたけど、なんか FLV のダウンロードにも Cookie が必要になっているっぽいので、Firefox の Cookie を使ったり、ファイル名をタイトルから取得したり Progress Bar を出したりとかするのをこの間 Python でリライトした。progressbar.py は http://cheeseshop.python.org/pypi/progressbar から。 一応、ファイル名はタイトルから取得するけど、「/」が含まれていていたり、CP932 に含まれない文字を使っていたりすると失敗する*1。 で、Cookie は -c オプションで Firefox のプロファイルディレクトリ以

    ニコニコ動画ダウンローダ - odz buffer
    bonlife
    bonlife 2007/09/13
    progressbarが勉強になる