2012-01-01から1ヶ月間の記事一覧
先日のエントリで書いていたcsvをjsonに変換するプログラムでもよく理解しないまま使っていたのですがPythonの関数にはキーワード引数というのがあり、とても便利です。 キーワード引数は呼び出し時に使うもので定義は普通に行います。 def test(x = 2, y = …
先日書いていたCSVをJSONに変換するプログラムでfor文を使う際に for i in range(len(LIST)) という書き方を多用していましたが、リストのインデックスを使って処理をしたい場合enumerate()を使うのがPythonらしい書き方のようです。 a = [0,1,2,3,4] for i,…
昨日のエントリの続きです。リストにおいて外側のインデックスが参照された場合ある値を既定値として返す方法についてです。 Javascriptのように var a = [0,1,2,3,4]; window.alert(a[5] || "out"); // out みたいに書く方法がないかなと考えていたのですが…
先日作成したCSVをJSONに変換するプログラムをもっと実用的にしようと、各行の長さ(要素数)が等しくない場合の扱いを書いていました。改めてJavascriptの配列とPythonのリストは似ているようで違うなぁと感じたので整理を。Pythonのリストで要素数の外側のイ…
これまでPythonのコードはテキストエディタで書いていたのですが入力のアシストと構文チェックは欲しいと思い開発環境を導入することにしました。 Javascriptを書くのにEclipseベースのAptana Studioを使っていたこともありEclipseとPyDevをダウンロードして…
昨日のエントリで辞書のkeyがソートされないようにしたいと書いたのですがOrderedDictという順序付辞書を使うといいようです。 Pythonの辞書をfor in文でループすると処理される順番は処理系まかせなのですが、OrderedDictは作成された順が維持されます。こ…
Pythonについて一通り基本部分は勉強したはずなのでとりあえず何か作ってみようと思いました。私はこれまでJavascriptしか勉強したことがなかったので(はるか昔Cを勉強しましたがすでに忘れてしまいました)、ファイルの入出力を扱ったことがほとんどありませ…
先日のエントリでJavascriptのfor in文について for in文は処理済みのプロパティ名のみを覚えていてプロパティの数はチェックしない。未処理のプロパティが存在するか否かはループ内の処理が終わるたびにその時点でのプロパティと処理済のプロパティを比較し…
Operaの動作について気づいたことがあるのでメモ。JavascriptからDOMに対して一度に複数の処理を行った場合、多くのブラウザでは関数の終わりにまとめてそれらの操作が画面に反映されるのに対してOperaは操作が逐一画面に反映されます。下のコードを実行する…
このエントリは先日のエントリの補足的な内容となります。 先にそちらをお読みいただき、さらにhttp://www.python.jp/Zope/articles/japanese/Python4Japanese-2も確認した上で、それでも文字化けが発生してしまった場合チェックすべき点についての内容とな…
昨日のエントリにてPythonのfor in文について書きましたがJavascriptの場合はどうだったかな、と思って調べてみました。 ループ中にループ内から走査中の配列・連想配列の項目を削除、追加した場合の挙動についてです。 そのような処理を実際に書いたことは…
思い込みによる間違いの可能性があったのでループを抜ける時の判定について追記しました。(1/21)引き続きPythonの勉強をしているのですが、今日Listについて調べているとPython Lists | Python Education | Google Developers内に次のような記述がありました…
昨日のエントリに掲載したhttp://code.google.com/edu/languages/google-python-class/index.htmlですが すでに私が訳した部分も含む全体を日本語に訳されている方がいました。 手習い録: Google's Python Classもっと早く気づいていれば・・・! まぁ英語の…
先日のエントリでPython勉強しますと書いた後、色々教材を探していて見つけたのですが なんとPythonにはGoogle's Python Classというグーグルによる講座があるのです。 ビデオ、テキスト、練習課題と内容もなかなか充実しているのですが残念ながら英語版しか…
地球はグローバルスコープという意味で。以前に自分が書いたコードをメンテナンスしていると結構やってしまっている書き方に次の物があります。 arrayという要素数が100の配列をグローバルに宣言して要素をすべて0に初期化するとします。 var array = new Ar…
Javascriptを勉強しながらwebサイトの運営をしているとどうしてもローカルだけではできないことがやりたくなってきます。 ローカルだけではできない事とはつまり、ある利用者の行動が他の利用者の表示に影響を与えることすべて、ですね。 JavascriptやCSSを…
Javascriptを勉強する上で誰もがつまずくと言われるクロージャですが私も例に漏れず理解できないでいました。 さまざまな解説サイトを読んだりサンプルコードを書き換えてみたりして 静的なスコープの言語で利用できる。 関数が終了したあともそのローカル変…
私はこれまでコードを書く際インデントはTabを使っていたんですが世間的にはスペースの方が好まれるみたいですね。 理由はタブ幅はエディタによって異なるからだとか。 なので私も今後はインデントはスペースを使おう!と思っていたのですがよく考えると 一…
Javascriptを勉強しはじめてからDan Kogaiさんのブログ404 Blog Not Foundを読んでいるのですが関数(コンストラクタ)定義について謎に思っていることがありまして。例えばこの記事404 Blog Not Found:javascript - からnewを取り除いてみるですが一番上のサ…
最近プログラムを勉強している素人です!プログラムは大学でCをちょこっと勉強した程度だったのですがウェブの管理をきっかけにJavascriptの勉強を始めました。 そこからプログラムが面白くなっていろいろ勉強しています。自身の考えの整理や覚書としての利…