俺にもきたよ。何も考える気ないよ。
こういう時期はつらいなぁ。
2009年4月27日月曜日
Pyscripterで日本語
Pyscripterの話
pythonをインストールした後
インストーラーでインストールすればいいのだけど
注意点が3つほど。
1.ツール→オプション→エディタオプション
でエディタのフォントを日本語対応(MSゴシック等)にする
2.インプリンタの出力で日本語を出したい場合、
インプリンタの出力画面を右クリックでインプリンタオプションを選択、
ここでまたフォントを日本語対応にする。
あとは日本語に対応した書式で書けば動きます。(UTF-8限定)
例)
#!/usr/bin/env python
# -*- coding: utf-8 -*-
print u"こんにちわ"
スクリプトで何かするツールとしては一番便利なんじゃないの今のところ。
(pythonができるという前提で)
業務用で使えるかどうかは知らんよ。(一応有望なフレームワークはある)
pythonをインストールした後
インストーラーでインストールすればいいのだけど
注意点が3つほど。
1.ツール→オプション→エディタオプション
でエディタのフォントを日本語対応(MSゴシック等)にする
2.インプリンタの出力で日本語を出したい場合、
インプリンタの出力画面を右クリックでインプリンタオプションを選択、
ここでまたフォントを日本語対応にする。
あとは日本語に対応した書式で書けば動きます。(UTF-8限定)
例)
#!/usr/bin/env python
# -*- coding: utf-8 -*-
print u"こんにちわ"
スクリプトで何かするツールとしては一番便利なんじゃないの今のところ。
(pythonができるという前提で)
業務用で使えるかどうかは知らんよ。(一応有望なフレームワークはある)
2009年4月25日土曜日
シラフdemoろれつが回らない
お酒といえば草薙さんの話題でもりあがってました。
まあ俺の友達にもやりかねん奴がいるけど。
あの事件は地デジの呪いなんじゃないかなあと個人的に思ってます。
利権と課題がてんこもりだし、CMも縁起悪いしね
やっぱ、飲む前は、一応客先だし緊張しすぎてまわりませんでした。
怖いもの知らずな昔にもどりたいわ。
ということで、童心に戻って明日は8時からレスキューファイアー見るぞ。
家族仲良く見れる構成になってるんで読んでる人は、ぜひ子供と一緒に。とりあえずいろんな人に勧めてるんだけど、特撮ウケ悪いです。
まあ俺の友達にもやりかねん奴がいるけど。
あの事件は地デジの呪いなんじゃないかなあと個人的に思ってます。
利権と課題がてんこもりだし、CMも縁起悪いしね
やっぱ、飲む前は、一応客先だし緊張しすぎてまわりませんでした。
怖いもの知らずな昔にもどりたいわ。
ということで、童心に戻って明日は8時からレスキューファイアー見るぞ。
家族仲良く見れる構成になってるんで読んでる人は、ぜひ子供と一緒に。とりあえずいろんな人に勧めてるんだけど、特撮ウケ悪いです。
2009年4月20日月曜日
2009年4月14日火曜日
CPUにも勝てない有様
mogobotつよすぎ、前対戦したのに比べて、
やけに定石に詳しいようなので、
何かしら改造してあるのだろうか。
mogobotは現状で一番強いといわれる囲碁AIで、自分が黒で互戦です。
右下の定石は19より先に23,24の交換が正しい手順といわれてます。
そうしないと20で22の抵抗が成立します。今回は無事に逃れましたが・・。
41は42のほうがよかったかもしれません。後々のこと考えると43,45は単にJ-4が賢いようです。ずっと劣勢っぽいんですが113でM9とか下辺に先に寄り付いてると勝機はあったのかもしれません。ほかにも調べると悪いところ一杯ありそうです。148で真ん中取られたら、もうだめです。少し悪あがきしてから投了しました。
仕事が不景気で暇なうちに練習しとかないと忘れてしまいそうだけど、そうでもないね。
やけに定石に詳しいようなので、
何かしら改造してあるのだろうか。
mogobotは現状で一番強いといわれる囲碁AIで、自分が黒で互戦です。
右下の定石は19より先に23,24の交換が正しい手順といわれてます。
そうしないと20で22の抵抗が成立します。今回は無事に逃れましたが・・。
41は42のほうがよかったかもしれません。後々のこと考えると43,45は単にJ-4が賢いようです。ずっと劣勢っぽいんですが113でM9とか下辺に先に寄り付いてると勝機はあったのかもしれません。ほかにも調べると悪いところ一杯ありそうです。148で真ん中取られたら、もうだめです。少し悪あがきしてから投了しました。
仕事が不景気で暇なうちに練習しとかないと忘れてしまいそうだけど、そうでもないね。
2009年3月25日水曜日
死んだあとのPHPテスター
簡易負荷テスト用コード
min から max まで時間あけて接続します。
使いようによってはダウンローダーみたいにもいけるかと。
function microtime_float(){
list ($msec, $sec) = explode(' ', microtime());
$microtime = (float)$msec + (float)$sec;
return $microtime;
}
function gettest(){
$res = "";
if( empty($_REQUEST['min'] )
||empty($_REQUEST['max'])
||empty($_REQUEST['wait'])
||empty($_REQUEST['max_time'])){
return $res;
}
$min = (int)$_REQUEST['min'];
$max = (int)$_REQUEST['max'];
$wait = (int)$_REQUEST['wait']*1000;
$max_time = (int)$_REQUEST['max_time'];
$end_microtime =microtime_float()+$max_time;
set_time_limit( $max_time+10 );
for($i=$min;$i<=$max;$i++){
$folder_num = sprintf("%04d",ceil($min/1000));
$dirname = "./res/".$folder_num;
if(!is_dir($dirname)){
mkdir($dirname);
}
$filename=$dirname."/".$min.".html";
if(file_exists($filename)){
$min++;
$res = $min;
continue;
}
$testurl="$_REQUEST['URL']".
"$_REQUEST['URI']".$min;
$html =file_get_contents($testurl);
if(!$html){
sleep(10);
if(microtime_float()>$end_microtime || $min>=$max){
break;
}
continu;
}
$pattern = '適当な正規表現';
$matches = array();
preg_match($pattern,$html,$matches);
if(!empty($matches[1])){
$data = $matches[1];
$fp = fopen($filename, 'w');
if ($fp){
if (flock($fp, LOCK_EX)){
if (fwrite($fp, $data) === FALSE){
return $res;
}
flock($fp, LOCK_UN);
}
}
fclose($fp);
}
$min++;
$res = $min;
if(microtime_float()>$end_microtime || $min>=$max){
break;
}
usleep($wait);
}
return $res;
}
$next =gettest();
$next_max = ((int)$_REQUEST['max']>$next)?($_REQUEST['max']):($next);
?>
min から max まで時間あけて接続します。
使いようによってはダウンローダーみたいにもいけるかと。
function microtime_float(){
list ($msec, $sec) = explode(' ', microtime());
$microtime = (float)$msec + (float)$sec;
return $microtime;
}
function gettest(){
$res = "";
if( empty($_REQUEST['min'] )
||empty($_REQUEST['max'])
||empty($_REQUEST['wait'])
||empty($_REQUEST['max_time'])){
return $res;
}
$min = (int)$_REQUEST['min'];
$max = (int)$_REQUEST['max'];
$wait = (int)$_REQUEST['wait']*1000;
$max_time = (int)$_REQUEST['max_time'];
$end_microtime =microtime_float()+$max_time;
set_time_limit( $max_time+10 );
for($i=$min;$i<=$max;$i++){
$folder_num = sprintf("%04d",ceil($min/1000));
$dirname = "./res/".$folder_num;
if(!is_dir($dirname)){
mkdir($dirname);
}
$filename=$dirname."/".$min.".html";
if(file_exists($filename)){
$min++;
$res = $min;
continue;
}
$testurl="$_REQUEST['URL']".
"$_REQUEST['URI']".$min;
$html =file_get_contents($testurl);
if(!$html){
sleep(10);
if(microtime_float()>$end_microtime || $min>=$max){
break;
}
continu;
}
$pattern = '適当な正規表現';
$matches = array();
preg_match($pattern,$html,$matches);
if(!empty($matches[1])){
$data = $matches[1];
$fp = fopen($filename, 'w');
if ($fp){
if (flock($fp, LOCK_EX)){
if (fwrite($fp, $data) === FALSE){
return $res;
}
flock($fp, LOCK_UN);
}
}
fclose($fp);
}
$min++;
$res = $min;
if(microtime_float()>$end_microtime || $min>=$max){
break;
}
usleep($wait);
}
return $res;
}
$next =gettest();
$next_max = ((int)$_REQUEST['max']>$next)?($_REQUEST['max']):($next);
?>
登録:
投稿 (Atom)
