1

Pythonの対話的環境 IPython (1) notebook が素敵の続き。ipython の現状をつかむためにビデオを見てみる。IPython: Python at your fingertips最初に "The IPython notebook" を見ると、5分半ほどで notebook の基本的な使い方がわかる。これをもう少し説明的に見るなら、"The IPython Notebook for Data Science"単に python を実行するだけでなくて、その名の通り、ちゃんとノートブックになるのだな。例えば、matplotlib - 2D and 3D plotting in Python みたいなページが作れてしまう。メモを残しながら試行錯誤で計算できる環境だから、自分のために使えるし、A gallery of interesting IPython Notebooksのように公開用にも適している。もうちょっと詳しく見るなら IPython: Python at your fingertips。40分弱。
2013.03.03
閲覧総数 486
2

日本の銀行株上がっているのはいいんだけど、これ上げようとしている人がいるのは確かな反面、確かに反落するような動きに見える。どうもゴールドマンサックス様が先物買いを入れまくっているようだ。けど、結構やばい気がする。。。。。どう見ても落ちていく相場に見えてしまう。連続で先物を買い越しているゴールドマン様。本心としては、やっぱり大きく下げることを狙っているんでしょうか。。。。。。というか、1月の底値で大量取得したものを売りさばくのに先物買いで支えてるんでしょか。何にせよ、不気味すぎる動き。さて、今日は急降下爆撃でもするのかねぇ。ちなみに、米国の消費はどうかといえば、トヨタの決算を見れば分かるように、もうすでに下降し始めている(米国が失速しなければとんでもなく良かったろうに残念)。米国民はスーパーチューズデーで盛り上がっちゃってというか、この状況をなんとかしてほしいというのがあるから真剣なんだろう。テレビも予備選挙ばかり。こんなときに株を買う奴はいないでしょうということで、ダウもズリズリ下げ続け。結果がある程度分かってから買い戻しなんだろう。ダウが 200ドルや300ドル下げるより、未来の大統領の方が大切だからね。CNN なんかでもダウ下げてるけど、そんなの関係ねぇモード。下げている原因が明確で、特段ネガティブな意味で下げているからじゃないということなんだろう。でも、まあ、放置モードだとズルズルさげていくっていうのは、まあ、米国の現状をよく表している。となるのが普通は分かるはずなのに、日本株が昨日、一昨日まで強かったのが不思議と言えば不思議なのだが。。。。どうも、また、はめ込んじゃったのぉって感じがしないでもない。証券会社や日経CNBCの皆様方は底堅い感じの発言が多いときって後が怖いのねぇ。まるでどこかの証券会社から嵌め込み料金でももらってやっていると思えるほど、要所要所で嵌め込みやってくれる。今日は下げて始まるのは当然として、大量に買い戻してプラスにしなかったら、またしても証券会社は意図的に今回もはめ込むために報道番組とかでコメントしていた奴らがたくさんいるってことだな。証券会社や投資顧問会社は意図的に欺して儲けるようなやり方いいかがんやめた方がいいと思うんだけどなぁ。UBSとクレディ・スイスの目標株価を引き下げ―シティグループ=市場筋 は、まあ予期したこととして、米ゴールドマン・サックスの投資判断を引き下げ=オッペンハイマー。まあ、今年はさすがにゴールドマンサックス様といえども厳しいだろうな。いくらボラティリティーを利用して稼いでも M&A 等からの利益が減るだろうし、サブプライムローン問題の処理では自分で自分の足食ったところがあるだろうし。昨年みたいな利益はしばらく上げられなくなるだろう。ゴールドマンサックスはそう遠くない未来に大きいマイナスの材料が出る予感。UBS はほぼ確実に悪材料が出る(というか、一部報道されているけど)。クレディースイスも元社員がインサイダー取引で捕まったようだし。ソシエテの買収が決定すれば少しは盛り上がるだろうけど、中長期で見るとアレだな。そういえば、2008/02/05-07:12 貸し渋り鮮明に=企業、個人向け全般で基準引き締め-米FRBの与信調査 ということで、日本がバブル崩壊でたどった道をたどり始めた。問題はどの程度短期で片付けられるか。あまり期待できない。まあ、米国の方が大胆にやるし、日本のように失われた10年とかいうことにはならないだろうけど、現状、かなり金融機関も痛んでいるのは確かだろう。それより 2月の中国の経済指標はかなり悪化してびっくりすることになりそうな気がする。当面、暗いなぁ。「国境の長いトンネルを抜けると雪国であった。夜の底が白くなった。」
2008.02.05
閲覧総数 36
3
![]()
『エイリアス 二重スパイの女』のシリーズはおもしろい。エイリアス 二重スパイの女 は、NHK BS2 でも放映されていたのね。エイリアス 二重スパイの女 2 は12月11日から放映している。けど、自分は以前に DVD で見た。今見ているのは、エイリアス 二重スパイの女 3。これはおもしろいので見始めると止まらない。アメリカ人はこういう娯楽作品作るのうまい。全般的にテレビドラマの質が違う。もっとも、成功したもののみが日本に来るから、どうでもいいやつはあまり来ないという話もあるだろうけど。ドラマ作りに使われている予算も桁違いなんだと思う。世界に市場があるということは、そういうことなんだな。中国やインドなんかは一つの国で膨大な人口を抱えているわけで、所得が向上してくると、さらに予算を使った壮大なものも作られるようになるだろう。そういや、天龍八部とか、射周鳥英雄伝とかもおもしろい。予算の使い方は NHK の大河ドラマとかのクラスなのかな。予算を使えばよいものができるとは言わないが、スケールが大きいものを作ろうとすると、金もかかるだろうしね。金がかからずにもおもしろいものも確かにある。Spin City なんて、超低予算だろうし(除く、タレントの費用)。奥様は魔女 なんかもそうだが。考えてみたら、日本でもおもしろいものはあるか。『ケイゾク』だとか、『TRICK』だとか、楽しめるものもあるか。
2006.12.20
閲覧総数 10
4

また、しつこく pydot を使って遊ぶ。Python から Graphviz を使う( pydot を日本語で出力)(7) からの続き。もうちょっと複雑なものにもチャレンジする。An Introduction to GraphViz にあるような図に挑戦。Listing 1. Dot Source Code for Figure 1 からやってみる。pydot には、こうしたグラフをまとめて書けるようなメソッドはない。なので作ってみる。ベースの考え方としては、graph_from_edges と同じように、エッジを中心にして考えるか( A→B, A→C, B→D, B→E, C→F, C→G...)、明らかな構造を持っていると仮定して、親と子の関係でリストを作るか( [A, [B, C]], [B, [D, E]], [C, [F, G]], ...)。なんとなく、親子の関係でノード中心に作った方がよさそうなので、そうしてみる。ネストしたリストからすべての要素を取り出す次のようにネストしたリストから、要素を取り出す関数を作っておく。なんかもっとスマートに書けそうな気もするが。。。。#-*- coding: utf-8 -*-import setsfrom types import ListTypenode_list = [[u'あ', [u'い', u'う']], [u'い', [u'え', u'お']], [u'う', [u'か', u'き']], ]def extract_nodes(node_list): """ ネストしたリストから すべての要素を取り出す """ nodes = sets.Set() if type(node_list) == ListType: for x in node_list: nodes = nodes.union(extract_nodes(x)) else: nodes.add(node_list) return nodes# すべてのノードを取り出すnodes = extract_nodes(node_list)すべてのノード要素に対して、ラベルを付ける前準備として、グラフを生成して、shape = record のノードを追加しておく。次に、ノードの各要素に対してノードオブジェクトを生成して、それぞれにラベルをつけ、グラフに追加する。from pydot import Dot, Graph, Node, Edgeg = Dot(graph_type='digraph')# node [shape = record] を作って追加n = Node('node')n.set_shape('record')n.set_fontname('arialuni.ttf')n.set_fontsize(9)g.add_node(n)for node in nodes: g_node = Node(node[0]) label = u"<f0> | <f1> %s | <f2> " % node[0] g_node.set_label(label) g.add_node(g_node) print g_node.labelエッジを生成して、ポインタを付ける渡ってくるものが [A, [B, C]] のように [親, [子1, 子2]] というのを前提として、 親:f0→子1:f1、親:f2→子2:f1 の繰り返し処理になればよいと考える(エラー処理はとりあえずなし))。ノード名に f0, f1 ,f2 を適切に繋いだ名前を作ってエッジを作っていく。一応、子供がない場合も考慮しておく。for x in node_list: parent = x[0] print x, parent try: child = x[1][0] edge0 = "%s:f0" % parent edge1 = "%s:f1" % child print edge0, edge1 g.add_edge(Edge(edge0, edge1)) except: pass try: child = x[1][1] edge0 = "%s:f2" % parent edge1 = "%s:f1" % child print edge0, edge1 g.add_edge(Edge(edge0, edge1)) except: passゴミノードを削除して出力するエッジを追加したときに、よけいなノード A:f0 等々が作られてしまうので、出力しないようにする。ちょっと泥臭い。for n in g.get_node_list(): if n.name[-3:-1] == ":f": g.node_list.remove(n)elems = []for elem in g.sorted_graph_elements: if isinstance(elem, Node) and elem.name[-3:-1] == ":f": pass else: elems.append(elem)g.sorted_graph_elements = elems# 出力g.write_png("tree.png")こんな出力結果が得られるこれで、次のように dot ファイルから、画像が作られる。digraph G {node [fontsize=9, fontname="arialuni.ttf", shape=record];"あ" [label="<f0> | <f1> あ | <f2> "];"い" [label="<f0> | <f1> い | <f2> "];"う" [label="<f0> | <f1> う | <f2> "];"え" [label="<f0> | <f1> え | <f2> "];"か" [label="<f0> | <f1> か | <f2> "];"お" [label="<f0> | <f1> お | <f2> "];"き" [label="<f0> | <f1> き | <f2> "];"あ":f0 -> "い":f1;"あ":f2 -> "う":f1;"い":f0 -> "え":f1;"い":f2 -> "お":f1;"う":f0 -> "か":f1;"う":f2 -> "き":f1;}やっぱり pydot はグラフからノードを削除したりとか、グラフの操作に関しては弱いので汚いことをしなければならなくなるけれども、いじくれば、なんとかならないこともない。
2007.11.27
閲覧総数 951
5
![]()
(1) Pasori で NFC カードの ID を読み取って、(2) LED をチカっと光らせて、(3) サーバーに登録情報を取りに行って、(4) その人へのメッセージを音声合成で読み上げつつ、(5) ディスプレイに何か表示するというような端末を作りたいと思って少しずつチャレンジしている今日このごろ。(1)-(5) について、だいたいのところ目処がたったわけだが、(5) について無人で動かしっぱなしにできるように洗練させていきたいところ。ということで、kiosk をキーワードにして調べてみた。ちょこっと Google で検索すると、いろいろ見つかった。画面の印象としては、PiR.tv の画面がシンプルできれいでいいので参考にするかな。node.js で jquery などを使って作られている。この画面にカードを認識したら、ピッとその人向けへの情報が表示されるイメージ。あれこれ見たもの次のサイトを参考にした。Use Your RaspberryPi to Power a Company DashboardUsing a Raspberry Pi Computer to Build Cheap Digital SignageHow To Create Kiosk ModeRunning chromium in kiosk modeRaspberry Pi Kiosk Screen Tutorialraspberry pi kiosk terminal を作るRaspberry Piでkiosk端末Rapberry PIによるデジタルサイネージの構築と研究Chrome を使う 1Chrome をインストールして使う方法をまずは試す。LXDE の autostart で chromium を起動するように設定すると、ログイン後、startx すると chromium が全画面表示で起動される。スクリーンセーバーは起動しないようにしておく。でも、LXDE もいらないんじゃかろうか。ということで 2 へ。Unclutter は、マウスポインターを消してくれる。sudo apt-get update && apt-get upgrade -ysudo apt-get install chromium x11-xserver-utils unclutter/etc/xdg/lxsession/LXDE/autostart を次のようにする。@xset s off@xset -dpms@xset s noblank@chromium --kiosk --incognito http://some.web./etc/lightdm/lightdm.conf に追加する。[SeatDefaults]...xserver-command=X -s 0 -dpmsChrome を使う 2デスクトップはいらないんじゃないのということで、Chromium のみを起動する。.xinitrc を編集する。unclutter -idle 15 -root &xset -dpms &xset s off &exec chromium --kiosk --incognito http://some.web.と設定しておいて、su – myuser -c “startx” &exit 0Midori を使うMidori をブラウザとして使うと単体で起動したときに完全な全画面表示ができないので、MobilityLab/TransitScreenのように、matchbox-window-manager を使うというのがよいのかな。単体で全画面表示にしてみる。xinit /usr/bin/midori -e Fullscreen -a http://dev.mobilitylab.org/TransitScreen/screen/index/11matchbox-window-manager を使ってみる。xset -dpmsxset s offunclutter &matchbox-window-manager &midori -e Fullscreen -a http://some.web.そうするとちゃんと全画面表示できた。ちなみに、TransitScreen は、Open Transit Data and APIsを使って、リアルタイム(実際には20秒ごと) に交通機関の乗換の情報を表示するようなもの。Experimental real-time transit screens come to Arlington and DC を参照。ちなみに、電源を入れたら自動的にログインしてキオスク端末化するには、RPi Debian Auto Login のようにした。/etc/initab を編集して、#1:2345:respawn:/sbin/getty 115200 tty11:2345:respawn:/bin/login -f pi tty1 >/dev/tty1 </dev/tty1 2>&1/etc/rc.local の exit 0 の前に次の行を追加。su -l pi -c startxとりあえず、Rasperry Pi を起動するとブラウザが全画面で開くようになった。
2014.04.20
閲覧総数 21110
6
![]()
いちご抹茶大福が届いたので早速食べる。んー、おもしろい味ではあるものの、これは微妙かもしれない。いちごはみずみずしくて、おいしいとは思うけれど、水分が多くなった結果として、餡の甘さが薄まってしまう。ここは餡がうまいんだから、そのよさを苺の水分が多すぎて、ちょっと薄めてしまう結果になっているかもしれない。やっぱり微妙なところかなぁ。ま、ある意味キワモノだからな。栗抹茶だいふくの方が純粋にうまいといえる。けど、栗抹茶だいふくはいまやってにゃい。いちご抹茶栗抹茶抹茶くず便り無上
2006.12.05
閲覧総数 19
7

グラフ図を書きたくなったので、pydot がどの程度使えるか調べてみる。こんな図とか、こんな図とか Python のプログラムから描けたらいいなと。この図は Graphviz - Graph Visualization Software で描かれたもので、この Python のラッパーとなるのが pydot。pydot のオリジナルの作者のサイト を見ると pydot - Python interface to Graphviz's Dot language(Google code) をメインにするよということなので、そちらを中心に見る。でもドキュメントは pydot (version 0.9.10): Graphviz's dot language Python interface でオリジナルサイトにあったりする。現状、まだ、オリジナルサイトの方が情報が多い。必要なものGraphviz - Graph Visualization Softwarepyparsing(dotファイルのロードに使う)pydot - Python interface to Graphviz's Dot language(Google code)Windows の場合、標準の Python ではなく、Python Enthought Edition とかインストールしておくと、Graphviz や pyparsing、pydot が最初からインストールされているので楽だったりする。インストールされていない環境の場合は個別にインストールする。残念ながら pydot は easy_install に対応していない。ん、pypi も pydot の URL がまだ dkbza.org(オリジナルのサイト) で Google Code に移行していない。pydot のダウンロードはここから。# easy_install pydotSearching for pydotReading http://cheeseshop.python.org/pypi/pydot/Reading http://dkbza.org/pydot.htmlReading http://cheeseshop.python.org/pypi/pydot/0.9.10No local packages or download links found for pydoterror: Could not find suitable distribution for Requirement.parse('pydot')なお、注意点としては、Graphviz のバイナリ (fdp, twopi, neato, dot, circo) があるディレクトリをパスに追加しておくこと。そうしないと使えない。Enthought の場合は、\Python24\Enthought\Graphviz\bin が PATH に追加されているはずなので特に問題なし。もし、使えない場合は PATH をチェック。実際に使ってみる。とりあえず、まずは動くかどうかを http://dkbza.org/pydot.htmlと同じようにしてテスト。import pydotedges=[(1,2), (1,3), (1,4), (3,4)]g=pydot.graph_from_edges(edges)g.write_jpeg('graph_from_edges_dot.jpg', prog='dot') 無事に表示される。では日本語を入れるとどうなるだろうかとやってみる。数字ではなく、文字列を入れるとアルファベットは表示されるが、日本語は文字化けしてしまう。#!/usr/bin/env python#-*- coding: utf-8 -*-import pydotedges=[('root', u'日本語'), ('root', 'Latin'), ('root' , 'English'), ('Latin', 'English')]g=pydot.graph_from_edges(edges)g.write_jpeg('graph_from_edges_dot.jpg', prog='dot') さて、文字化けする原因はどこにあるか。とりあえず Graphviz が日本語が通るか見てみる。Graphviz 簡単な使い方 を見ると、Windows版のdottyで日本語を表示することはできない(ようだ)が、dotから出力する画像ファイルで日本語を出力することは可能。バージョンはGraphviz2.6。以下そのやりかた。が書かれていた。一つはdotファイルをUTF-8で書いて、フォントの指定をすること。もう一つは、lefty を改造して Shift_JIS に対応したパッチを当てたものを使う方法が書かれている。UTF-8 でいいので、前者を試すことにする。pydot.py の末尾 class Dot の def create を見てみると、self.write(tmp_name)stdin, stdout, stderr = os.popen3(self.progs[prog]+' \ -T'+format+' '+tmp_name, 'b')と、テンポラリファイルに dot ファイルを書き出しておいて、popen3 で Graphviz のプログラムを呼び出してそのファイルを処理させているようなので、書き出すところでフォントの指定を入れてやればよいかな、と思ったら、各クラスをよく見たら、fontpath とか fontname の attribute を持たせられるようになっているので、そこで指定してやればよいか。で、次のようにしてみる。g=pydot.graph_from_edges(edges)g.fontname="arialuni.ttf"g.fontsize=10ところが、これでは文字化けのまま。原因を探るために、試しに、dot ファイルをまず手で書いてみる。graph "g" { node [fontname="arialuni.ttf", fontsize=10] "root"; "日本語"; "root" -- "日本語"; "ラテン語"; "root" -- "ラテン語"; "英語"; "root" -- "英語"; "ラテン語" -- "英語";}test.dot ファイルに上記を入れておいて実行してみる。dot -Kneato -Tjpg test.dot -o pydotteset01.jpgこれだと、ちゃんと日本語が表示される。pydot から出力されているファイルを見ると、次のようになっている。node の属性がベタに書き出されていて、ちゃんとリストになっていないからなのかな。graph G {fontsize=10;fontname="arialuni.ttf";"root";"日本語";"root" -- "日本語";"Latin";"root" -- "Latin";"English";"root" -- "English";"Latin" -- "English";}試しに手書きで、node [fontsize=10, fontname="arialuni.ttf"] と書き換えてやると、日本語が表示できるようになった。ということで node を作って、そこに属性を指定することにした。が、g.add_node でそのノードを追加すると一番最後に追加されてダメなので、pydot.py の class Graph の def add_node の中を書き換えてみるとちゃんと日本語が表示されるようになった。、- # self.sorted_graph_elements.append(graph_node)+ if graph_node.name == 'node':+ self.sorted_graph_elements.insert(0, graph_node)+ else:+ self.sorted_graph_elements.append(graph_node)なんだか強引なやり方だが、とりあえず pydot で日本語が出せた。適当なことをやっているので副作用があるかもしれない。というか、ドキュメントちゃんと読んだら、もっとちゃんとした使い方があるのかもしれないが、面倒なのでとりあえず。あとで Google で探してみるかな。まあ、とりあえず日本語が使えることは確認できたのでよしとする。#!/usr/bin/env python#-*- coding: utf-8 -*-import pydotedges=[(u'私', u'食べる'), (u'私', u'遊ぶ'), (u'私' , u'寝る'), (u'寝る', u'ベッド'), (u'寝る', u'道端'), (u'食べる', u'魚'), (u'食べる', u'米'), (u'食べる', u'肉'), (u'遊ぶ', 'Python'), ('Python', 'pydot'), ('pydot', 'pyparse'), ('pydot', 'Graphviz'), ]n = pydot.Node('node')n.fontname = "arialuni.ttf"n.fontsize = 9n.fontcolor = "blue"g=pydot.graph_from_edges(edges)g.add_node(n)g.write_jpeg('graph_from_edges_dot.jpg', prog='dot')
2007.11.07
閲覧総数 18771
8
![]()
『IronPythonの世界』を読む (7) からの続き。Part 4 はとりあえず適当に流して、Part 5 IronPython で DB & Web プログラミングに入る。ここでは、SQL Server 2005 を使っている。IronPythonの世界具体的に書かれているのは、ADO.NET を使って SQL Server 2005 に接続するやり方だけで、SQLite や MySQL 等を使うにはどうしたらいいかとかいうのはない。p.304 に 「CPython のデータベース接続を使う」というページがあって、FePy プロジェクト や IronPythonでADO.NET パート1、IronPythonでADO.NET パート2 のリンクがあげられている。このあたりを参考にすれば、なんとかなるんだろうということで、後から試してようかと思う。DB 接続の部分は、できれば DBAPI 互換のライブラリを使って、CPython のプログラムと共通化したい。IronPython を使うと、.NET の世界とは仲良くなれる反面、既存の Python の資産を有効に扱いづらいというデメリットもある。基本的にはマルチプラットフォームのものが好きなので、うーむと読み進めるにしたがって思ってしまうのだが、Windows に閉じた世界でやる分には、まあ、便利でよろしいかなと。例えば、IronPython から MS の日本語固有ニーズに対応したライブラリを使う 「プログラミング言語 Python を使う みたいなこともできるし、自然言語処理関連のライブラリ SlothLib をちょこっと使う にしても、 『IronPython の世界』を読む (4) で IronPython から使ってみているけど、CPython + ctypes で C のライブラリを使うよりも、IronPython + .NET のライブラリを使う方が楽なわけで、欲しいライブラリが .NET で書かれていれば、やっぱり IronPython を使うメリットは大きいとも思う。ちょっとアンビバレント。とりあえずは、SQL Server 2005 を使って書かれているとおりにやってみる。ということで、また一つ、一時的に Microsoft に洗脳されてあげることにする。書籍には、URL が書かれているが打ち込むのが面倒なので、SQL Server 2005 - ダウンロード のリンクからダウンロードするのがよいだろう。SQL Server 2005 Express Edition with Advanced Services Service Pack。これは SP2 があたっているので、書籍に書かれているように別途 SP2をあてる必要がない。Advanced を使っている理由は、SQL Server 2005 Management Studio Express (SSMSE) という使いやすいグラフィック管理ツールによる SQL Server Express の容易な管理。SQL Server テーブルのプレーン文字ベースのデータに対するフルテキスト クエリの実行。フルテキスト クエリには、語、句、または複数の形式の語句を含めることができます。ローカル リレーショナル データでの SQL Server Reporting Services レポートの実行。ということで、インストールするときに SSMSE のインストールオプションを忘れずにということだ。デフォルトだとインストールされないから。確かにこれはインストールしておいた方が便利だろう。SSME のテンプレートエクスプローラーとかも密かに便利ね。テンプレートの中から Backup Database を使えばテンプレートをほいと作ってくれるとか。なんだかんだで、こういう GUI はオープンソース系よりプロプライエタリなやつの方が充実している。SQL Server Management Studio でテンプレートを使用する方法、 SQL Server 2005の管理ツール (@IT)。集中連載 : SQL Server 2005 と Oracle 10g の真実 第 7 回 メンテナンス プランの作成 ~ 定期的なメンテナンス作業の簡単なセットアップとバックアップ、復元。それにしても、3年前のリリースのものだと資料がたくさん簡単に見つかる。そういえば、この数年 MS SQL Server って使ってなかったというのはさておき、サンプルデータベースは、Northwind and pubs Sample Databases for SQL Server 2000 と SQL Server 2005 Samples and Sample Databases (ここに移動)で、Express Editions 用サンプル データベースのインストール のあたり。とりあえず書籍のNorthwind and pubs Sample Databases for SQL Server 2000を使ってテストする。instpubs.sql と instnwnd.sql を実行してサンプルデータベースを作るが、このあたりの手順、書籍ではちゃんとされているので、SQL Server を使ったことがない人でもたぶん大丈夫だと思う。ADO.NET の仕組みなんかも簡単に説明されている。それゆえ、また洗脳が行われるwとりあえず、データベースを作成後、書籍を参考に、下のようなテストをしてみる。接続は Windows 統合認証ではなく SQL Server 認証を使った。User ID=sa;Pwd=password のところが Windows 統合認証なら Integrated Security=true になる。このあたりは、Python のお話というより、通常の SQL Server の接続文字列のお話になるが。# お約束で clr をインポートして、# AddReference で参照してから、importimport clrclr.AddReference("System.Data")from System.Data.SqlClient import *# SQL Server への接続conn = SqlConnection()conn.ConnectionString = "Server=(local)\sqlexpress;Database=pubs;User ID=sa;Pwd=password" conn.Open()# コマンドの作成と実行cmd = conn.CreateCommand()cmd.CommandText = "select count(*) from titles"count = cmd.ExecuteScalar()print countcmd.CommandText = "select title, type from titles"dr = cmd.ExecuteReader()while dr.Read(): print "title=%s type=%s" % (dr[0], dr[1])dr.Close()cmd.CommandText = "insert into titles values ('ironbk', 'Programming IronPython', 'programming', '0736', 2800, 0, null, null, null, '2007/3/31')"count = cmd.ExecuteNonQuery()print count# 接続を閉じるconn.Close()参考: 『IronPython の世界』p. 294 に次のような記述がある。本書では、セキュリティ上の観点から「Windows統合認証」で解説していきます。それは、仮とはいえ、パスワードは気軽に公開できるものではないと思うからです。なので、上記の ConnectionString のところは、サンプルでは、conn.ConnectionString = "server=(localhost):Database=pubs;Integrated Security=true" になっている。セキュリティ上の観点から言うと、スクリプトにパスワードを書きこまなくても済む Windows統合認証というのは、特に企業内でアプリケーションを多数に配る場合に便利かつ安全で良いかもしれない。そうでなければ、毎回、使用時にパスワードを訪ねる必要がある。Windows であれば、そんな必要はない。これは大きなメリットだ。と、また、マイクロソフトに毒されてみるw シングルサインオンですぜと。でも、本当にそれは正しい面もある。毎回パスワード入力するなら、OpenLDAP を使って python-ldap を使うとかあり得るが、それじゃあなんだから Kerberos でというのなら、PyGSS: Python bindings for the GSS-API とか。あるいは、ウェブアプリケーションなら Lasso - Liberty Alliance Single Sign On あたりもそのうち見てみるか。 PKIとPMIを融合する新しいXMLベースのセキュリティメカニズム【連載】Webサービスのセキュリティ。SaaS市場でもSIビジネスが成長か サイオス、Google Apps導入でSIサービス開始、SIOS Integration for Google Apps とは、という方向だってあるだろう。でも、とりあえず、そういうことはどうでもいいや。
2008.04.19
閲覧総数 76
9

久々に、『銀河英雄伝説』を見始めた。第24話まで見終えた。帝国での内乱の最中、同盟ではラインハルトが仕込んだリンチ少将に先導されてクーデーターが起きる。クーデーターはヤン・ウェンリーによって平定される。その話の最後の方に出てくるヤン・ウェンリーの言葉。政治の腐敗とは、政治家が賄賂を取ることじゃない。それは政治家個人の腐敗であるに過ぎない。政治家が賄賂をとっても、それを批判できない状態を政治の腐敗というんだ。貴官たちは言論を統制した。それだけでも、帝国の専制政治や同盟の現在の政治を非難する資格はない。そうは思わないか。「銀河英雄伝説 - 第24話 誰がための勝利」よりさて、日本はどうなっていくんだろう。【青山繁晴】国体と民意と憲法改正[桜H22/9/3]。それはさておき、「サポーター会費、900人分水増し」民主・下条議員元秘書らが告発状 なことが普通に行われる民主党(故人献金問題なんてのも過去にあったし)に嫌われているチャンネル桜が、けっこうYoutube でアクセスが多いというのは、以前からニュースと政治のランキングをチェックしていたので予測はついていたが、世界的に見ても報道で 20位とかで、意外に多かったのね。チャンネル桜が民主党に取材拒否されたらしく、怒りまくっているw 【言論と報道】ネットの影響力と民主党の取材拒否参照。それにしても、党員登録してないのに投票用紙…民主代表選とは、とほほだなぁというか、やっぱりねぇというか。ちなみに、米国人はどの程度登録登録してるんだろうか。CIAは在日米軍の関係者を大量に登録させるとか、工作活動してるんだろうか。安上がりな対日工作活動なのにねw 中国勢や韓国勢はどの程度の工作員が党員・サポーターになっているか。民主党は、国籍別党員、サポーター数を公開すべきだよな。実質上の、外国人参政権、それも首相選に投票できるのだから。どの国の影響が強いのかは日本国民全体に知らせるべき。もっとも、うそつき工作はいくらでも可能だろうけど。なにせ、死者でも党員やサポータになっている可能性もあるわけだしなぁ。【断舌一歩手前】民主党代表選、投票者の国籍条項導入を急げ![桜H22/8/10]とか、【ニュースの読み方】ありがとう小沢一郎さん[桜H22/9/1] とか 【山村明義】民主党代表選とこれからの日本[桜H22/9/2] とか、民主党が流して欲しくないような動画を腐るほど流しているから、嫌われているのだろうけど。それでも、民主党は嫌いなメディアには取材もさせないとかいうのだから(というかメディアとしても認めないという姿勢らしい)、中国の報道統制と同じだねと。ここまできたら、こんな企画もやっちゃう。そりゃ、民主党に嫌われるわなぁw1/4【討論!】こんなに楽しい!?共産主義[桜H22/9/4]2/4【討論!】こんなに楽しい!?共産主義[桜H22/9/4]3/4【討論!】こんなに楽しい!?共産主義[桜H22/9/4]4/4【討論!】こんなに楽しい!?共産主義[桜H22/9/4]そもそも、チャンネル桜は、特定の国が嫌うような番組をたくさん流しているから、中国や韓国、北朝鮮の工作員とかも、嫌っているだろう。民主党の中にも、特定国の工作員がいるのだろうかw 米国CIA はどうかといえば、おそらく、びみょーだよなぁと思っているに違いない。CIAから見ると、好ましいと思えるものもあれば、そうでないものもあるだろう。たとえば、「GHQ 焚書」 で検索すると出てくる 「GHQ焚書図書開封1」1/4(H19.2.1) みたいなことをやっている西尾幹二氏の動画なんて、やめてくれと内心思っているに違いない。【西尾幹二】これからの日本[桜H22/8/18]。基本的に、大東亜戦争/太平洋戦争は、アメリカが仕掛けた戦争だという歴史観だしね。根っ子に、けっこう反米なところがある。左翼の人も 【快刀乱麻】大空襲と原爆投下[桜H22/8/9] なんかは同調できるだろうし。チャンネル桜は、基本的に、日本会議 の勢力だな。そういえば、上記「【西尾幹二】これからの日本」の中で触れられている、NHK の番組で話題になった 【古谷経衡】日韓のこれから NHKのこれから[桜H22/8/25] とか、おもしろい。この番組は見たが、こういうやりとり の部分ね。この動画は、NHK がすぐに消すだろうけど。NHK は、自サイトで著作権に反しないような切り張り動画を作れるようにすると、正しく動画を引用して、何かを論じるということが可能になるのだけど。NHKで確かそういう研究していたような気がするが。強制徴収している料金を中国や韓国、あるいは電通とつるんで無駄に使わないで、そうしたことにもっと力を入れればいいのに。ここで話題の話題の崔洋一監督よりも、元、空軍大佐 崔三然氏の【日韓併合談話】日本の謝罪などいらない 韓国保守派の嘆きと憤慨を見て見るか。【鍛冶俊樹】菅談話~元韓国空軍大佐の嘆きと憤慨[桜H22/9/3]でも取り上げられている。崔三然氏の公演は、戦略・情報研 日韓併合100周年 崔三然氏 2,3, 4,5,6,7,8,9,10。ちなみに、Youtube で 1931年の京城(ソウル)の映像 を見つけた。ついでに、【藤岡信勝】「日韓併合百年」の謝罪はいらない[桜H22/7/26]1/4【討論!】日韓併合の真実とこれからの日韓・日朝関係[桜H22/7/24]2/4【討論!】日韓併合の真実とこれからの日韓・日朝関係[桜H22/7/24]3/4【討論!】日韓併合の真実とこれからの日韓・日朝関係[桜H22/7/24]4/4【討論!】日韓併合の真実とこれからの日韓・日朝関係[桜H22/7/24]1/3【韓国併合百年】「首相謝罪談話」を許さない緊急国民集会[桜H22/8/13]2/3【韓国併合百年】「首相謝罪談話」を許さない緊急国民集会[桜H22/8/13]3/3【韓国併合百年】「首相謝罪談話」を許さない緊急国民集会[桜H22/8/13]よく、植民地政策によって言葉を奪われという表現を聞くが、でたらめであることが、朝鮮総督府の発行した教科書などを見ればわかるのだが、言葉を奪われた神話は、むしろ朝鮮半島での話しからよりも、在日朝鮮人が作り出した話なのだろうと思う今日この頃。いくら、ハングルを大衆に普及させたのは実は日本人とかいう話を証拠をいくら出しても無駄なんじゃなかろうかと。つまり、阪神教育闘争50周年集会の記録、阪神教育闘争に学ぶ 民族教育と日本それらの学校は解放後すぐに祖国へ帰国しようとした若者たちが、自分たちが母国語を話せないことに愕然としたことに端を発したと言われています。在日朝鮮人はそれまで日本の同化政策によって、名前を奪われ、言葉を奪われてきました。戦後、GHQ の命令で、日本政府が朝鮮学校の閉鎖を行おうとして衝突が起きた。そもそも、帰国してから朝鮮語を学べば楽だったのにという話はさておき、結局、朝鮮人の一部の人が日本人に同化せずに日本に住み着くために、できるだけ有利な状況を作り出そうとあがいてきた中で生まれたお話なんだろう。ゆえに、朝鮮半島で起きたさまざまな出来事と、戦後の在日韓国・朝鮮人の話とは、かなり切り分けて考えないと、かえって歴史が見えなくなってしまうのかもしれない。戦争が終わったとき、朝鮮半島の朝鮮人が朝鮮語をしゃべれなくなってしまって困りましたなんてことはなかっただろうし。ちなみに、阪神教育闘争の物証 米公文書館にあったらしい。同年4月24日、神戸では大阪の反対闘争に続いて生徒、教師、父母など1万5千名が兵庫県庁近くの公園に集まり、うち数百名が県庁に突入し閉鎖命令を撤回させた。あわてた連合国軍総司令部(GHQ)のマッカーサー元帥は第8軍司令官アイケルバーガー中将に指令し、抗議行動を「暴動」として非常事態宣言を公布し、武力で運動を鎮圧した。結果、1700名あまりが逮捕され、そのうち136名が軍事裁判にかけられた。これが、いわゆる「阪神教育闘争」である。理由は何であれ、「数百名が県庁に突入」って...。それにしても、阪神教育事件 Wikipedia だと、「1590人もしくは7295人[1]が検挙」、「23人を軍事裁判」。逮捕者数や、軍事裁判にかけられた人数のレベルでも、違っている。ずいぶん、話がそれてしまったな。
2010.09.05
閲覧総数 107