3 :
デフォルトの名無しさん:04/09/20 21:45:06
糞スレ
4 :
デフォルトの名無しさん:04/09/20 22:16:21
良スレ
重複スレ
(゚∀゚)tuple!!
7 :
デフォルトの名無しさん:04/09/22 00:42:36
Pythonなんとなく好きなんだが、CとPerlに慣れた身としては使う機会が少ない。
・Pythonを使うと圧倒的にここが楽!
って感じの短めの解説を誰か紹介してくれ。
そんなもん、用途によるだらう。
単純な数値計算や画像処理なら C で速度が欲しいだろうし、
awk 代わりに使うなら Perl のほうが楽。
自分はテキスト処理に使っているけど (awkレベルのものではなくて
もうちょい複雑な仕事、たとえば SGML を解析したりとか)、
いまのところ Python に代わる選択肢はないね。
>>7 Python は
・ソースコードが最小量
・エレガントなコード構造
・他言語への互換性
で他の追従を許しません。
・処理速度
・マルチバイト処理
は現時点では改善の余地があることは認めますが(しかし時間の問題でしょう)
> ・ソースコードが最小量
ここは異議あり。lambdaを廃止しようとしていて最小量もないもんだろ。
> ・エレガントなコード構造
これはある程度そうかも。
> ・他言語への互換性
ちょっと意味がわかんなかった。よかったらもっと詳しく。
マイナーな言語ほど沢山スレが立つの法則
>>13 削除依頼の勧めはリンク先のスレに書くべきことでしょう
ここは本スレ
>>13 の2つのスレッドはブランチ
使いわけされよ
>>16 普通、先にたったスレを使い切ってから、新しいスレをたてるもんだろうが。
スレ立つごとにおんなじやりとりを繰り返している気がする・・・
並立していても他が
【.NET】IronPython【Mono】
【JAVA】Jython【VM】
とかだったら納得されたんだろうけれどね。
ここは本スレ
>>13 の2つのスレッドはブランチ
使いわけされよ
23 :
デフォルトの名無しさん:04/09/24 00:31:31
あげてみよう
sage
13や17のような荒しは無視しませう
Python で書かれた Wiki ってどんなのありますか?
最も初期に書かれたっぽいのは PikiPiki
一番ポピュラーなのは MoinMoin
ある意味マニアックなのは ZWiki
32 :
デフォルトの名無しさん:04/09/24 22:50:34
ここは本スレ
>>13 の2つのスレッドはブランチ
使いわけされよ
前スレが終ったのでageておきます.
スレ乱立するほうがよっぽどひどい荒しじゃないですか?
ruby厨は(・∀・)カエレ!!
Rubvy!!!!!!!!!!!!!!!!!!!!!!!
>>35 前スレで1000をとるために、ずーっと貼りついてがんばっていたの?
ご苦労さん。
41 :
pythonrc:04/09/26 08:13:16
# pythonrc.py
import sys
if sys.stdin.isatty():
HISTORYFILE="/home/yusuke/.pythonhistory"
try:
import rlcompleter, readline
readline.parse_and_bind("tab: complete")
readline.parse_and_bind("set input-meta on")
readline.parse_and_bind("set convert-meta off")
readline.parse_and_bind("set output-meta on")
try:
readline.read_history_file(HISTORYFILE)
except IOError:
pass
del rlcompleter, readline
try:
import atexit
atexit.register(lambda: readline.write_history_file(HISTORYFILE))
del atexit
except:
# atexit is not available in Python1.5.
pass
except:
pass
del sys
前スレ 997:
> 例えば、tclshでは存在しないサブコマンド(メソッドみたいなもの)を書くと、
> そのコマンドの持ってるサブコマンド一覧が出てこの中から選べと言われたり、
> 引数が違ってたら例文が出たりするんですが、このような入力補助(?)みたいな
> 事ができればと思ってます。よろしくおねがいします。
Unix を使ってるなら
>>41 を試してみてください。
~/.pythonrc に置いておけば、たとえば
>>> a="spam"
>>> a. (ここで Tab を押す)
で補完できます。
HISTORYFILE の値は適当に変更してください。
あらかじめ空ファイルを作っておかないとエラーになりますんでご注意を。
ごめん、間違えた。
del rlcompleter, readline
この行はウソです。「, readline」の部分は消してください。
やっぱりテストしないで最適化するとろくなことがないなあ。
すごく短くて簡単なプログラムで、
こんなすごいことができるのか、すげええええええ!!
これなら初心者の俺でもできるぜ!!
というようなサンプルコードがたくさん書いてあるサイトはありませんか?
海外のサイトでもいいです。
「こんなすごいこと」って言われてもなあ。
たとえばどんなことよ?
3行で Guido の知能を完全にエミュレートするようなプログラムのことか?
それとも 10秒で明日の東京の天気を 99% の精度で予測するプログラムがすごいのか?
すごいことってどんなことだよ?
「Guido の知能を完全にエミュレート」できたら、それが充分に速いなら、
どんどん python は発展してってくれるな。おもしろい。
完全にエミュレートするんなら老化もエミュレートするだろう。
肉体から離れた知能は存在しえない。
人間をエミュレートするには、一生かかる。
>>41 997ではないけど,使わせてもらいます.
# もしかして,食べすぎの中の人ですか?
# 変に疑わなきゃそうだろ
2.3.4出た
jythonでコンパイルしてgccでコンパイルしてみた人いますか?
> こっちがPython本スレ?
厨の立てた重複スレだよ。
56 :
デフォルトの名無しさん:04/09/27 06:19:23
>>56 スレ乱立荒らしが開き直りか?
どマイナーな言語のくせに、いくつもスレを立てるな。目障り。
Pythonで会話すればアホは入ってこれまい。
>>> s=unicode("どマイナーな言語のくせに、いくつもスレを立てるな。目障り。")
>>> print "".xxxx([ s[i] for i in (1,2,3,4,6,7,2,2,3,2,2,5,4) ])
このスレ、立てるのが早すぎだよ。
こんなゆっくりした進行のスレなのに、Part5 が 950 にすら達する前に立てられた。
これを軽々しく許していたら、スレ乱立で板全体が迷惑をこうむる。
Pythonがマイナー言語に属するってのは驚きだ.
個人的にはこれ以上メジャーになって欲しくない気もする.
今くらいがちょうどいい.
そうだよ。
オランダ語と同じくらいメジャーなのに。
>>61 マイナーだろ。読み方すらわからない奴多数だというのに。
目障りだから消えろ。
リストを(浅いコピーではなく)コピーするお手軽な方法ってありませんか?
>>63 37 名前:デフォルトの名無しさん[sage] 投稿日:04/09/26 01:04:24
ruby厨は(・∀・)カエレ!!
38 名前:デフォルトの名無しさん[sage] 投稿日:04/09/26 01:07:39
Rubvy!!!!!!!!!!!!!!!!!!!!!!!
>>64 copyモジュールにdeepcopyていうのがあるのでそれを使う
>>68 元の文章を読めよ。
ていうか、オレは釣られてるのか?
>>69 素で間違えた…。恥ずかしー!
回線切って首吊ってくる。
>>66,68
レスありがとうです。
deepcopy使ってみましたが欲しいものとは違いました。
x=y[:]も、うまくいきませんでした。
質問が悪かったです。説明不足ですみません。
例えば
a=[[1,2,3]]*3 #実際はもう少し複雑な構造
b=ほげほげ(a)
としたときに、
a=[[1,2,3]]*3
b=[[1,2,3],[1,2,3],[1,2,3]]
と同じ結果が得られると嬉しいのですが。
よろしくお願いします。
>>71 真面目に関数定義するしか無いんじゃないかな。
import copy
def listcopy(a):
if type(a) is list:
b = []
for i in a:
b.append(listcopy(i))
return b
else:
return copy.copy(a)
a = [[1,2,3]] * 3
b = [[1,2,3],[1,2,3],[1,2,3]]
c = listcopy(a)
print "a:",a
print "b:",b
print "c:",c
print "x[0][0] = 'hoge' :"
a[0][0] = "hoge"
b[0][0] = "hoge"
c[0][0] = "hoge"
print "a:",a
print "b:",b
print "c:",c
deepcopyって(ある意味)賢いんだね。
こりゃ気をつけてないと罠にはまりそうだ。
>>72 やっぱり、お手軽な方法は無いですね。関数定義することにします。
サンプル・コードまで書いて頂いて感謝です。
ありがとうございました。
なんか、荒らしを無視してスレが進行していることを装うために、
無理やり質問を作ってるようにしか見えないな。
76 :
デフォルトの名無しさん:04/09/27 19:20:39
>>71 極め付けにお手軽な方法。
>>> a=[[1,2,3]]*3
>>> a
[[1, 2, 3], [1, 2, 3], [1, 2, 3]]
>>> b=eval(str(a))
>>> b
[[1, 2, 3], [1, 2, 3], [1, 2, 3]]
>>> b[0][0]="hoge"
>>> b
[['hoge', 2, 3], [1, 2, 3], [1, 2, 3]]
>>> a[0][0]="hoge"
>>> a
[['hoge', 2, 3], ['hoge', 2, 3], ['hoge', 2, 3]]
>>77 素敵。危険な香りがするけど(w
ありがとうございます。これも使わせていただきます。
[list([1,2,3]) for i in xrange(3)] でいいんじゃないの.
>>80 list() が入ってるんだよ.それでもダメなの?
a = [[1,2,3]]*
b = map(list, a)
これでもダメ?
>>81 list()を使うってアイデアはいいんだけど、
元々は
>>64のdeep copyの話なんで、ちょっと違うかなーと。
b=map(copy.deepcopy,a)
文字列の切り出しなんですけど
Tclでは
set name あいうえお
puts [string range $name 0 2]
で「あいう」が取り出せるわけですが、Pythonで
name = u"あいうえお"
print name[0:2].encode("cp932")
としても取り出せません・・・。Python流の書きかたを
教えてください。環境はWin32のActivePython2.3です。
すいません。わかりました・・。こうすればいいんですね。
name = unicode("あいうえお", "cp932")
>>76 なんでこのスレに固執するのか、そのほうがわからん。
とっとと、このスレを削除依頼して前からあるスレを再利用したほうが
はるかに建設的じゃない?
>>81 >>83 a = [[[1,2,3]] * 3]
b = [[[1,2,3],[1,2,3],[1,2,3]]]
として、テスト条件を
x[0][0][0]="hoge"
にしただけで破綻するよ。
>>61 > 個人的にはこれ以上メジャーになって欲しくない気もする.
> 今くらいがちょうどいい.
負け犬の遠吠えにしか聞こえませんなあ。
やっぱり存在価値無いんじゃないの?
>>87 なんか勘違いしているようですが、私は荒しではありません。
deepcopyの話だけどコストかかってもいいなら、
pickleでシリアライズしてもどせばいけそう。
copy.deepcopy が deep copy になっていないのが問題なんだよね。w
むしろcopy.deepcopyが賢すぎるというか.
実際にはcopy.deepcopyの動作の方が適切な場合が多いと思う.
どちらにせよ,頭の隅に置いておかないとハマりそう.
deepcopyだけでいつまで話を引っ張るのやら。
それしか話題がないの?
対話モードで
>>> u"ほげほげ"
u'\u307b\u3052\u307b\u3052'
>>>
にする方法ってあるの?
マイナーな言語だけあって、荒らしもどことなく勢いに乏しいようだ。
Python 2.4a3 (#1, Sep 9 2004, 23:16:47)
[GCC 2.96 20000731 (Red Hat Linux 7.3 2.96-110)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> u"ほげほげ"
u'\u307b\u3052\u307b\u3052'
>>>
やってみたらできちゃったけど。。。
101 :
デフォルトの名無しさん:04/09/28 16:20:47
>>384 うぅっ、やっぱりそうでしたか・・。
友人から種をもらったので軽い気持ちで育ててしまいましたが、
よく考えれば当たり前ですよね・・。
しかし、成体になるまで育ててしまったものを今さらどうしていいのやら・・
日曜の朝、エサを用意しわすれてでかけたら、
夜帰った時には80cm以上も移動していました・・・。
なんだその生物は.激しく気になるぞ.
気になる誤爆だ。
もう何度も見た。わざとだろ。
元ネタは何?
最近住み着いた荒し君しつこすぎー.
荒しかい!手の込んだことを!
えー!?違うよぉ。誤爆でしょ。
パイソンて種から生まれるのじゃなくて卵からだよね?
バイソンとパイソン。
>>111 BisonとPythonか。カナで書くなよ。紛らわしい。
>>100 おおお、ほんとだ。2.4だとできるのな。
IDLEでもそうなのだろうか?
ところでIDLE使ってる人ってどれくらいいる?
>>113 ノシ
エディターはもっぱらこれ。
コンソールで、
>>> import unicodedata
>>> print unicodedata.normalize("NFD", unicode("が"))
とかやってもコケないのもいいね。
2.3.4でJUG版でも utf-8 のソースファイルをまともに扱えるようになったのが嬉しい。
116 :
デフォルトの名無しさん:04/09/28 21:57:10
( ´,_ゝ`)プッ
これからPythonを学びたいと思います。
よろしく。
じゃあ、まずは死んだオウムから。
次はsilly walk。
kittywalk はどーなった?
しばらくPythonを勉強してみたプログラム初心者でつ。
基本的な命令はBASICに似ていて、すぐ理解して数当てゲームくらいできますた。
でも、たくさんあるモジュールの知識がないとあんまり楽しめない機がした。
公式サイトの訳も読んだけど、ほんとうにわかってる人向けの説明で、
初心者の漏れには手も足もでませんでした。
>>122 おまえのような馬鹿は Python なんか使うな。
二度とここへくるなよ。
>>122 > 基本的な命令はBASICに似ていて
ここが駄目だ
> でも、たくさんあるモジュールの知識がないとあんまり楽しめない機がした。
まず実装したいものがあって、それに見合うモジュールが存在するかどうかの
気構えでよい。はじめから全部知ろうとするなよ(漏れも7割近く使い熟せていない)
>>123 さすが荒しの巣窟であるpythonスレですな。
Pythonの人気をねたむLISPプログラマの嫌がらせに違いない
HTMLParserでHTMLファイルの読み込みをやっているのですが
HTMLファイル中に
<INPUT TYPE=SUBMIT VALUE=検索>
というタグがあり(「検索」がクォートで囲まれていない)
このタグ以降の全てがHTMLParseErrorを起こします
うまいこと回避する方法はないでしょうか?
>>128 こんなんでどう?
from HTMLParser import HTMLParser
class MyHTMLParser(HTMLParser):
def handle_starttag(self, tag, attrs):
print "Encountered the beginning of a %s tag" % tag
if attrs:
print "\tattrs:",attrs
def handle_endtag(self, tag):
print "Encountered the end of a %s tag" % tag
p = MyHTMLParser()
p.feed(u"<INPUT TYPE=SUBMIT VALUE=検索>".encode("ascii", "xmlcharrefreplace"))
p.close()
>>127 タブとスペースとインデントの話に嫌気がさしたemacs使いのRuby人かも
python-mode.el (*´ω`*)
>>131 pythonなんか使っていると、そんなアフォな発想しかできなくなるのかねえ。
これからの言語教育
小:Gaim と Google で遊ばす。情操教育至上。
中:Python 漬け。OOP まで刷り込ます。
高:Jython で糞言語の活用法を教える。Scheme は友達であることを伝える。
大:ひたすら C/C++ で OS のかなりの部分を叩き込むように仕向ける。
院:完全放置
あとは知らん
135 :
デフォルトの名無しさん:04/09/30 16:00:11
> .encode("ascii", "xmlcharrefreplace"))
こんなのはじめて知った。すげー
Pythonから入るとシンプルなCの良さが理解できなさそう・・・
>>134 小学校低学年での「SqueakToys」を加えて欲しい。
>>138 上はPython関連の話題・ネタを扱うスレッドです。
下はPythonの超初心者向けのスレッドです。
なので重複ではありません。
Pythonヲタのためのスレでも立てようかな。
>>137 だめです。
何かのはずみで知ってしまったSmalltalkから戻れず廃人になるかも。
分別のつかん子供にはキケンすぎるオモチャです。
>>140 それこそたぷるタンスレ使い切った後継として立てるべきだろうね。
似たような名前のスレが三つあるから混乱している事は確かだし、
名前は考え直した方が良さそう。
Pythonのお勉強 part x → Pythonスレ x
【たぷるタソ】Pythonのお勉強 x【ハァハァ】 → Pythonヲタスレ x
1からPythonを学ぶスレ → Python初心者質問スレ
くらいか?
>>142 pythonのようなマイナー言語にスレが3つもいらない。
このスレ削除、残り二つは順に使い切って、それから新規スレひとつだけにすれば
良い。
ネタスレを残して本スレを消せっていう人は何故必死なの?
ネタスレとか本スレとかの判断基準は何?
そんな主観的な基準じゃなく、単純に他のスレが先にたっていて、
それを使い切ってもいないのに後から立てたスレは重複スレだってだけでしょ。
>>144 Pythonが嫌いなんでしょう。合理的ではない理由で。
つーか、論理が通じない相手なんだから無視しろよ。説得を試みるだけ無駄だよ。
敗北者復活きぼんぬ。
【たぷるタソ】人生の敗北者【ハァハァ】
とかにしようよ。
虫が寄り付かないように。
>>147 何か他の言語にもたぷるタン居るみたいだから、
【たぷるタン総合】という事で Python 専用から
ずらすのはいいかも。
たぷるタン集めてどうするのかは謎だけれど。
ところで、たぷるタンって誰ですか?
グイドタソの子供(画像略)
オレは「ぱいそんぱいそんぱいそん!」がいいなあ。。。
夜中にする話ではないような。
>>146 Pythonが嫌いなんじゃないよ。
ルールを守らずに立てられたこのスレと、
開き直っている住人が嫌い。
どうでもいいことだが、スレのシリーズが長い方に従うべきと思うが。どうだろうか?
あと、Pythonスレの乱立はム板にとって良いイメージにならないだろう。
Pythonフリーク同士であるなら統合するように互いに妥協するべきでは?
ルールを守らずに派生スレ立てられてしまったとき、
本スレの後継はどうすべきなん?
>>156 削除依頼してそのスレを建てた奴に通知するべきでは?
>>151 では、「ぱいそんぱいそん!統合スレ」を立てて、今あるpythonスレは
全部削除依頼ということで。
重複スレと言われつつそれぞれ盛り上がっている。
この事実の前に一体何が出来るというのだ。
>>155 それなら普通は、先にたったスレに合流して、
あとから立ったものは重複スレとして削除依頼。
一番シンプルでわかりやすいルールでしょ。2ch全体でもその流れ。
>>159 >重複スレと言われつつそれぞれ盛り上がっている。
>この事実の前に一体何が出来るというのだ。
1つ聞きたいけど、Pythonスレが様々あっても、
結局、内容って言ったってPython関連なんでしょ。
分岐する意味があまりないような気がするのだが。
まったく別の内容になるのなら話は別だが。
他板では、重複されたと認められたとたんに、
文句言われて削除依頼だされるしな。
要するに「142でいい」って事じゃない。
3つある事が問題なのじゃなくて、似たような名前で混乱するのが問題なんだから。
名前は「ムネオたんスレ」でも何でもいいけれど。
>>163 >名前は「ムネオたんスレ」でも何でもいいけれど。
正直やだ。
3つ巡回してるからどうでもいい
3つは多いせめて2つにしる。
別に変な名前つけて、スレの名前で目立たなくもいいじゃんかよ。w
標準的な「Pythonスレ XX」でも全然桶だよ。
Zope.JPの採用情報マダァ〜
スレの名前なんて、それほど問題じゃあないでしょ。
似たようなものが三つもあるのが問題であって。
オレは全部巡回しているから良い、ってのは自分勝手だと思うなあ。
たまにチラッと見にくる人や、初めてくる人だっているだろうに、そういう
人たちに混乱を与えているのは良くないと思うよ。
最低でも半角で「python」はタイトルに入れてくれ
じゃあ次スレ名はそれぞれ、
【たぷるタン】(Python, ML, Haskell, Claire, boost)【総合】
Python Part7
Python 初心者質問スレ
てな感じか?
>>173 っていうか今までとスレ数が変わってないではないか?w
とにかく次にどれかPyton関係のスレが落ちたら
『Python総合スレ Part.1』みたいなの立てればいいじゃん
現行スレは全部がお勉強スレってことになってるけど
すでにお勉強の話題よりもPythonそのものの話題のほうが多いんだし
それとは別に純粋に学習目的でお勉強スレは存続させればいい
>>175 たぷるタン総合スレは1/5でカウント.むしろtupleを実装している言語は
星の数ほどあるんで, 1/∞ = 0 でカウント.
多い多いって言う奴はRuby厨だろ。
それか複数スレ追いかけられないジジィ(プ。
タプル専門のスレに需要があるとは思えんが?
それに今のたぷるタソスレは、スレタイにたぷるが入っているってだけで、
中身は普通にPythonスレだし。(つまりここと思いっきりかぶっている?)
次スレは既に決まってますよ。
>>> Python('Zope', 'DrPython')[Part 9]
ここの連中は、たぷるタソ ハァハァという文字列が入っているってだけで、
それがいやだといって別のスレ立ててるんだよ。
ちゃんとPython 5って書いてあるのに。
どうしてそんな恥知らずなことができるのか理解に苦しむ。
>>182 >ここの連中は、たぷるタソ ハァハァという文字列が入っているってだけで、
>それがいやだといって別のスレ立ててるんだよ。
>ちゃんとPython 5って書いてあるのに。
>どうしてそんな恥知らずなことができるのか理解に苦しむ。
こんな時にオマエモナーって言葉があるんですね。
そこで
python vs. ruby Part2
ですよ。
ま、Pythonスレの住人って、モラルもマナーも何もないってことが
良くわかった。
そういう人が使う言語なのかねえ。
俺は現状でも困ってないから、
【自治厨】Pythonスレの明日はどっちだ?!【隔離】
というスレ立てて議論して、結果が出たら報告してくれよ。
>>185 その言い草からするとアナタはpythonスレの住人ではないのね?
自治を気取って、他言語のスレにちょっかいを出しに来るやつも
モラルとマナーを欠如をしていると思うが。
ちょっかいに対して反応するほうが問題。
虫はどこにでもわく。
アフォか板の資源をどう分配するかという話に
住民も糞もあるかい
しかし、このスレに常駐してる虫はかなりの粘着質だね。w
>>190 こんな時にオマエモナーって言葉があるんですね。
>>191 こんな時にオマエモナーって言葉があるんですね。
エレガントなPythonコードを求む
>>176の案でいいじゃん
総合スレと学習スレの二つあればいい
ともかくさ、
・他にPythonスレがあるのに、ここのスレが最後に立てられた
・その是非をめぐって、このスレはPythonスレとしては機能していない
というのは事実なんだから、素直にこのスレ捨てて他のPythonスレへ移れば
いいんじゃないの?Pythonの話をしたいんでしょ?ちがうの?
>>195 > ・他にPythonスレがあるのに、ここのスレが最後に立てられた
他のスレは Part 5 の後で立てられたネタスレなので・・・
Part 5 ―(ネタスレ)→ Part 6 なので最後に立てられたということです。
> ・その是非をめぐって、このスレはPythonスレとしては機能していない
君が常駐しているとそうなりますので・・・
> Pythonの話をしたいんでしょ?ちがうの?
そのまま君に訊き返したい文言ですな
>>196 の訂正
tech/1061640768 1からPythonを学ぶスレ
tech/1068824510 Pythonのお勉強 Part4
tech/1081264387 【たぷるタソ】Pythonのお勉強 5【ハァハァ】
tech/1081312810 Pythonのお勉強 Part5
tech/1095684242 Pythonのお勉強 Part6
で、現在生きているスレは
1からPythonを学ぶスレ
【たぷるタソ】Pythonのお勉強 5【ハァハァ】
Pythonのお勉強 Part6
だから、
・1からPythonを学ぶスレ はネタスレ認定で削除対象
・【たぷるタソ】Pythonのお勉強 5【ハァハァ】 は前スレの残骸認定で削除対象
ということ。まぁ1本に纏めるということなら。漏れは本スレとオフオピスレ
の2本でいいと思うが(この板内での話ね)。
>>197 それで同意。
Part5->Part6 とここまで伸びてきたのに
後発だってだけで消されるのは納得いかない
199 :
デフォルトの名無しさん:04/10/02 14:50:12
>>195 Pythonの話をしたいんでしょ?ちがうの?
Pythonはどうでも良いが、君をいじるのはなんか楽しい。
200 :
デフォルトの名無しさん:04/10/02 16:46:52
C での gnome 未経験な状態で gnome-python を使いたいのですが、
いいドキュメントとかありますか?
glade で gnome のアプリケーションを作ると core dump するので、
glade 使わない方がいいです。
# それも問題なんですが...
勘で作っている今日この頃...
tech/1081264387 【たぷるタソ】Pythonのお勉強 5【ハァハァ】
tech/1081312810 Pythonのお勉強 Part5
前スレは重複スレだったというわけか。
>>200 pygtk があるじゃん
>>201 でも前スレは1000まで逝った。
結果的にたぷるタソの方のスレが重複スレになった。
>>202 例えば、gnomeprint 使いたいとか、bonobo 使いたいとか、
gnomecanvas 使いたいとか。
C の API リファレンスと gnome-python のソースの .defs とか見て推測して
使ってんだけど、pygtk のリファレンスマニュアルみたいに、python 向けに書いて
あるのはないかなぁ、と。
PDF の作成ぐらいは出来ているんだけどさぁ...
>>202 > でも前スレは1000まで逝った。
> 結果的にたぷるタソの方のスレが重複スレになった。
後から立てたスレを重複スレと言うのじゃないの?
>>204 そのとおり。そんな簡単なこともわからん馬鹿が多いらしい。
それか、無理やり理由を付けてここを本スレにしようとしているか。
なんでそんなにこのスレに固執するのかわからない。
ま、いいさ。rubyスレにも【るびきち】とかサブタイ付ければいい事だし。
アホ、せめて 【shige】 にしとけ
先に立とうが後から立とうが関係ない。
人が集まったほうが本スレになる。それだけ。
200を超えて、まともな書き込みがいくつあったか数えてみよう。
>>206 なんで関係の無い言語のスレに嫌がらせするんだ?
pythonユーザの品性を疑われるからやめれ。
もう、このスレ自体が恥だ
調べもせずに質問しますが、
urllib.urlopenにタイムアウトをつけるにはどうしたらいいでしょうか?
>>212 まず、googleで調べてみるのはどうでしょうか?
215 :
デフォルトの名無しさん:04/10/03 04:37:27
>>> import socket
>>> socket.setdefaulttimeout(1)
>>> import urllib
>>> urllib.urlopen("
http://192.168.0.99/")
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "/usr/local/lib/python2.3/urllib.py", line 76, in urlopen
return opener.open(url)
File "/usr/local/lib/python2.3/urllib.py", line 181, in open
return getattr(self, name)(url)
File "/usr/local/lib/python2.3/urllib.py", line 297, in open_http
h.endheaders()
File "/usr/local/lib/python2.3/httplib.py", line 712, in endheaders
self._send_output()
File "/usr/local/lib/python2.3/httplib.py", line 597, in _send_output
self.send(msg)
File "/usr/local/lib/python2.3/httplib.py", line 564, in send
self.connect()
File "/usr/local/lib/python2.3/httplib.py", line 548, in connect
raise socket.error, msg
IOError: [Errno socket error] timed out
>>>
ちなみにどうやって見つけたかというと
/usr/local/lib/python2.3/*.py を「timeout」で grep してみただけ。
Google もいいが、まずソースを見るべし。
>>216 いや、日本語ドキュメントを「タイムアウト」で検索するだけで一番に出るわけだが。
いちいちそーすを見ないといけないってことは
おぶじぇくと指向のかぷせる化ってぜんぜんありがたくないものなんですね
道理でpythonが逆立ちしてもRubyに敵わないわけだ。
>>218 「ボクはマニュアルでしか勉強しません!」っていうあたりがカス。
一生メガネ屋と動物園に貢いでなさい。
いつまで恥さらしを続けるんだよ。
もうやめようよ。
ドキュメント面で見るとRuby <<<<<<<<<<<< Pythonだろ。
223 :
デフォルトの名無しさん:04/10/03 10:20:27
Ruby ><>?><>>>>>>>>>>>>>>>>>>>>>>Pythonlkv!!!!!!
mpythinはもう追いわっrったげmんgぽ。
最強ぶb0rRubyby!!!!!!!!!!!!!!!!!
Rbuy!
>>212 腐りきったこのスレで、必死に Python の話題をふろうとしている
君に乾杯
227 :
デフォルトの名無しさん:04/10/03 11:56:41
Ruiby!!!!!!!!!!
Ruby????????????????????????Python@rjeg
Rbubうy!
228 :
デフォルトの名無しさん:04/10/03 14:19:59
Pythonユーザってオタク臭くてキモイ
ルビ基地の隔離スレに決定だな。
>>>
↑
このプロンプト好き(*´ω`*)
>>214-215 ありがとうございます。
調べもしなかったんでスルーされるかと思ったんですが
このスレの人は優しいね!感謝!
このスレageたら頃す
238 :
デフォルトの名無しさん:04/10/04 23:22:43
age
ここは >>> 専用
>>238 おう、やるきだな。相手になってやるから覚悟しやがれ。
(・∀・)埋め!
いっておくが、あのスレを立てたのは漏れじゃないからな。
一週間に一スレ立てます
Pythonはいい言語だけど厨房にからまれすぎだな。
Pythonは厨房な言語だからこそ厨房にからまれるんだと思う。
Python スレに厨房が粘着してもいいじゃないか。
まずはどんなかたちでも良いから Python の素晴しさを実体験で知って貰う必要がある。
あと Python のポテンシャルが非常に高いのは PyCon や EuroPython で実証済みだから
Python スレのレベルの低さだけで判断して貰っては困るよ。
Python 2.0 以降に対応した日本語の本ってある?
初めてのPython 第2版
がもうそろそろ出るらしい
どうやら第1版にくらべて値段が高くなったみたいだね
その分内容が濃くなったのかな?
pythonクイックリファレンスは2.3対応を謳っている(原著Python in Nutshellは2.2)。
> 初めてのPython 第2版
初夜の過ごし方 再婚篇 ぽ。
>249
……まぢですか……こないだ買ったばっかしやっちゅーにOTL
>>248 「PerlユーザのためのPython移行ガイド 」も2.0以上で
クイックリファレンスが出るまでは唯一の2.0対応だったと思う
256 :
デフォルトの名無しさん:04/10/06 07:09:17
python の C拡張書いて実行すると最後まで動いた後exit のところで segfault が起きるのですが、
mallocした領域をfreeし忘れていたりすると起きるものなのでしょうか。
まあPython本体をデバッガにかければいいんでしょうがそこまでしたくないもんで(スマソ)。
>>254 詭弁だな。
ろくな日本語ドキュメントがないからって。
>>256 1. 中身が何もしないC拡張書いて落ちるかテスト
2. 1に加えてmallocしてfreeしないC拡張を書いて同様にテスト
でやってみたらどうか
>>256 reference count の増やし忘れがどこかにあるのかも。
スタイルガイドに「コメントは英語で書きましょう」ってあるからさ、
がんばって docstring も全部英語で書いてるんだけど、
じつはこれってコード本体書くより時間がかかるんだよね。
>>247 > まずはどんなかたちでも良いから Python の素晴しさを実体験で知って貰う必要がある。
そうね。そのためには、まずスレ乱立してでも知名度を上げなければ。
>>247 >あと Python のポテンシャルが非常に高いのは PyCon や EuroPython で実証済みだから
実証済みってどう実証されたのよ
>>263 > >あと Python のポテンシャルが非常に高いのは PyCon や EuroPython で実証済みだから
> 実証済みってどう実証されたのよ
オレも実証結果を聞きたいな。
荒らしの煽りは放置せよ。
> MacOSX スレに厨房が粘着してもいいじゃないか。
> まずはどんなかたちでも良いから MacOSX の素晴しさを実体験で知って貰う必要がある。
> あと MacOSX のポテンシャルが非常に高いのは MacExpo や EuroBSDCon で実証済みだから
> MacOSX スレのレベルの低さだけで判断して貰っては困るよ。
コピペだろ。
>>254 英語で良いので、できればオンラインでお勧めってあります?
オライリーの古い2冊とクイックリファレンスは遥か昔に買って持ってるんですけど、
古すぎて Unicode の事とか書いてないんですよね。
内容もイマイチ入門っぽくて、ちょっとつっこんだ事があんまり書いてないような・・・
有志で日本語ヘルプを作ってくださっているので非常に助かるんですけど、オリジナルの
ヘルプ自体、自分で知りたい情報を探すのに結構苦労するような代物で微妙に不便なんですよね。
(例えば、あるメソッドが出す例外は何かとか。あと例が少ないとか)
とりあえず、他言語からの乗換え組みに便利な本が欲しかったんですけど、
>>255 さんの言う本がそうゆうのみたいですね。
本屋で見たことなかったけど、探して見ます。
>>264 EuroPythonってなに?
おしえろ。
>>247 実証の話をききたいのですが?
実証の話をききたいのですが?
実証の話をききたいのですが?
実証の話をききたいのですが?
実証の話をききたいのですが?
実証の話をききたいのですが?
実証の話をききたいのですが?
実証の話をききたいのですが?
実証の話をききたいのですが?
実証の話をききたいのですが?
実証の話をききたいのですが?
実証の話をききたいのですが?
>269
それ、最近見つけて読んでみたけど、
いきなりodbchelper.pyとかいうプログラムを作るところからはじまったりして、
ほんとにDive Intoなかんじ。
Pythonにいきなりどっぷり浸かれるよ。
しかもGnu Documentライセンスだから、翻訳も再配布も自由。
ステキだ。
>>273 本当に実証の話を聞きたいのか?
単に実証って言いたいだけやろ?
只今 dive 中〜
今晩も dive
diveしたまま二度とあがってくるなよ
糞スレ乱立荒し野郎が。
PyQt ってどうやって入れるの?
Zope 最高!
糞スレ乱立最高!
おいおまいら freevo はやめとけ。死ねる。入れた奴は少し神。
ここはラベルの高いスレですね
チャーチャラララララチャッチャララー
あと 3ヶ月は DiveintoPython
289 :
名人:04/10/15 13:12:37
会社の掲示板で、ruby使いを2ch風に軽く煽って見たら、たしなめられた。
pythonは言語仕様が悪く、ライブラリもムチャクチャでしかもパクリばかり
はっきりいってゴミ言語
こんな言語に熱くなっているお前らはキモブタw
とか返してくれればいいのに。
プライドだけは高い連中がそんなことするはずない。
>>289 おまえキモイ。
たしなめてくれた人のほうがよっぽどまとも。
>>292 キモいとか、そんなことは言われなくてもわかってる。
軽い冗談のつもりだったのに、ある意味威圧的な
たしなめかたをされたから不満だったんだよ。
いまさらrubyを知って衝撃を受けて、
「perlやjavaじゃなくてrubyが良い」みたいな事
かかれたら、漏れは黙ってられ無いんだ。
本当はpythonだけじゃなくて、いろろいいたいことあったけど、
主題から外れたから止めた。
漏れはDQNなんで、javaのプロジェクトのリポジトリに
平気でpythonのスクリプト置く。ほとんどテスト用だけどな。
ネットワーク関係の管理ツールもpythonで書いてる。
>>294 ruby の方がキモいので放置すれば良かろう。
> ある意味威圧的なたしなめかたをされた
> 「perlやjavaじゃなくてrubyが良い」
言葉を弄して必死に地位を護ることしかできないのだよ。仕様が駄目だから。
289は廃人レベルだな
python使いは基地外だらけ。
Diveしてる?
>>295 289よりもキモイ
こんな奴ばかりなのね。
してるよ
289 はただの釣り。
>>295 言葉を弄して他者を貶めることによってしか自分のアイデンティティを保てないんだね。
303 :
def R(self)::04/10/16 15:05:38
'''Python系スレを重複を言うのなら、他の言語にはもっと重複しているところがあると思うのだけど、そっちには「重複だ、削除以来を」とか書き込まれないのだろうか?
私はもはや、Pyhtonのぬるま湯ぬどっぷりなので、あえて観に行かないけど。
同じ言語の3つスレが用途別にあって、使い分けが出来無いと言う人はなにか?アインシュタイン気どり?体用と洗顔用のセッケンが使い分けられないとか言うの?'''
'''passって書こうと思ってたのに忘れた、、、'''
pass
洗濯用セッケンって今でも手に入るのかな・・・
>>303 どマイナーな言語が偉そうなこと言ってるんじゃねえよ。
Pythonに他の言語並みの権利なんかねえよ。
糞言語な上に糞ユーザばかりだな。
ほう、言語に権利があるとは初耳ですな
>>303 他の言語とは何ですか?C/C++とJavaの事ですか?
まさかPythonごときがCと同列と思ってるんですか?
そうです、schemeです。
クソスレあげんじゃねーよ。
おそらく Python は主要ディストリに標準状態でインスコされるものだと思われ
redhatが単発GUIツール用に使い始めたんだっけか。
そんでgentooのportageとか。
gentoo の porttage は freebsd の ports
fake installer が Python
言語という意味では
禿げしくBSD make依存なports/pkgsrcと
禿げしくbash依存なportageを同列に扱うのはもはや
まさかPythonごときがCと同列と思ってるんですか?
まさかPythonごときがCと同列と思ってるんですか?
まさかPythonごときがCと同列と思ってるんですか?
>>303 おまえらのような低俗な言語のユーザには3つもスレを使い分けられるわけ
ねえだろ。
しつこいなぁ.
別にPythonが嫌いな人が来て,「○○な仕様がダサすぎ」とか
書き込んでくれても構わない(むしろ個人的には歓迎)から,もっと
建設的な話を汁.
selfダサすぎ
selfいいよね。
これがあるおかげで、インスタンス変数とローカル変数との
名前の衝突を気にせずにすむ。C++やJavaのように衝突するときだけthis使うとか、
Rubyのようにヘンテコな記号を使うとか、そういうダサいことしないのが好き。
それから、オブジェクトを引数としてとるふつうの関数をメソッドに
昇格? させるときも役立つ。最初はどの関数がメソッドになるほど
一般性のあるものかよくわからないんで、在野の関数とまぜて使っているわけよ。
だけど、ある程度使ってると、クラスに与える意味論が自分の中で
はっきりしてくる。そのときに「ああ、この関数はメソッドにする価値がある」
というわけで、インデントしてクラス定義の中に移動するわけだが、
self を使っていると、もともとの関数の思想? を保ったまま、
それがメソッドになる、と考えることができる。プロトタイピングの醍醐味だね。
>>316 なに勝手なこと言ってるんだ?
おまえらに建設的な話をする権利なんかこれっぽっちもねえよ。
>>318 他の言語の陰口しか言えないんだね。
キモイよおめえら。
self と書かずに s で済ませているのは邪道だろうか。
selfはダサいっしょ。メソッドの定義でselfつけるのに
呼び出す時はいらないなんておかしいっしょ。
static, this よりも直感的でよいと思うが。
>>324 むきになるなよ。みっともない。
なんだかんだ理由をつけたって、ダサいものはダサいんだよ。
すげー不恰好な仕様だ。
何もない所から this が出てくるのが、まっとうなのか?
識別子に日本語が使えるなら self なんて書かないで 俺 って書くのに。
Python のここだけが不満だ。
他の言語で重複スレがあるからって、Pythonも重複スレを立てて
いいって言い張るんだもんなあ。
どういう神経しているんだか。
恥を知れよ。
>327
そんなあなたにはMeが使えるVBを(ry
メソッドを定義するときにはselfを書いて、呼び出す時には
selfを付けないなんて矛盾は直感的じゃないね。
Pythonのメソッド定義を見るといつもSigC++を思い出す
>>330 Python厨はそんな自明なことすらわからないほどの馬鹿なのか、
わかっているのに絶対にそれを認めたくないのか。
どっちにしろ痛いね。
>>327 べつに self じゃなくてもいいんで、俺はむかし Python 習いたてのころは
me って書いてたよ。今じゃもうやめたけど。
>>322 >>330 致命的にわかってないね。
self は仮引数でしょうに。
obj.method(arg1)
^^^
実引数はここにあるよ。
漏れもselfじゃなくてsな人。
記号(@@とか)でやるより、selfの方が見通しが良いと思うんだけど。
Pythonは関数でも何でも、名前空間に置けるから好き。
変数名にinが使いたい。in/outの組が作れん。
r/wにしてるけど。
俺は is も使いたいぞ。
>>333 ぜんぜん釣れていないね。
必死に荒しをスルーしている感が笑えるよこのスレ。
洗濯用セッケンは滋賀へいけば売っている、という話を小学校のときされたが
今でもそうなのかしらん。
Pythonのインデントって不恰好ですね。
しかもそれを必死になって正当化しようとしているのが笑える。
まったくひどい糞言語だ。
荒れるということはそれだけ厨房にも衝撃的な言語なのだろうと楽観視している。
これがRubyのようなキモヲタ言語だとそうはいかない。そもそも興味ないから粘着もご遠慮だそうだ。
尤も、某言語厨からの煽りが真実だとしてもそいつはたいしたことないのだろう。
>>335 こういうレスをみると、Pythonこそがキングオブキモヲタ言語だなあと思う。
Pythonごとき低級の糞言語が
他の言語並みにスレをいくつも立ててよいと思っているのか?
いいかげん、このスレをあきらめて他へいけよ。
>>335 俺もin/out使いたいw
ins(input stream)とか,inf(input file)とか,激しく誤解を招く変数名しか
思い付かなくて困ってたけど,r/wは悪くないね.もらった.
feed と dump はだめなのかなぁ...
変数名に in すら使えないなんてアフォな言語ですね。
346 :
デフォルトの名無しさん:04/10/17 14:41:00
粘 着 必 死 だ な
Python!
それはKing of キモヲタ言語!
今日も Dive
すんません。Python の >>> の履歴はどのファイルに格納されているのでしょうか?
シェルの履歴には残っていません。
どのスレにも荒しは出るものだが、Pythonはたいして普及していないのに
荒しの粘着度が異常に高くないか?よほどうらみをかっているのか。
>>349 1. インタプリタを再起動してもちゃんと前のセッションの
ヒストリが残っている: -> 管理者が $(pythonlib)/site.py に設定しているはず
(.history または .pyhistory がよく使われる)
2. インタプリタを再起動するとヒストリが消える: ファイルには格納していない
>>350 Python厨ほど、他の言語の悪口を影でネチネチという奴らはいないよね。
そりゃ嫌われるはずだよ。
_____
/∧_∧ \
./ < ・∀・)、 `、
/ /\ \つ つ、ヽ
| | ,\ \ ノ | |
ヽヽ レ \ \フ / /
\[お触り禁止]' /
ヽ、 ____,, /
||
||
>>344 変数名に動詞って気持悪くない? まぁr/wだって動詞だけどさ.
しっかし、Python厨ってのは馬鹿なくせに見栄っ張りなんだな。
必死になって荒しを無視しようとしているのがみえみえなんだけど、
このスレに書き込むこと自体が荒しを煽っているってことに何で気が
つかないんだ?このスレを捨てて、たぷるタソスレを使えばすむだけの
話なのに、意地になってこのスレを使い続けるのは、面子とか見栄とか
にこだわっているからなんだろうな。馬鹿丸出し。
今日は Dive はしないで代わりに Zope で CoreBlog(*´ω`*)
diveするってどういうのを指すんだよ
>>359 cat data.txt | python myscript.py
>>206 だからrubikitchだけは
本当に勘弁してください
このスレの本当のスレタイは
【釣りの】Pythonでお勉強 Part6【仕方を】
なのでしょうか
Python
\ │ /
/ ̄\ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
─( ゚ ∀ ゚ )< くっちゃらはぴはぴ!
\_/ \_________
/ │ \
∩ ∧ ∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\∩ ∧ ∧ \( ゚∀゚)< くっちゃらはぴはぴ!
Py厨〜〜〜〜! >( ゚∀゚ )/ | / \__________
________/ | 〈 | |
/ /\_」 / /\」  ̄ / /
マゾなあらしがいますね
幸せな荒らしともいう
>>368 現在、Pythonのスレッドは同時に四つ存在していますね。
ここはスレ乱立荒しがたてたスレだから他へ移れ。
なんでいまさらこのスレを使う?やっぱりPy厨ってキモイんだな。
>>368 スレッドも所詮はタイムスライスで実現してるから。
OS から見た場合、スレッドは他のスレッドへ切り替えられる状況にならないと
切り替えることはない。
time.sleep() を挿入することによって OS のスケジューラに対し、
「この契機で他のスレッドへ切り替えてもいいよ」ということを教えてあげるのだ。
>>370 Python のスレッドはカーネルスレッドにマッピングされていないのでしょうか?
何れにしても、マルチプロセッサシステムで並列度を上げられる感じでは無さそうですね。
残念・・・。
>>371 thread, threadingモジュールはOSネイティブのスレッドを使うはず.
(カーネルスレッドかはOSに依存すると思うけど)
名前はミス.352じゃないです….
粘 着 必 死 だ な
>375
あの、他のスレからそうやって誘導されてここに来たんですが……
>>372 レスどうもありがとうございます。
スケールしないならユーザモードのスレッド(所謂グリーンスレッド)を使った方が
効率良さそうな気がしますが、そこら辺は自分で調べてみます。
>>377 なぜその結論になる?
マルチスレッドプログラミングの経験がないと見た。
python のスレッドはちゃんと使えば SMP で並列度は向上するよ。
OS がまともな実装してれば。
マルチスレッドプログラミングは「ちゃんとスレッドを使う」やり方をしないといかんぞ。
OS が勝手にスレッドを切り替えてよろしくやってくれるようなものではない。
ちなみにどんな処理がしたいんだ?
シングルプロセスで済むような処理ならグリーンスレッドはかえって処理は悪くなる。
(スレッドのオーバーヘッドがあるから)
>>378 >python のスレッドはちゃんと使えば SMP で並列度は向上するよ。
>A global interpreter lock (GIL) is used internally to ensure that only one thread
> runs in the Python VM at a time.
と書いてあるので、parallel であっても concrrent にするのは難しいと思ったのですが、
もし宜しかったらサンプルコード頂けないでしょうか。
>>376 住人がスレを乱立した挙句に使い分けられていない証拠だ。
板にとっても、スレ乱立しているPy厨どもはすげー迷惑な存在。
ほんとにウザイ。
ひろゆきに言えよ
自治厨はカエレ!(・∀・)
ひろゆきにいったところで、Py厨らがスレ乱立するのを
やめさせなければなんともならないべ。
宴会場から記念カキコ
>379
メーリングリストに以前スレッド使ったサンプルコードが投稿されたような
記憶がある。
Py厨もカエレ!(・∀・)
>384
何をやっとるんだ何をw
宴会終了。
岩田さんはいい人だ。
もしかしてZope.jpの宴会?
>>389 PyJUG 秋の大宴会
大宴会といっても6人しか居なかったがな。
PyJUG立ち上げ時のは結構多かった。
>>391 それは漏れが参画してないからだよ。こんごもするきないけどね。
自分でやる
>>391 けっこう盛り上がったな。ズボン脱いでパンツ脱いでいる人もいたし。
うげ。
キモすぎ。
自演乙
>>391 たった6人で大宴会かよ。
さすがは超マイナー言語。
未来はないね。
Pythonの未来は日本人にかかっているそうです
>>397 じゃあ終わったな。あと数年で日本は国家破産だし。
本気でそんなこと信じてる人いるんだ・・・
日本が破産なら世界中の残りの国も大半が
破産してるよ
日本は50年前からずっと米国の植民地ですので「国家破産」は未来永劫ありません。
そもそも独立国家ではありませんので悪しからず。
>400
選挙権ないけどなorz
あったらなんとなくケリーに一票な気分。気分なんで深い理由はなし。
実は日本国の選挙権も持ってないチョソの戯言。
ケリーに勝って欲しいのも納得。
なんか携帯いじってると思ったら、ここに書き込んでたのか。
>>385 で、そのサンプルコードってスケールする代物なの?
Python厨が井戸に毒を投げ込んだらしいぞ。
そ れ で 地 震 か よ
407 :
デフォルトの名無しさん:04/10/23 23:37:42
>>41,42,43
の補完を試してみたんですが普通のタブ入力になってしまいます。
環境は
Python 2.3.4 (#1, Jun 13 2004, 11:21:03)
[GCC 3.3.1 (cygming special)] on cygwin
設定したのは.pythonrc,
$touch $HOME/.pythonhistory
# del rlcompleter, readline
を
del rlcompleter
に変更、です。なにが足りないんでしょうか。
あとsite.pyを変更して履歴をファイルに残すってのはどうやるんでしょう?
408 :
407:04/10/23 23:41:49
追記
HISTORYFILE="/home/yusuke/.pythonhistory"
は自分の環境に合せました。
411 :
407:04/10/24 02:36:54
>>408 本スレ誘導 はマジですか?あっち4と書いてあるし、カウント11だし、スレいっぱいあるし…。
盛り上がるまで新参者は迂闊に書き込みできん雰囲気だ…。
>>410 ありがとうございます。逝ってきまーす。
新潟県中越地震には笑った
関西オープンソースにPythonの発表はなかったね。
zopeはあったみたいだけど。
誰の?
鈴木ムネオ
418 :
デフォルトの名無しさん:04/10/27 02:03:49
つまらん!おまえの話はつまらん!
419 :
デフォルトの名無しさん:04/10/30 10:08:09
win32all 使って Windows アプリケーションを作ろうとしています。
まずウィンドウを作成して、メッセージを受け取れているかどうか確認していました。
すると、他のメッセージは正常に受け取れるのですが、
WM_CREATE だけが何故か受け取れません。
WM_CREATE を受け取るにはどうすればよいのでしょうか。
↑何かこの文章を読んだ時、ダニとかウジ虫を想像した。
↑何かこの文章を読んだ時、ダニとかウジ虫を想像した。
422 :
デフォルトの名無しさん:04/10/31 22:40:28
imaplibを用いてメール送信でデータベースにアクセスして更新しようと思っています。
そこまでは実装してみたのですが、更新に利用したメールは削除したいのですが、imaplibのdeleteメソッドってメールボックス自体を削除するみたいな説明があってちょっと違うように思うのですが、どういうふうにやればよろしいでしょうか。
↑何かこの文章を読んだ時、ギョウチュウとか回虫を想像した。
↑何かこの文章を読んだ時、ギョウチュウとか回虫を想像した。
426 :
デフォルトの名無しさん:04/11/02 08:47:40
>> 425
ぢつはソース見たんだけどちっともわからんかった。
いいヒントを与えてもらったんで再度チャレンジします。
ありがとうございますた。
↑何かこの文章を読んだ時、ムカデとかゴキブリを想像した。
↑何かこの文章を読んだ時、ムカデとかゴキブリを想像した。
whrandom以外の乱数生成モジュールないでしょうか?
数値計算に使うわけでもないので精度に関して拘りはないんだけど、
標準のが生成する系列がちょっと好きじゃないので。
random
同じじゃん
↑何かこの文章を読んだ時、厨とかDQNを想像した。
ほぉ〜君もコードが理解できるのかね?
>>> s = '101'
>>> func(s)
5
ってどうやったらできる?
def func(arg):
5
439 :
デフォルトの名無しさん:04/11/04 17:07:00
pythonってなにがいいの?
>>439 名前がかっこいいだろ。
なんといってもヘビだぜ。
\ │ /
/ ̄\ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
─( ゚ ∀ ゚ )< くっちゃらはぴはぴ!
\_/ \_________
/ │ \
∩ ∧ ∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\∩ ∧ ∧ \( ゚∀゚)< くっちゃらはぴはぴ!
Py厨〜〜〜〜! >( ゚∀゚ )/ | / \__________
________/ | 〈 | |
/ /\_」 / /\」  ̄ / /
>>439 まったく何もとりえがありません。
あらゆることに中途半端。
作者もユーザも他者を貶めてしか自分の優位を語れない
人間のくずだし、存在自体が恥ずかしいので芯でください。
また変なのが来た・・・
>>446 このスレが変だから変なのが引き寄せられるんだろ。
指定URL内(HTMLソース)を検索するにはどうするんですか?
ローカルならopenとreadで出来ましたが、ウェブ上は出来ませんでした。
誰か教えて下さい。お願いします。
じゃあopenとreadではどうやったのかと。
僕が初めて一人で美容室に行ったときのこと。中学までおじちゃんが切ってくれる
床屋で済ませていたので、女性が切る美容室に行くのはかなり恥ずかしかった。
それまでに一回行ったことがあるのだが、床屋のおじちゃんはずっと始終無言で接してくれて
楽〜な姿勢で切ってもらえるが、美容室の女性となるとこれはもうペチャクチャお喋りが止まない
ぐらい話題を振ってくる。何を話せばいいのか分からず、母と行ったときずっと凍ったように
カチンコチンのまま「はい、そ、そうですよね(引き攣った笑い)」の繰り返しで済ませていた。
それ以来もう美容室なんて行くもんかと決めた。
だけど悲劇は訪れた。ある日母親から変態みたいに髪が伸びてるから散髪行ってきなさいと言われ、3000円渡された。
3000円を握り締め、自転車でだるそうにウィリーしながらいつもの床屋に向かった。だがいつもの床屋は2週間前ぐらいに
潰れていたのを思い出し、あと近くにはあの恐ろしい美容室しかないことに気付いた。むぅ、どうするか。当時「美味しんぼ」の
海原雄山に憧れていたのであのどっしりとした腕を組んだポーズをとりながら「うーむ」と声に出して考えた。
傍から見たらただの馬鹿である。
うむ、もう高校生なんだし、僕は大人だ。よし、美容室ぐらい行くか!と覚悟を決め、あの女性ばかりいるハーレムの場所へ向かった。
15分ほどで着き、ドキドキしながら店に入った。すると店員はすぐに反応し、「いらっしゃいませー」と
とびっきりの笑顔で対応する。僕は恥ずかしがってクールを気取ろうとカッ、と足を前方に出し、
モデルみたいなことを無意識にしてしまった。それに自分が気付くと、うわ、何やってんだ俺、と顔が
恥ずかしさでかーっと火照り始め、足を引っ込める。ドアの前でまごまごしていると美容室のお姉さんが
こちらへやってきた。「今日はカットでよろしいですかー?」またカッ、と足が出てしまった。引っ込める。
また足が出る。この時も海原雄山の真似で腕を組んでいたので、その様子はさながら直立したままのコサックダンスのようだった。
恥ずかしくて顔面が鬱血し、破裂するかと思った。美容室のお姉さんはビクビクしてる僕を見て笑い、
「じゃあ、こちらへどうぞー」と僕を案内した。必死に僕は冷静なんだ、と相手に悟らせるため、あの海原を
思い出し、「うむ。」と答えた。ロボコップみたいな歩き方で散髪する椅子へ緊張した面持ちで向かった。
やはりここは冷静であることを見せるため豪快に座らなければならない。
どかっ、と首が45度曲がったままイカれた社長みたいな座り方をすると、ぷっ、と美容室のお姉さんは噴出した。
「そんな、こちこちにならなくてもいいよ」
「はむ(笑)」と僕は答えた。「うむ」と「はい」が混ざったのだ。ますます恥ずかしい。どうにかして平静を
取り戻さなければ。
「今日はカットでいいかなー?」
むっ! なんてことだ、急にタメ口になりやがって、このメス豚! 僕を見下し始めやがった!なれなれしい口調に
いささか腹を立てた。僕は威厳を見せるためますます海原雄山のポーズを取り始めた。ぶっきらぼうに
「あぁ、カットでお願いしたい」
自分で書いてても恥ずかしい台詞を吐いた。店員はすかさず聞いてきた。「今日はどんな風にする?」
「眉毛が隠れるぐらいで、あとは適当に」
「横は髪が隠れるぐらい?」
「ん、まあはい」
「後ろはどれくらい?」
「えーと、お任せします」
いちいち注文の多い床屋だな。イライラしてると、やっと髪を切り始めてくれた。
が、緊張していたせいか、突然凄くおしっこがしたくなった。5分ぐらいするともはや我慢出来なくなり、
くねくね椅子の上でタコのように体をうねり始めた。店員はその異常な動きに気付き、「どうしたの?」と聞いてきた。
> お姉さんは噴出した。
> お姉さんは噴出した。
> お姉さんは噴出した。
質問させてください。
指定ウェブページを開き、
ソース内からjpegファイルのアドレスを抽出し、
そしてそれをダウンロードする。
どうすれば可能でしょうか?
>455
その通りに書いたらいいだけでないの?
ちなみに、クッキーやらリファラやらAccept-Languageが絡んでくると
マンドクセから、素直にIrvine使うのも手だよ。
(だがここでこの僕ともあろうものが女性の前で厠に行きたいなど言語道断! 絶対に我慢しなければならない!)
こんなわけわからん決意を固め、「いえ、大丈夫です」と女性店員に散髪を続行させた。この女性店員は
切羽詰まった表情をしている僕に話しかけにくかったらしく、あまり話題を振ってこなかった。
我慢し続けて20分後、洗髪に入った。「はい、洗いますよー」と仰向けにされ、顔にガーゼを被されて視界が閉ざされる。
仰向けにすると膀胱を刺激し、もうこの場で「シュボーーーーーーーーーー!!」と音を立てて失禁するとどんなに楽なの
であろうか? などと放尿シーンを想像すると、本当に出そうになった。出る。出らん。出る。もう出る。出ちゃう。漏れる。
「出る」「出る」「出る」「出る」「出る」「出る」と脳がしきりに警告を出し始めた。もう終わりだーーー!!!と心の中で叫び、
観念してトイレに行かせて貰うよう店員に頼むことにした。
「ひょいれ…」
「えっ?」
「ひょいれ行かしぇてくらさい・・・」
「あれ、さっきから我慢してたの!?」
「ひゃい・・・」
情け無い声で、もう海原雄山もクソも無い光景だった。シャンプーで泡だった頭のまま立ち上がると店員さんはタオルで
泡立ったまま頭を拭いてくれて、首にタオルを巻きつけたままトイレへよろよろしながら行った。
会計時。店員は「うふふふ」と笑っていた。金を払い、どうも、と一礼すると「ありがとうございました」のあとにまた「うふふふふ」と笑った。
ひひ!と僕は笑い返した
期待してたのにつまらんオチだった...orz
読んでる奴、いるのな。
私のいちばん幼き日の記憶はあるマンションに連れて行かれて
叔父さんとそこにいる数人の大人に性器を撫でられたこと。
目隠しをされ、写真を撮され、髪を掴まれ、フェラチオしたこと。
いつも思い出すのは14歳までほぼ毎日続いたそのこと。
私の過去はいつも哀しいよ。いつもどこか不自由で、いつもどこか苦しくて、
いつもどこかおそろしくて、作り笑いと嘘と駆け引きがなければ生きていけなかったんだよ。
教室に居てもクラスメイトの笑い声が雑音だった。
私の笑い声は棒読みだったかもしれない。無理してたから。
普通のフリしてるので精一杯だったから。 ずっとずっと「何がそんなに面白くて笑ってるんだ?
何考えて生きてるんだ?」って大きな声で言ってせせら笑いたかった。
今でもその感覚は続いてて、楽しそうに笑う小学生や中学生とすれ違う度、
薄気味悪く感じて鳥肌が立ってしまう。
こんな不確かな体つきでコドモの匂いを滲ませたまま私は、男と、女と、セックス擬きのことをしていたんだなぁ、
と寒気がする。
↑のシチュがけっこうツボなんですが、それはそれとしてPythonの事を書いてもよろしいか。
どうぞ
おれはどうてい
どうていもおとこ
おう くりすますだぜ
おれは うつだぜ
あまり ちかよるな
おれの こころも なにも
かさかさするほど
ひからびてるぜ
おう つらいぜ
おれは まけないぜ
もえる あにめをみて
なにを しごく すがた
はきけがするほど
きもちわるいぜ
SQLObjectでUnicode文字列を使用する方法、どこかにまとまってませんか?
うちの嫁は切れると食器を床でたたき割ります。
顔を紅潮させ、息づかいも荒くなります。
怖いので、やりたいようにやらせておくと
1時間ほどで通常に戻ります。
この周期が3日に1度くらいでやってきます。
これって心の病気なんじゃ?
setdefaultencoding("utf-8")をsitecustomize.pyに書くしかない理由がわからねええええ
たかがdefault encodingのくせに、site globalでしか設定できないなんて副作用でかすぎるじゃねえか。
470 :
m9っ・∀・):04/11/16 14:05:20
仮に site global でなかったとしたらどのように使う?
> m9っ・∀・) <>
どうでもいいけどおまえちゃんと仕事しろよな。関係者より
default encodingってencoding指定を省略してunicode(str)したときとか、
あとstringをencode()したときとかに暗黙に使われるだろ?
特に海外のライブラリは暗黙の変換に依存してるから、デフォルトのasciiのままだと不便なんだが
でも文字エンコーディングってのはサイトじゃなくて、データに依存するもんだろ?
おまいらおなじみのエキサイト翻訳で「まじっすか」と日英訳してみろ
いつも通り彼に「マンション(彼の)行きたい」って行ったら、「勘弁して。」って言われた。
無言のままその日は別れて、後日部屋に行ったら、二股だったらしく、他の女の化粧品があった。
とりあえず、化粧水の中身をすべてサラダ油に入れ替えて、乳液はガソリンに入れ替えた。
その後、もう一人の女とはちゃんと縁を切ってくれた。
475 :
m9っ・∀・):04/11/16 16:43:34
>>471 職場で2ちゃんブラウザ使ってる貴様に言われたくないぞ?
>>472 > でも文字エンコーディングってのはサイトじゃなくて、データに依存するもんだろ?
そだよね。だからエンコーディングはデータに合わせて陽に指定すべきなんだよ。
デフォルトエンコーディングに依存したプログラムを書くと可搬性が損なわれる。
> 特に海外のライブラリは暗黙の変換に依存してる
ってのは可搬性が損なわれている例でしょう。(つか何そのライブラリ?晒せ晒せー)
ぶっちゃけデフォルトエンコーディングが有意義に使えるのは対話モードだけだと思われ。
クサイタマの由来 〜埼玉が臭い玉と云われるようになったワケ〜
戦中戦後にかけて(昭和三十年頃まで)西武鉄道と東武鉄道は糞尿運搬列車を走らせていた。
東京都民の糞尿を埼玉県の農村地に運ぶためだ。埼玉の百姓は肥料として競い合って求めた。
当時の人々は、この糞尿運搬列車を黄金汽車、黄金列車などと呼んだ。
また糞尿を積むコンテナが粗末な木製であったため、途中でもれてしまい、沿線は糞尿臭が漂い
夏場などは悲惨な状態となった。
これらの現象から自然発生的に「臭い」と「埼玉」が混ざり合い、クサイタマと云われるようになった。
なお現在、東京都で排出されるゴミ(廃棄物)の約8割が埼玉県へと運ばれている。
sitecustomize.pyのなかで
カレントやホームにある(例えば)customize.pyを
読むようすればいいのでは?
> つか何そのライブラリ?
quixote-2.0a1がunicodeのサポートを開始したので、日本語が使えるだろうかと思って
あれこれ試してみたんだが、どうもsetdefaultencodingなしではうまくいかないのだ。
文字列のwrapperを使用しているコードがあって、問題を単純化するとこうなる。
#!/usr/local/bin/python
import sys
class Wrapper(object):
__slots__ = ['value']
def __init__(self, value):
self.value = value
def __str__(self):
sys.stderr.write("Wrapper:__str__\n")
return self.value
fmt = u'%s'
arg = u'\u30c6\u30b9\u30c8'
s1 = fmt % arg# OK
argw = Wrapper(u'\u30c6\u30b9\u30c8')
s2 = fmt % argw # error unless sys.setdefaultencoding('utf-8')
2番目の%演算子は、PyObject_Str()つまりWrapperクラスの__str__メソッドを呼出す。
unicode型が返されるから、暗黙のencode()が呼び出されて、defalt encodingの変更
なしではUnicodeEncodeErrorになる。
__unicode__メソッドを実装すればいいのかと思ったが、Python-2.3.4のビルトイン文字列はunicode型のサブクラスかどうかで判定していた。
unicode型のサブクラスとしてwrapperをどう定義すればいいのかは、わからなかった。
479 :
m9っ・∀・):04/11/17 01:19:27
>>478 Wrapper.__str__() が unicode オブジェクトを返すのは単なるバグじゃないかな。
Language Reference(3.3.1節)によると、__str__ メソッドは string オブジェクトを
返さなければならない("must")。
暗黙の encode/decode が起こることを許すのは、文字列の中身が ASCII の範囲内の
文字だけの場合に限るべきだと思うなー。その意味で、デフォルトエンコーディングは
"ascii" にしておくのが無難。
誰か英語の堪能な人、『setdefaultencoding() considered harmful』みたいな文書
書いて Python-Dev ML あたりに投げてー。
そう。unicode型をwrapしているときは、__str__ではなく__unicode__メソッドを受けて、unicodeオブジェクトを返さなければいけない。
しかし現状のビルトイン文字列型のformatは、Unicode型から派生してないものはunicode文字列にあらず、という実装になっている。
実は私Python初学者なので自信ないが、これってPython的にどうよ? と思う。
クラスの継承じゃなくて、実装メソッドの有無で型を判別しなきゃだめじゃん、と。
あ、UserStringモジュールでUnicode文字列を作れるのかな?
Webアプリケーション作ろうとか思っているのですが
クッキーにデータを保存・読み取りってどうやればいいのでしょうか…
以下に補足していただけるとありがたいです<(_ _)>
if form.has_key('okay'):
print "Content-Type: text/html\n"
print "<html><title>hoge</title><body>"
print "hoge"
print "</body></html>"
else:
print "Content-Type: text/html\n"
hoge = Cookie.SimpleCookie()
hoge['test'] = 'mast'
print "<html><title>hoge</title><body>"
print '''
<form action="cook.cgi" method="post">
<input name="okay" type="submit" value="ok">
</form>
'''
print "</body></html>"
>>481 CookieオブジェクトはCookieに特化したコンテナにすぎないので、
HTTPヘッダの出力や取り込みは自前でやる必要がある。
そのためのoutput()やload()メソッドが用意されている。
>>482 まじですか…まずはHTTPの勉強しないとな…;
ありがとうございました。
485 :
デフォルトの名無しさん:04/11/18 00:34:51
〃'´⌒` ヽ これを見た貴方は、童貞を卒業することができるのじゃー
〈((リノ )))i iヽ これをそのまま5分以内に他のスレにコピペすれば、運命の人に出会えるのじゃー
l从・∀・ノ!リ人 貼らなかったり、虐待したりしたら、結婚した相手との間に
⊂)丕⊂))ヽ) 奇形児が生まれるのじゃー。
〈/_|j_ゝ
>485
結婚しなければ無問題なんだ。ならいいや´`,、(´∀`)´`,、
>486
おまえは童貞を卒業したいのかと。
builtin classの継承の仕方がよくわからん。
class Wrapper(unicode):
def __init__(self, value):
print "__init__:", `value`
unicode.__init__(self, u"[%s]" % value)
argw = Wrapper(u'\u30c6\u30b9\u30c8')
print `argw`
結果
__init__: u'\u30c6\u30b9\u30c8'
u'\u30c6\u30b9\u30c8'
これだと、__init__()は通っているのだが、値は変更できていない。
ある焼肉屋で骨付きカルビを頼んだのだが、普通のカルビがきた。
店員が間違えに気づき謝ってきたが、自分は特に気にしなかった。
数分後、その店員がキムチを持ってきてこう言った。
「本当にすみません…。これ、ほんのキムチですが…。」
俺はブチギレた。
結局、現行のPythonでは、文字列のように振舞う非文字列クラスは作れるけど、
unicode文字列のように振舞う非文字列クラスを作るのは困難なので、
暗黙のencode/decodeは避けられず、
ある種のライブラリでunicodeを使うなら、sys.setdefaultencoding("utf-8")せざるを得ない、ということなのかな。
unicode文字列はtemporaryな使用に限定して、原則的にutf-8 encodingなstringで保持すれば、
暗黙のencode/decodeは避けられるのかもしれない。でもどっちみち、asciiのままだとどこかで綻ぶ気がする。
プロセス毎のdefault encodingの指定はこれでいちおうできる(どんなデメリットがあるかはわからない)。
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
次はSQLObjectでの日本語使用の可能性を追求したいと思います。
.,/ _,/ .、、 ...、ヽ,,-、
.,,メ-‐'" _"',| .、、._,i.""│._、
._,,,/`,イ―'' ,`",l゙、、,,ジ'"`.```.|゙゛
.,,,-,i´,―--―''" 、、,!冖'"`、_、,,,/'゚,,."゙l-‐''
_,,,,,,,,,,,,,、 _,,,,,--''"`'",/゙ 、、.',j/′.、,,∠''"` .'_ヽ.',゙l.._,,、
,,-'"゙` `゙゙''lーイ"` .‐′ _,..,,/ .ヽ、,i,i´ ``゙’ 、、シ":"'.「
.,,i´ `'i、\ ゙!, ._,-'"ン'` 、、`_,/`,i´ _,___,ニ='" .'゙、゙".゙l,,-'`
.,/′ `'i,\ ′ .,,,,-',,,,、.,i´、_:_'_v`"゙i、| ```` ` 、_,Jィ""゙l, _,,,,、
: ,i´ ゙l. ヽ丶 .r‐'"、.l゙、、:,p=l┴丶 .!,,! `'"''''''冖''?'''゙~."""'."'/゛ `
: |,,r ゙l, 、 i、、、、:,,_,xl!ヴi,、 、、っ,,,, 、`',,,,、`、`、|、
|、 、"| .i、 lrr-''"゙,,ハ;、-'"゙゙'''''''"丶ヽ.,,冫``~`"`"~"``` `/ `''''
`''r,,、 、 、、 .、丶、.``ヽ,レ"° `` .j゚'=∠、````,,,,,∠ ~'ヽ```````、_,r‐'ヘi、
`゙'ーi,,_、、、、、: :._,,,r〃 " /^゚"'广 ,/ .,/゙゙゙'''ヶ―''''″ `
`゙^""""''"'" ` ′ ′ ."
ぱいそんぱいそん!
492 :
m9っ・∀・):04/11/18 13:02:38
:.,' . : : ; .::i'メ、,_ i.::l ';:.: l '、:.:::! l::! : :'、:i'、: : !, : : : : : :l:.'、: :
'! ,' . : i .;'l;' _,,ニ';、,iソ '; :l ,';.::! i:.! : '、!:';:. :!:. : : : :.; i : :'、:
i:.i、: :。:!.i.:',r'゙,rf"`'iミ,`'' ゙ ';.i `N,_i;i___,,_,'、-';‐l'i'':':':':‐!: i : : '、
i:.!:'、: :.:!l :'゙ i゙:;i{igil};:;l' ヾ! 'i : l',r',テr'‐ミ;‐ミ';i:'i::. : i i i : : :i
:!!゚:i.'、o:'、 ゙、::゙''".::ノ i゙:;:li,__,ノ;:'.、'、 :'i:::. i. !! : : !:
.' :,'. :゙>;::'、⊂‐ニ;;'´ '、';{|llll!: :;ノ ! : !::i. : : : : i :
: :,' /. :iヾ、 ` 、._. ミ;;--‐'´. /.:i;!o: : : :i :
: ; : ,' : : i.: <_ ` ' ' ``'‐⊃./. :,: : : O: i. :
: i ,'. . : :', 、,,_ ,.:': ,r'. : , : : !: : あやまれ!!
:,'/. : : . :;::'、 ゙|llllllllllllF':-.、 ,r';、r': . : :,i. : ;i : : 重複スレに書き込みつづける
i,': : : :.::;.'.:::;`、 |llllH". : : : :`、 ,rシイ...: : ; : :/:i : i:!::i: やつはあやまれ!!
;'. : :..:::;':::::;':::::`.、 |ソ/. : : : : : : ;,! ,/'゙. /.:::: :,:': :./',:!: j:;:i;!;
i. : .:::;:'i::::;':::::::::i::`:.、;゙、';‐ 、,;__;,/ノ . :,/.:::: :/. : :/.:::i. j:;;;;;;;;
l .:::;:'::;':::;':::::::::::i::::i::`:,`'-二'‐-‐''゙_,、-.':゙/.:::: ;ィ': : :/.:::::i: j、;;;;;;;
.:::;:':::;':::;'::::::::::::::i:::i:::::..`'‐、、、-<゙.::::::::/.::: ://. : /.:::::::i :j::.'、:;;;
真・スレッドストッパー。。。( ̄ー ̄)ニヤリッ
まじ?
ここは生きてる
497 :
m9っ・∀・):04/11/18 18:59:32
>>490 > 暗黙のencode/decodeは避けられず、
> ある種のライブラリでunicodeを使うなら、sys.setdefaultencoding("utf-8")せざるを得ない、ということなのかな。
違うと思われ。
極論すれば「暗黙のdecode/encodeは起こるべきではない」んだよ。
正確に言えば、起こってもいいけど、文字列の中身がASCIIの場合のみ、
しかも意図的な場合に限るべき。
例えば、(decode/encodeを担当する)コデックの中で意図しない暗黙の
decode/encodeが起こったとしたら、それは単なるバグでしょう。しかし、
この手の(バグとしての)暗黙のdecode/encodeは実際よく起こる。暗黙の
decode/encodeというのはcoarsion(強制型変換)の一種で、string型から
unicode型へのcoarsion、整数から実数へのcoarsionなどは事実便利なので
頼ってしまいがち、という要因もある。
結局のところ、意図しない暗黙のdecode/encodeが起こらないようにする
のは難しいってことなんだと思う。string型からunicode型へのcoarsionは
諸刃の剣だと言える。
その点で sys.setdefaultencoding() は問題をややこしくしてる。
"ascii" 以外の設定(例えば "utf-8")にすると、意図しない暗黙の
decode/encodeが起こっていることに気づきにくい。特に、デフォルト
エンコーディング=プログラムの内部コードの場合、バグとしての暗黙の
decode/encodeに気づかない可能性が高い。一方、"ascii" にしておくと
バグが表面化しやすい。
sys.setdefaultencoding() はその場しのぎにはいいかもしれないけど
頼らずに済ませるに越したことはない。その意味で、site global にしか
設定できないようになっている現状には意味があると思うよ。
理念として、暗黙の変換に頼るべきではない、のはわかるけど、
たとえば
>>478に挙げた、formattingに渡す用の文字列をwrapするclassを定義してるケースでは、
I18nとしてはどう書き変えるといい?
Python-2.3.4のPyUnicode_Format()の%s処理部分を追ってみたんだけど、
__str__を定義すればいいマルチバイト文字列の場合と違って、
unicode文字列を返すメソッドはどうにも呼ばせられないっぽいんだよね。
(unicodeのサブクラスでなければ__str__を呼ぶし、unicodeのサブクラスならメソッドを呼ばずに直接値をコピーしちゃう)
tp_unicode slotも未実装だし、ひょっとしてPythonのI18nは、
sys.setdefaultencoding("utf-8")環境下でstringベースで行う方が自然なんじゃない?
perlみたいに。
そしたらunicode(wide char)とstring(multibyte)間のcoerceも無害。
utf-8以外のencodingの文字列どうしよう、という問題はあるけど。
499 :
m9っ・∀・):04/11/18 20:44:11
unicode型とstring型を混ぜるから具合が悪くなるのであって、
混ぜなければいいんじゃないの? つまり以下のどちらか。
(a)内部では全部unicode型、ファイル入出力などの限られた箇所でのみ
string型との変換を行なう。
(b)内部は全部string型(例えばUTF-8)にして、入出力時の文字コード
変換にのみ一時的にunicode型を使う。
ここで「内部」というのは、典型的にはプログラム全体。プログラムは
(a)の方針だが、あるクラスの「内部」は(b)の方針という折衷も可。
しかし、内部表現としてunicode型でもstring型でも使えます、という
プログラムなりクラスというのはぶっちゃけ非現実的。
>>478のWrapper
クラスはそういう無茶をやってる。
要するにこういうこと。
混 ぜ る な 危 険
いやーCookieてNetscapeが作ったんですね。栄枯盛衰。
調べてて色々勉強になりますた。
if form.has_key('okay'):
print "Content-Type: text/html"
print
print "<html><title>hoge</title><body>"
hoge = Cookie.SimpleCookie()
hoge.load(os.environ['HTTP_COOKIE'])
print hoge['test'].value
print "</body></html>"
else:
hoge = Cookie.SimpleCookie()
hoge['test'] = 'hohoge'
hoge['test']['expires'] = Cookie._getdate(60*60)
print "Content-Type: text/html"
print hoge.output()
print '''
<html><title>hoge</title><body>
<form action="cook.cgi" method="post">
<input name="okay" type="submit" value="ok">
</form>
</body></html>
'''
501 :
m9っ・∀・):04/11/18 20:55:03
あ、「coarsion」ぢゃなくて coercion だね。失礼しますた。
> m9っ・∀・) <>
仕事しろよ禿げ
503 :
m9っ・∀・):04/11/18 21:03:20
オマエモナー
>>478は、扱う文字列はunicodeで統一してる。
で、%演算子に渡すとbuiltinのunicode型のように振る舞うカスタムクラスを書こうとしているのに、
現状のPythonのformatの実装は__str__しか叩かないので、unicodelオンリーで書けない、というところが問題。
"m9っ" って指差してるのか? なんかヤだな。
507 :
m9っ・∀・):04/11/19 03:08:46
>>504 >
>>478は、扱う文字列はunicodeで統一してる。
quixoteのソースコードもPythonのソースコードも見てないけど
>>478のWrapperクラスをちゃんと書き直すとしたらこーじゃないかな。
import sys
class Wrapper(unicode):
def __new__(cls, s):
obj = unicode.__new__(cls, s)
obj.spam = True
return obj
u = u"\u30c6\u30b9\u30c8"
w = Wrapper(u)
assert w.spam
assert sys.getdefaultencoding() == "ascii"
print u"%s" % u
print u"%s" % w
print w
> 現状のPythonのformatの実装は__str__しか叩かないので、unicodelオンリーで書けない、というところが問題。
unicode型で統一するという前提なら何も問題ないんじゃないの?
>>498さんの調べによると
> unicodeのサブクラスならメソッドを呼ばずに直接値をコピーしちゃう
そーだし。
それだとwrapper objectへの格納時の操作になるけど、
>>478の元のQuixoteのコードは、__str__と__repr__でwrapの仕方が違うから、
取り出し時に値を操作するのが自然なのね。
PyUnicode_Formatが素直に__unicode__を叩いてくれればいいのに…
と思って2.4b2のソース見たら直ってますた。
"What's New in Python 2.4"のどこに書いてあるかは、わからなかった。
Zopeのスレッドって単独であったりするのかな?
それともここでZopeの話題も包括?
511 :
デフォルトの名無しさん:04/11/19 22:01:05
512 :
デフォルトの名無しさん:04/11/20 00:12:40
おまいら、何でRubyにしないの?
馬鹿?
クッキー消去ってどうやるのん?
Cookie._getdate(-60*60)とかで上書きしても消えないっす
>>516 メニュー「インターネット オプション(O)」を開いて「Cookie の削除(I)」
Perlの__END__に相当するものはありませんか?
zipfile の infolist() で得られた CRC を "%08X" で表示しようとすると、値によって
FutureWarning: %u/%o/%x/%X of negative int will return a signed string in Python 2.4 and up
といわれます。
どう対処するのが好ましいのでしょうか。
>>518 消えたヨ。ありがとーノシ
とまぁ冗談はさておき、
単にボディ部分でCookie._getdate(-60*60)を書いてたから消えなかっただけでした。恥。
>>520 zipfile 固有の問題ではなくて,整数値を 16 進表記にするときに,
Python 2.3 までは 32 ビット以下の負の整数は補数表現,それ以上では
前に符号をつけていたのを,Python 2.4 からはどちらも符号付きの
表現に変更するから気をつけてね,という警告です.
例えば "%X" % (-240) は, Python 2.3 では "FFFFFF10" になりますが,
2.4 からは "-F0" になります.
抑制したければ,try:...except FutureWarning: で拾って pass するか,
python -W ignore::FutureWarning で python を起動して FutureWarning
を無視させたらどうでしょう.
関数の仮引数は関数内関数からも普通に参照できるけど、
関数内の変数を関数内関数から参照するにはどうしたら?
双方共にglobalにしちゃうのはチョット。
そも、マイナスのCRC値を返す事自体はどうなんだろ。
>>524 負の CRC を "%X" しているんじゃなくて,2^30<=...<2^32 と負の整数値
全部に対して FutureWarning が出てるだけだと思うよ.
def hex( x, bits=0, upper=False ):
if bits == 0:
if upper: return '0x%X' % x
else: return '0x%x' % x
if upper: fmt = '0x%%0%dX' % ((bits+3)//4)
else: fmt = '0x%%0%dx' % ((bits+3)//4)
if bits == 32: k = 0x100000000
elif bits == 64: k = 0x10000000000000000
elif bits == 16: k = 0x10000
else: k = int( '1'+'0'*bits, 2 )
return fmt % ( (k+x)%k )
こんな感じにならんかな
528 :
デフォルトの名無しさん:04/11/22 10:57:11
諸君 私はPerlが好きだ
諸君 私はPerlが好きだ
諸君 私はPerlが大好きだ
eucjpのファイルをutf-8に変換したいんですがどうやるんですか?
nfkを使えば?
535 :
m9っ・∀・):04/11/23 20:07:32
>>532 python -c 'import sys, codecs; sys.stdout.write(codecs.EncodedFile(sys.stdin, "utf-8", "euc-jp").read())' < input.txt > output.txt
oreilly Japan
初めてのPython 第2版
11月30日発売
752ページ(!!!)
これ買って真剣にPython勉強してみます
>>536 クイックリファレンスと1000円くらいしか変わらないのか…
どっちを買おうかなぁ
>>536 旧いのは464ページだから288ページも増えてるのかぁ
XMLファイルをShift_JISで保存・それを読み込むにはどうすればいいのでしょうか。
xml.dom.minidom.writexml(file,encoding="Shift_JIS")で保存はできるのですが、
それをxml.dom.minidom.parse(file)で読み込もうとすると
ExpatError: unknown encoding: line 1, column 30
などと、Shift_JISなんてシラネーヨと怒られてしまいます。
pythonで書かれたBBSのcgiってないですか?
codecs使ってくれるXMLパーザがあればいいんだけど
ソースを見たら、codecには一応対応しているのだが、マルチバイト文字には対応していないようだ(Modules/pyexpat.c)。
さらにexpatのマルチバイト対応は、Shift_JIS(のような、2バイト目がASCIIと重なっているエンコーディング)を扱えないという二重苦。
てかXMLなんだからutf-8でいいじゃん、と。
548 :
m9っ・∀・):04/11/24 13:54:02
石本さんの SJIS 版 Python に SJIS 対応の expat が入っていた希ガス。
そもそもアプリケーション・ローカルなら pickle した方がいいし、
XML 汎用なら utf-8 と utf-16 しか通用しないし。
何で Shift-JIS なんだろう?
>> m9っ・∀・)
関係者乙
Windows9xのメモ帳で編集可能
>m9っ・∀・)
笑ゥせぇるすまんに見える
PHPしか知らない奴に「なんでPHP使わないんだ」って聞かれたときに
何て答えればいいのか教えてくれ。
555 :
デフォルトの名無しさん:04/11/24 20:30:30
あるC拡張モジュールで,Cによって新しい型を定義している.
別のC拡張モジュールの関数で,その型のデータを直接いじりたくなったので,
上のモジュールのヘッダファイルから
typedef struct {
PyObject_HEAD
hoge h;
...
} HogeObject;
こんなのをコピーして来て,
static PyObject* func(PyObject* self, PyObject* args)
{
HogeObject* obj;
PyArg_ParseTuple(args, "O", &obj);
なんかobj->hを使うコード...
}
と書いた.が,obj->hは正しく取得できなかった.
具体的にはPILのImagingなんだけど,上記のやりかったって何か間違ってる?
うーむやっぱり無理っぽいのですね(環境はLinuxですので)。
単に既存のデータがShift_JISだったのでそのまま読み書きできるなら楽かなぁと。
UTF-8へ移行しつつpickleについても調べてみます。ありがとうございました。
お手前のモジュールの冒頭で Py_InitModule("PIL.Imaging", imagingmethods)
みたいな初期化をやっていないからじゃないかな.
>>556 Shift-JIS "も" 読み書き出来る、じゃなくてShift-JIS 決め打ちでいいのなら
パーサに読み込む前に utf-8 にコンバートしてしまえばいいと思うが?
もちろんエンコード指定の行は削除する必要があるけれども。
うわー,チョンボでした._/ ̄|○
PILは画像ファイルの読み込みをLazyに行うらしく,
何も画像に対して処理を行っていなかったので,
まだメモリ上に読み込まれていなかった….
>>557さん,助言thx&ごめん.
560 :
m9っ・∀・):04/11/25 17:50:38
>>556 558さんに同意。こんな感じで。
# -*- coding: sjis -*-
import xml.dom.minidom, codecs
text = u'<?xml version="1.0" ?>\n<doc>SJISでウハウハ</doc>'
tree = xml.dom.minidom.parseString(text.encode("utf-8"))
# ファイルに書くとき: Unicode → SJIS 変換
file = open("test.xml", "w")
Writer = codecs.getwriter("sjis")
tree.writexml(Writer(file))
file.close()
assert open("test.xml").read() == text.encode("sjis")
# ファイルから読むとき: SJIS → UTF-8 変換
file = open("test.xml")
tree = xml.dom.minidom.parse(codecs.EncodedFile(file, "utf-8", "sjis"))
assert text == tree.toxml()
pythonってperlより速い?
社会人になってうんこ漏らしたことある
朝から腹の調子悪くて、昼頃ピークになって会社でするの嫌だから家まで帰って
トイレのドアの前まで行って気が緩んだと同時に尻の穴も緩んだ…プリっと…
去年の21の秋の事ですた。あ、女です。スマソ
ググり方がぬるいのかも知れないけどEric3のチュートリアルみたいなモノの
所在をご存知の方がいらしたらポインタを教えていただきたく。
目的はPythonの勉強用なのでC/C++/Java/HTML/SQLとかの扱いは当面のところ
どうでもいいです。しかし、MacOSX用のEric3入れたんですが・・・マスコット(?)が
リアル過ぎて気持ち悪いのは私だけなのかしら。
>>556,560
ありがとうございます!具体的なコードまで示していただいて…
労力は最小限で済みそうです、感謝(*´∀`人
>>565 ありがとうございます。参考にさせていただきます。
あのマスコット可愛いですか・・・むぅ〜ん。鼻が何度見ても性器に見えるのです orz
>>569 グロ画像.精神的有害('A`).見るな
たしかにきもいな
C拡張モジュール書くのめんどくせぇぇぇぇぇx!!!!!
なんか補助ツールとかあるのかな?
とりあえずboost.pythonあたり当たってみるか….
pyrexはいいね。
575 :
デフォルトの名無しさん:04/11/26 23:38:19
PyRexは、Python風に書いたコードをCに変換するプリプロセッサ、という理解でいいの?
UML のツールって、フリーでないと使う気しないー。
2.4.1まではdistutilsがMSのフリーコンパイラを自動認識しない予感...
580 :
m9っ・∀・):04/11/27 21:57:41
アンテナを勉強したいので、Python で書かれたアンテナソフトを探しています。
Rubyにはsamidareというのを見つけました。Python では何がおすすめですか?
RSSじゃなくてアンテナ書くようなのは日本人だけだろうね。
Pythonユーザーでそんなことしたがる人は見かけない気がする。
584 :
m9っ・∀・):04/11/28 16:05:17
アンテナ、Python で自作したよ。ヘヴォヘヴォだった上に、もう使ってないけど。
難しく考えずに htmllib あたりで作ってみりゃいーんじゃね?
入力ファイルを XML にしてセンス間隔なんかを URL 毎に詳細に設定できるようにしたり、
アンテナ本体を cron で呼ぶ代わりにデーモンとして常駐させるようにしたり、
どーせ自分しか見ねーのに出力レイアウトにやたら凝ってみたりと
いろいろ遊びがいがあるネタだよ。
585 :
m9っ・∀・):04/11/28 16:08:03
× htmllib あたりで
○ httplib あたりで
失礼。
いいかげん人を指差すのはやめれ
>>582 - 585
アンテナは日本人だけ、という意見はそうかもね。
ちょっとトライしてみます。どーも!
m9っ・∀・)ドーン!
にア・∀・;)
ξ・∀・)めるぽ
次の火曜日あたりに2.4-finalが出そうですよ!
>>591 いまはエラーが発生するけど、下のようにすれば動きました。
なんとかなりそうです。
site.last_modified = rfc822.mktime_tz((2004, 11, 19, 19, 37, 21, 1, 1, 1, 1))
取り急ぎ。情報ありがとう。
==============================
Traceback (most recent call last):
File "./pyanok.py", line 40, in ?
site.last_modified = rfc822.mktime_tz(rfc822.parsedate_tz(lm))
File "/usr/lib/python2.3/rfc822.py", line 948, in mktime_tz
if data[9] is None:
TypeError: unsubscriptable object
595 :
m9っ・∀・):04/11/29 01:51:10
>>594 オリジナルのソースもらってきてインスコすりゃいーじゃん。
distutils 使ってるみたいだから
python setup.py bdist_rpm とすりゃ RPM パケジができるし
VC++ 持ってるなら python setup.py bdist_wininst とすりゃ
Windows 用のインストーラが出来上がる。(hopefully)
パケジ機能を使わず野良インスコしてもたかが知れてると面割れ。
597 :
m9っ・∀・):04/11/29 20:24:35
Python Imaging Library (PIL)
m9っ・∀・) ドーン!
nnn9っ・∀・) ドーン!
初めてのパイソン第二版
分厚杉_| ̄|○
>>595 とりあえずインストールしてみたけど、同梱のサンプル動かNEEEEEEEE!!!
import してるのがdbm,gdbm --> dumbdmb,anydbmに直してみたりしたけど…
ドキュメント見て頑張ってみます。ありがとうございました。
立ち読み日age
じゃあ俺はUNIX POWER TOOLを分割しないで電車で読んでやる
はじパイ2nd立ち読んだ。
かなり丁寧に解説してるんで感心した。
あの厚みでライブラリにほとんど触れられてないほどだし。
最初に読む本としてはかなりお奨めかも、値段以外はw
# ところで、はじパイ1st死蔵してるんだけど、今更だれか要る?
はじパイ…なんかエロいなw
俺も3ヶ月前に1st買ってしまったクチだ…orz
Pythonで中級者以降向けの良い参考書ってないものかな?
いかにPythonのポリシーに基づきながらパフォーマンスや
生産性上げるかっていうの
C++なんかの必読の参考書みたいなノリのやつ
いい本だと思うんだけど漏れはライブラリリファレンスで充分だから・・
DiveIntoPython中〜
_,.−' "´ ̄ ̄ ̄ ̄` `¬- 、
,r'⌒', r⌒ヽ
/ `−' `−' \
/ |─────────‐| ヽ
| / ̄| _,,..、、 -―¬′ ! l ゙、―-- 、、.,,_ ┃|
工 ヽ/ニ二 | ゙、 j ! _ 二ニ┃|
| /  ̄``` ¬ー--、 `、 / /-― 冖 ""´ ̄ ・ '
゙:、 丶 / /
\ \ / ,/
`丶 、 \ / ,. -'"
`` ‐- \/ -‐ ''"
いつ頃sargeに取り込まれるのやら。私はまったり待ちますかね。
ライブラリの再インストールがまんどくせー
ハゲドウ
614 :
m9っ・∀・):04/12/01 00:52:34
May the distutils be with you.
やっとCJKCodecsが入ったというのにしょぼい反応ですね
>607
漏れなんぞ1ヶ月前に買って、このスレ初めて見て、
その時はじめて2ndの予定を知ったよorz
ちなみに完全趣味でちまちまなので未だに関数作れません。
PythonでOOPできるのはいつの日か。
617 :
デフォルトの名無しさん:04/12/01 02:11:47
Python のディープなことについて書かれた本とか、
サイトかありませんか?英語でも構いません。
「Python ハッカーならこれを読んでなきゃウソだ!」的なやつ。
>>617 Read the source, Luke.
> Luke.
lol :p
pywin32-203.win32-py2.4.exeがインストールできん。
「Can't load Python for pre-install script」って出て止まる。
これは何がまずいの?
>>622 まったく同じ現象だ。
2.3をアンインストールしてから、2.4を入れたんだけど、
それってまずいの?
もちろん、pywin32もアンインストール済み。
正直、Windowsのインストーラは中で何をやってるのかよくわからん。
解決した!
python.exeにパスが通ってないのが、問題だったみたい。
インストーラをC:\Python24に移動させて、そこで実行したらうまくいった。
他の同種のインストーラでは問題なかったので、このパッケージ固有の問題みたい。
2.4にしたら今までの附属パケジ入れ直さんとあかんから静観しとくよw
627 :
デフォルトの名無しさん:04/12/01 09:36:28
print "Save ? Enter file name: ",
fileName = sys.stdin.readline().strip()
こんなふうにすると、ファイル名を入力するときに
バックスペースで削除したりして入力すると
fileName 変数に変な文字が入るのですが、
C の fgets のように望みどおりに受け取ることはできませんか?
>>608 Effective Python がほしいという意味?
>>628 ありがとう。raw_input() でもだめだったです。
ちなみに環境は Cgywin です。
import readline してから raw_input() を使うとうまくいきました!
>>629 例えば
1. 演算子や型の癖の解説や推奨するスタイルの提案
一番基本的かつ広く応用可能なことだし効果も現れやすい
将来陳腐化する可能性はあるが…まぁ損にはならないと思う
2. 効果的なライブラリの紹介
1.の流れを受け継いで汎用的に高速化や生産性向上に使えるライブラリの紹介
3. Pyrexの効果的な使い方
単純にCで拡張するよりもあくまでPythonでできる高速化を提案
4. その他効果的な手法の紹介
Cでの拡張やPsycoなど紹介しきれなかった事を軽く解説
(PsycoはまだまだX86系に限定されるし1.2.で伏線張っとけば何とか話はつくかなと)
さらにBoost Pythonの予告で高度のC++との融合(3.とは微妙に矛盾するが)
みたいなのはどれも日本語ソースじゃまとまった情報って無いから
本になれば需要はあると思う
633 :
m9っ・∀・):04/12/01 15:32:32
書いて書いてー。
> みたいなのはどれも日本語ソースじゃまとまった情報って無いから
技術英語のリーディングのhow-to本を書いた方が早くね?
それどころか、PEP8には「ソースコードのコメントは英語で書いてくれ! 頼む! プリーズ!」
って書いてあるのよ。俺らEnglishの読み書きはmandatoryな時代なのよ。
どうしましょ。
つーか英語ソースでも
>>632みたいなのまとまった本であるのか?
それ以前にPythonマスターというかPython界のカリスマというか
そういう第一人者みたいな人っているの?
出版なんてしないよ。webで公開しれよ。
おまいらが学んだことぐらい無償で公開して共有しれ。
タダのソフトウェア使っているんだからタダで技術提供しれ。
どうせビジネスでソース組んだりしてねーんだろ?
それなら何の障壁もない。でも本家へのドネーションは忘れずにね!
日本語スキルもneeded
出版しても良いけど、Webにも載せておいて欲しい。
もしくはnamazuのインデックスを公開して、どの単語がどの本の何ページに載っているかを検索できるようにして欲しい。
640 :
デフォルトの名無しさん:04/12/01 21:12:48
Python の REP ってなんのことですか?
PEP(Python Enhancement Proposal)ではなくREPとは何かと問うているのか。
REPutationは上々です
陳腐化はしないだろう。ドキュメントのない最高最新のライブラリより、
ドキュメントのあるほどほどのコードの方が好まれる局面も多い。
645 :
デフォルトの名無しさん:04/12/02 12:13:02
pythonおもしろそうだなと思ってcygwinのpythonインストールして
Webで見つけた文字処理サンプル走らせて見たが、動かねー。
cygwinのコンソールは確かSJISだったので、
sjisでエンコードしたいし、
文字処理するファイルもsjisなのでpythonのファイル事態をsjisにしてますが
もしかしてcygwin-pythonはsjisに対応していないんですか?
なにかいい方法があれば教えてください
cygwinなんか使うな
恥パイぶ厚いな。
導入にかなり章を割いてるようだった。
Pythonは導入に手間かけないと使えない言語ですから。
パッケージ管理システム使(わ|え)ないの?
いや、システムにpythonを導入する手順について懇切丁寧にしてた、という事じゃないよ。
多分分かってると思うけど。
パラパラと見ただけなんだけど、ずいぶんと進行した時点で、
やっとインデントが云々みたいな事が書いてあったので、(あれぇ)と思ったのでした。
OOPの考え方とかその実装方法とかプログラミング手法を取り上げているので
立ち読みした。
Pythonの無償の開発環境でオススメは何?
eric3とpydev以外で。
Python って開発環境必要ですか?
テキスト エディタで十分だと思うけど。
>>654 DrPython or Wing IDE
Eclipse
Emacs
2.4が出たと聞いて飛んできますた。よろしくおねがいします!!
何が変わったの?
日本語のCodecが標準で入ったのを除けば、イテレータ回りとかデコレータとかプロセス起動とかこまごまと便利になってる感じ。
新機能バリバリつかって楽するか、2.2/2.3のことも思いやるか悩むところ。
さて、恥パイ第二夜は2.4に対応していない訳だが。
著述時点でPythonはいくつだったのか。
訳出時点ではいくつだったのか。
2.4はいつ出たのか。
を考えると、
アキレスが亀に追いつくことは決してできない
>664
2.4 requiredなソースがまわりに皆無だから無問題。
訳本だからしょうがないけど2.4のことを少しは書いて欲しかった。
ZopeX3って・・・(´・ω・`)
とりあえず psyco が2.4対応。
でも恥パイ第二版いいよコレ。
モジュール探すのマンドクセ。
CygwinとかMeadowみたいなSetUp.Exeがあればいいのに。
CPANみたいなのってなかったっけ?
しーぽんならあるかもしれない
あの神速プログラミングはPythonだったのか
……って、流石に宇宙船がスクリプト言語で動いてちゃイヤソやな
未来になったら、もっと抽象化されたスクリプト言語をつかっているだろ。
>>676 PyPIか?
# Jython は本家から外れろよな…jdk1.5.0で使えんし…
つぅか perthon というのがあるから CPAN の資源も使える?
ぶっちゃけ他の言語にもラップできるのでなんでもありだな・・
> CPANみたいなのってなかったっけ?
だれかPyPAN作れ…と思ったらすでに使われてたぜ。
ぱいはん【白板】
忘備録
・ZopeX3 で遊ぶ
・COREBlog と Plone とマージする
新顔generator expressionだけど、for文につっこむとき、値を逐次生成する分
list comprehensionよりメモリ使用量的に有利なのはわかる。
でも速度的にはどっちが有利なんだろう? ということで簡単に調べてみた。
---
from time import time
L = range(5000000)
pre = time()
for i in [x for x in L]: pass
print 'iterator :', time() - pre
pre = time()
for i in (x for x in L): pass
print 'generator:', time() - pre
---
結論: generator expression速ぇ。新顔のくせに使えるヤツだ(謎)
>>685 解析的じゃなくて原理的にソースの差異を導こうね♪
500まんこのオブジェクトの生成を省けば速いに決まっとる
まあ、詭弁ばかり言う連中ですから。
パイパンの語源はマージャンの白牌
未来検索でPython系ブログ漁ってみたら(・∀・)ニヤニヤ
どうしてPythonにはカプセル化がないの?
変態じゃないの?
C++ でも #include する前に、
#define private public とかすれば、
完全な隠蔽は崩れる。
>697
それは流石に……
プリプロセッサ通す前提ならprivateを貫き通せる言語なんてないに等しいぢゃん……
隠蔽は欲しいが、friendが必要になるのは嫌だ。
いや、プリプロセッサは C++ 言語の一部である、という見方をした場合のことさ。
そういう見方をしなければ、完全に隠蔽される。
あゝ、lambda……。
RemoveマニアがRemoveなものだけを集めてみた。
理由や代替方法が知りたかったら
>>701のリンク先。
■Core Language
distinction between int and long types.
`x`.
the <> operator.
the lambda statement.
support for string exceptions.
■Built-In
coerce() as it is obsolete.
dict.iteritems(), dict.iterkeys(), and dict.itervalues().
apply().
xrange().
map().
reduce().
callable().
buffer().
raw_input().
input().
execfile() and reload().
■Standard Library
string module.
types module.
other deprecated modules.
sys.exc_type.
>>693 変態というより、もともといろいろひねくれているからねえ。
Pythonのメモリ管理についての詳しいサイトとかありませんか?
>>703 typesモジュールがなくなったとして、
同様のことはどうするようになるの?
すげえな3.0。
>・ Remove `x`.
> Instead: use repr(x).
> Reason: backticks are hard to read in many fonts and
> can be mangled by typesetting software.
アルファベットのOとかlもremoveされそうです。
709 :
m9っ・∀・):04/12/06 13:40:54
>>707 isinstance("foo", str) とか書くんじゃないかな。
>>710 def isgenerator(obj): return type(obj) == type(i for i in ())
def isfunction(obj): return type(obj) == type(lambda: None)
みたいなのがinspectモジュールに追加されるんじゃないかと想像。
でもこういうのに頼るプログラムスタイルって、美しくないよね。
712 :
m9っ・∀・):04/12/06 21:49:00
スタイルってことならヤな部分は隠れてりゃいいんじゃないの?
typesモジュールの中身は
>>711みたいなコードの羅列だし。
さいきんPythonを覚えはじめて、map, filter, reduce があるのに感動
したんですが、なくなるんですか。lambda もなくなるんですか。たしかに
複数のステートメントからなる関数を作ることができないから少し不便な
気もしたけど。
お願いだから,lambdaは無くさないでくれ….
こんな中途半端なlambdaは、単なる恥さらしだからいらない。
今こそforkの時期だ!
map も filter も reduce も,なくなる代わりに配列型のメソッドになるんじゃ
ないかなぁ.
こんなものに lambda という名前を付けるなんて、
さすが睾丸無知なPythonコミュニティですね。
static typingを導入するってのは驚き.
with構文も別に欲しくないなぁ
lambda, map, filterを無くすって…本気?
今よりももっとスマートになるのであればlambda等の廃止は歓迎する。
それがないと困るぐらいにボキャブラリが不足している訳でもないので。
import lambda from lisp
で解決。
psyco と pyrex ってどう違うの?
どちらも byte compile っぽいので・・
Python での処理が速くなるみたいだからどちらかを入れようかなと・・
両方入れたら競合する?分からん・・
>>717 mapとfilterはリスト内包で、reduceはforループで書きかえることが、それぞれ薦められています。
726 :
デフォルトの名無しさん:04/12/08 14:00:31
wxPythonのテキストコントロールwxTextCtrlでデフォルトのIMEの設定ってできますか
アップローダーみたいなものを作ろうと思うのですが、cgiモジュールのドキュメントにこんなソースがあったので試してみました。
fileitem = form["userfile"]
if fileitem.file:
# It's an uploaded file; count lines
省略
最初のif文の中に入らないのでprint fileitemすると、
MiniFieldStorage('userfile', 'C:\\Documents and Settings\\hoge\\My Documents\\test.jpg')
とフィールド名とファイル名の組しか情報がありません。
>フォームが ``古い'' 形式で入力された場合 (クエリ文字列または application/x-www-form-urlencoded データの単一の部分の場合)
アイテムは実際には MiniFieldStorage クラスのインスタンスになります。この場合、list 、file 、および filename 属性は常に None になります。
ということでMiniFieldStorageになってしまうのが原因のようなのですが…どうしたらいいのでしょうか
729 :
m9っ・∀・):04/12/08 14:52:41
>>727 CGIを呼び出すHTMLファイルの方がおかしいんじゃない?
FORMタグのenctype属性とかINPUTタグのtype属性をちゃんと設定してない希ガス。
<FORM action="upload.cgi" method="POST" enctype="multipart/form-data">
ファイル:<INPUT name="userfile" type="file">
</FORM>
>>728 これはこれで有用そうですが、今はブラウザ経由でアップしたいのです…
>>729 ぬぉぉぉ、デキター!原因は前者(enctype)でした。ハズカスィ
fileitem = form["userfile"]
if fileitem.file:
f=open("test.jpg"),"wb")
while 1:
line = fileitem.file.readline()
f.write(line)
if not line: break
linecount = linecount + 1
f.close
これにて無事ファイルに保存できました。感涙です( つд`)ありがとうございます。
ところで疑問がもうひとつ…
PHPだとphp.iniファイルでアップするファイル容量の制限がかけられたと思うのですが、
pythonの場合どこでファイルの容量制限をかけたらいいのでしょうか。
全部ファイルを受け取った後でサイズを測っていてはダメでしょうし…
私のおじいさんが連れて行ってくれた始めてのファーストフード
それは吉野家で、私は親子連れでした。
垂れ幕は150円引きで、こんな素晴らしい特盛りを頼むパパは、
もう見てらんない。
通では、大盛りねぎだくギョク。孫に座らせるのはもちろんUの字テーブル。
なぜなら、
彼もまた、女子供だからです。
cgi.maxlen = 最大容量
ってすると、content-length(form.length で確認可)の最大値は
制限できるみたいよ、試してないけど、cgi.py のソース見た限りは。
733 :
m9っ・∀・):04/12/08 19:22:44
>>730 余計なお世話だけど、JPEGファイルのようなバイナリファイルには readline() はふさわしくないよ。
バイナリファイルを小分けにして読み込むには read(1024) などとするのが定石かと。
Python 2.4 + psyco 1.3 が NetBSD で動いた〜.
(今までは import psyco で core dump してた)
735 :
デフォルトの名無しさん:04/12/08 23:25:45
Rubyを選ばなかったおまいらは、国賊
>>732 cgi.pyのソースを直接変えてみたのですが、
その後でかいファイルをアップしようとすると処理がどこかで停止している感じで、
画面がまったく遷移しませんでした。
制御するのは確かにこの部分っぽいですね。
でも直ちにエラーをはくわけではなかったし、使い方があってるかどうか怪しいです。
>>733 バイト数で区切るんですね。一応readlineでも画像として保存はできました。
んでも不都合が生じるかもしれないので定石に習いますね。
ある数値オブジェクト(a)がnanであるかどうかを判定するには
どうすればいいのでしょうか。
値がnanである別のオブジェクト(b)と比較しようと思っても、
a == bはTrueですが
a == 1もTrueになってしまい
この方法ではだめだというのはわかるのですが……
最終的には、arrayの中の値がnanである要素を別の数値で置き換えたいのです。
どなたか分かる方お願いします。
NaNの出し方がわからない。
0.0 / 0.0 だと例外が発生しちゃうし。
rubyならNaNなんだけど。
あぁ、Infも出ない。
Python 2.3.4, WindowsXP on Pentium4-M
>>> inf=1e300*1e300
>>> inf
1.#inf
>>> nan = inf-inf
>>> nan
-1.#IND
Python 2.3.4, FreeBSD 4.10 on Efficion
>>> inf = 1e300*1e300
>>> inf
Inf
>>> nan = inf-inf
>>> nan
NaN
淫婦なん?
>>749 こうやるのね、無縁な世界なもんで。
標準モジュールじゃ無理っぽい。
fpconst
ttp://www.analytics.washington.edu/~warnes/fpconst/ ---------------------------------------------
% python
Python 2.3.4 (#1, Jun 13 2004, 11:21:03)
[GCC 3.3.1 (cygming special)] on cygwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import fpconst
>>> inf = 1e300 * 1e300
>>> nan = inf - inf
>>> fpconst.isNaN(nan)
True
>>>
---------------------------------------------
numarrayやnumPyでもできそうな気がするけど。
744 :
m9っ・∀・):04/12/10 00:54:21
こういう手もあるらしー。
$ cat > setup.py
from distutils.core import setup, Extension
setup(name = "ieee754", author = "Gustavo Niemeyer",
description = "
http://mail.python.org/pipermail/python-dev/2004-April/044586.html",
ext_modules = [Extension("ieee754", ["ieee754.c"])])
$ python setup.py build_ext -b .
$ python
>>> import ieee754
>>> ieee754.isnan(1e300*1e300-1e300*1e300)
True
>>> ieee754.isnan(1e300)
False
>>>
ZOPEのことですまんが、ZOPEスレがあまりにも荒んでいるので、
こっちに質問させてくらはい。
PythonScriptで、SQLMethodからデータを引きたいんだけど、
うまくいきません。
---ZSQLMethod---
dselect * from db
---取得するデータ---
+---+--+---+
| aa | bb | cc |
+---+--+---+
| a1 | b1 | c1 |
| a2 | b2 | c2 |
| a3 | b3 | c3 |
+---+--+---+
---PythonScript---
rows = []
x = 1
results = container.ZSQLMethod()
names = results.names()
for row in results:
rows.append(x)
x = x + 1
return rows
と書いても、return rowsで
1
しか出力されません。
PythonScriptからZSQLMethodを呼び出しても、1列しか引いてこれないんでしょうか?
煮詰まってしまった(´・ω・`)
そういえばPloneを放置していた。修得せねばならない・・
つぅか 2.4 で wxPython のソースからビルドできた人っていますか?
やっぱりバイナリので甘んじることにするか・・・なんか悔しいな・・
>>747 「できた。BeOSで」って言ったらお前の役に立つのかと。
>>750 手順教えて下さい。
wxPython-src-2.5.3.1/wxPython/docs/{BUILD.txt,INSTALL.txt}
の通りにやったんですけど python setup.py build_ext UNICODE=1 で
wxPython/contrib/glcanvas/gtk/glcanvas_wrap.cpp +492 のところでエラー吐かれました
(wxWidgets と wxGTK は通りました)。2.4だから駄目なのでしょうか?(2.3.xでは未確認)
それとも他に何か原因が・・・
エスパー募集してます。
2.4だから駄目なの
はい、エスパーです、何か?
クリスマスは彼女と一緒に純愛映画へ。
もちろん、イブの夜からずっと二人は一緒だ。
映画を観終わり、手をつなぎながら予約したレストランへ向かう。
途中、コンビニでゴムを買っておく(昨日で全部使い切ったから)。
鞄の中に、レストランで渡す予定のプレゼントを確認。
レストランに着き、冷えたワインで乾杯。
程よく酔いが回った頃、彼女にプレゼントを渡そうとする。
彼女も同じことを考えていたのか、二人同時にクリスマスカラーにラッピングされた箱を差し出す。
一瞬の間の後、二人は笑いあう…。
そんなクリスマス。
とってつけた暗示じゃなくて、二人のセックスをちゃんと描写しろ。
はじパイ100回読んで出直してこい。
クリスマス?毎晩ライブラリリファレンス見ながら◯◯◯でオナニーですよ
おーなかがすっいったっ♪
>759
Cobolのおばちゃまの写真を初めて見た。
シャルスクリプト
初めてのRython 第2版
シエルの基本テクニック
仕事に使えるLinuxシャルスクリプトbashで作る実用サンプル41
>>764 型月のアレとか小魔女のアレとか思い浮かべた俺はもう駄目だ…orz
シャルスクリプトはGoogle検索でもかなりのレア物
>765
ナカーマorz
弓使いの基本テクニックか。役に立ちそうだなw
Python 1.5.2をCygwin上で-mno-cygwinでコンパイルできている人います?
\ │ /
/ ̄\ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
─( ゚ ∀ ゚ )< Rython Rython!
\_/ \_________
/ │ \
∩ ∧ ∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\∩ ∧ ∧ \( ゚∀゚)< RythonRythonRython!
Rython〜〜〜! >( ゚∀゚ )/ | / \__________
________/ | 〈 | |
/ /\_」 / /\」  ̄ / /
プライベート・ライアンを思い出した。
とりあえず 「誤字、脱字などの指摘」 をしておいた。
土日は担当者休みだろうけど。
まだ2.4でZope使えないんですか?
Zopeって2.4で使えないんですか?
>>764を訂正します
初めてのRyhton 第2版だった。
RythonじゃなくてRyhtonだった。
PythonをよくPyhtonと打ち間違えるから人のこと言えないけどね。
777 :
デフォルトの名無しさん:04/12/13 13:02:46
2.4ってインストーラがmsiになってやんの。
XPにインスコしようとしたら
インストール パッケージを開くことができませんでした。
アプリケーション ベンダに問い合わせ、このパッケージが有効な
Windows インストーラパッケージであることを確認してください。
て言われたぜゴルァ!!!
って、これってどうすればいいんでしょうか?
(厨な質問ですみません・・・)
ダブルクリックするだけで良いはず
780 :
デフォルトの名無しさん:04/12/13 13:24:21
>>778 ダブルクリックして言われたんですが・・・。
ちなみに家のPCと会社のPCで、両方とも同じエラーがでます。
環境は家(xphome)
会社(xppro)
です。
PILとかpypanとか、ここはいやらしいインターネットですね
public image limited
785 :
m9っ・∀・):04/12/13 18:24:57
(ノ∀`)アチャー
Pythonを舐めてんのか
m9(^Д^)プギャーーーッ
Pyhtonスレはここですか?
暇なんでPythonみたいだけど2chネラー向きのPyhtonつーのを
作ってみるわ。もちろんWindowsネイティブな。少しまちなー。
ううむ。ちゃんと Python って書いたと思ったけどなあ……
794 :
m9っ・∀・):04/12/13 21:57:16
% python
python: Command not found.
% pyhton
Pyhton 2.4 (#2, Dec 2 2004, 12:35:04) [C] on sunos5
Type "help", "copyright", "credits" or "license" for more information.
>>>
Pyhton の検索結果 約 11,400 件中 1 - 50 件目 (0.23 秒)
\ │ /
/ ̄\ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
─( ゚ ∀ ゚ )< Python Python!
\_/ \_________
/ │ \
∩ ∧ ∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\∩ ∧ ∧ \( ゚∀゚)< PythonPythonPython!
Python〜〜〜! >( ゚∀゚ )/ | / \__________
________/ | 〈 | |
/ /\_」 / /\」  ̄ / /
↑しまった…Pythonと間違えた…
LinuxMag をさらっと立ち読みしてきた。Python の記事。
もうね、本家のドキュメント嫁、でええやん。あの説明じゃ余計に訳分からん。
なんかどうでもいいし。 LinuxMag 自体があと2刊分で終わりらしいし。
というか創刊から先月までPDF化して売ってあとの3ヶ月分はどうするのだろうか?
まぁ買わんけどね。FreeBSDExpert2005買ったし。
以上チラシの裏でした
モンキーPythonって…モンキー・パンチなんだかモンティ・パイソンなんだか。
まてよ、モンキー・パンチってモンティ・パイソンのもじりなのか?
紆余曲折あった末に800get!
>>787 (ノ∀`)アチャー 舐められているというか、もうわざととしか思えない
802 :
デフォルトの名無しさん:04/12/14 02:19:29
しょぼいこと聞いてすみませんが、カタカナとか英数字の全角/半角変換ってどうすればいいでしょうか。
pykf
fullwidth/halfwidth charとの1対1変換なら、素直にこうするのはどうだろう。
カタカナは濁点の処理にもう一工夫必要だが。
#!/usr/local/bin/python
# -*- coding: utf-8 -*-
fromstr = u'ABCDEFGHIJKLMNOPRQSTUVWXYZabcdefghijklmnopqrstuvwxyz'
tostr = u'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
ztoh_map = dict([(ord(f), ord(t)) for f, t in zip(fromstr, tostr)])
print ztoh_map
teststr = u'HelloWorld'
teststr = teststr.translate(ztoh_map)
print teststr
pypan
\ │ /
/ ̄\ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
─( ゚ ∀ ゚ )< Pypan Pypan!
\_/ \_________
/ │ \
なんでPythonの本がこんなに売れてんの?
分かり安いし,見た目も綺麗だから
オライリーだから
久しぶりに出た上に丁寧に書かれたいい本だから。
Pythonの本って少ないからねぇ
RubyオンリーからPythonもかじってみようとしたタイミングで出たので買いました。
3dCGソフトが採用するスクリプトがPythonだらけなので
蛇表紙じゃないから
>>816 メタセコイア、gameSpace、trueSpace、もちろんBlender。
Pythonだらけになってきた・・・・。
shadeも
>>802 部分的にしかカバーしないし、うまくいかないときの例外処理とかも必要だろうけれど、
とりあえずこんなのでもたいていのものについてはうまくいく
import unicodedata
def foo:
return unicodedata.lookup (unicodedata.name (uchar)[10:])
#! /usr/local/bin/python
# -*- spam -*-
>>813 良い選択をしましたね。
Rubyのような糞言語なんか使うのはやめ、Pythonのような
すばらしい言語を使うようにすれば、あなたのこの先の人生はバラ色です。
Pythonって組み込みやすいの?
LinuxMagazineの記事見たけど、なにあれ。
strとintを+していた気がするのだけど、
ネタ系だろ?参考にならんし
Ruby者の底の浅さが露呈したな。
あの記事の著者は、本当の初心者を相手にしたことがないんじゃない
だろうか。
・わけわかんね、つまんねー、と露骨に飽きた顔する
・破天荒な質問を矢継ぎ早に浴びせる
こういう輩をうまく操縦する方法をわきまえたものでないと、
入門記事なんて役に立たん。
Python記事が書けるライターの層の薄さが露呈した。
超マイナー言語の宿命。
海外でのRubyの扱いも似たようなもんなんだろうな。
GUIアプリもPythonで書くべ、と思ってwxPythonを勉強し始めたんだが、
大文字で始まるメソッド名に強烈な違和感が。
本家wxWidgetsの慣習はどうあれ、wxPythonでは小文字に変換しちゃえばよかったのに。
日本語まともに通るのかなコレ。
>>827 単にLinux Magazineとそのライターの質が糞なだけだろ。。。
そう思っていたいぜ。
いやなことがあった日はタプルをいじって和む
>>830 ここって負け惜しみを言う人が多いスレですね。
Linux magazine、休刊ですから。
>>832 使ってないけどとりあえずSUGEEEEEE!!!
なにこの汚さは?すげー読みにくくて何やっているかさっぱりわからん。
lambda馬鹿
> def aug(u): return ((u==myU) and pr()) or pr(pxy(u).f(pw(u),0,pr([myU])))
> pr() and [aug(s) for s in aug(pr()[0])]
この辺,ちょいとバグってない?
>>839 別に動かすことが目的じゃないからそれでいいのです。
書いた人はあまりPythonに慣れていないな.
・不必要に括弧で括っているところが多い.
・;と\を知らないっぽい.
・prsはset型にすれ.
もっときれいに2/3くらいの量で書ける気がする.…俺はやらないけど.
842 :
デフォルトの名無しさん:04/12/16 23:02:07
圧縮記法が好みならrubyにでも逝っとけ>tinyp2p
もいん!
moinmoinのページ生成速度を上げるにはmod_pythonがいいのですか?
速いサーバに交換するのがいいと思うね
みんなでよってたかってひとつのファイルに書き込むときはmutexを使うべきなのかなーと思うのですが、
使い方がいまいちわかりません。
import time,mutex
def writetest(x):
f=open('/tmp/test.txt', 'a')
f.write(x)
f.close()
mx = mutex.mutex()
mx.lock(writetest,str(time.strftime("%Y%m%d%H%M%S",time.localtime()))+'\n')
これであってるのでしょうか?unlock()の使い方もいまいち理解できず…
「みんな」が誰かにもよるが(同一プロセスの複数スレッドなのか、複数プロセスなのか)、
一般に、ファイルへの追記だけをatomicに行いたいのなら、
os.write()を使えば、バッファリングもされず、排他制御もOS内部でしてくれるので
(1回のwrite(2)システムコールの呼出し中に、他の書き込みが割込むことはない)
事は足りる。
>>847 cvs か subversion の commit のしくみを参考にすれば?
Perlでは9行で書けるものを、Pythonではライブラリも駆使して15行ですか。
記述力の低い言語ですね。スクリプト言語と呼んじゃいけないね。
というruby厨の嫉妬のコメント。
>>848 openからwriteまでの間に、カレント位置に別プロセスが書き込んでいると、
上書きしてしまうことになるんでは?
あいかわらず負け惜しみばかりいうスレだな。
>>853 書き足りなかったかな。
os.open()の呼出し時にflag=O_APPENDを指定すると、
常に末尾に追加書き込みされることをOSが保証してくれる。
このあたりはUNIX(やWindowsを含む、OS一般)の知識が役に立つので、
TanenbaumのMINIXの本とか見掛けたら是非読んでほしい。
>>856 そうでしたか。勉強不足でした...orz
>>856 同期していないとフラッグだけでは意味ないけどね
>>856 いまさらMINIXかよ。勧めるとしても、あまりにもひどすぎじゃねえの?
レスしていただきありがとうございます。
こちらも情報不足ですいません。
実際にやりたいことは顧客管理などを行うWebアプリケーションめいたものを作りたい
(全然規模が小さいのでDBは使わずファイルでやりたい)のですが、
今のところファイルの内容を一旦全部読み込み
適宜データを追加・修正・削除した後に追記"a"ではなく新規書き込み"w"でファイルに保存しています。
少人数ではありますが、複数人が同時に更新しようとすると不具合が生じる懸念があり相談しました。
レスしていただいた内容だと追記の場合は対処できそうですが、
上記のような場合でも対処できるのでしょうか。
>>858 同期とは何のこと? fsync(2)なら不要だが。
>>859 OSの概念を学ぶのに、MINIXのようなコンパクトなOSが対象として最適。
>>860 UNIX上のマルチプロセス・シングルスレッドなアプリケーション(伝統的なCGI)なら
fcntlモジュールを使ってファイルロックで排他制御するのがよい。
ファイルをopenしたら読み込む前にflock。
ただ複数同時更新を避けたいだけなのに、OSの概念から学べって?
意地悪だねえ。
>>862 > UNIX上のマルチプロセス・シングルスレッドなアプリケーション(伝統的なCGI)なら
> fcntlモジュールを使ってファイルロックで排他制御するのがよい。
> ファイルをopenしたら読み込む前にflock。
だからその方法はもう古いのね。ファイルの内容の局所的な個所で矛盾が発生
したときの対処だけでいいんだよ。わざわざファイル自体にアクセス権を設け
るとセキュリティー上好ましくないんで。
CGIは、複数のスレッド(プロセス)が非同期に動作する点で、本質的に難しいんだからしょうがない。
基礎を学んで正しく堅牢なコードを書くか、基礎を知らずになんとなく動く(そしてときどきデータが壊れる)ゴミを書くか、どちらかだ。
それが嫌ならサーバからは手を引いて、シングルスレッドアプリケーションだけ書いていればよい。
>>864 CGIでflockを避けるべき理由は、プロセスがゾンビ化したときの
デッドロックではないの?
flockするとアクセス権が何か関係してくるの?
CGIでPythonなんか使うな。
フレームワークが豊富なPerlかPHPでも使っておけ。
>>866 それもあるけどflockすると往々にしてプロセス解放後に複数のアクセスが
同時のタイミングになってそこで競合するから。もちろんフラッグを置いても
事態は変わらなくて単に競合ポイントがズレるだけ。だからファイル差分単位で
考えた方が競合の発生する可能性が低減するのでは、ということ。
同期…フラッグ…アクセス権…差分単位…
858=864=868は849とみた。
差分算出から差分適用までのあいだに割り込まれたらどうするの?
なんか堂々巡りのような気がするが。
flockって古いの?
出自は4.2BSDだから、古いといえば古い。
しかし、システムコールの良し悪しは古さでは計れない。
いや,昔からあることはもちろん知ってるよ….
今ではもうobsoleteなのかな,という意味で訊いたつもりだった.
SYS-V IPCとかを使うべきなのかな,と.
追加だけならDBM系をつかえばいい。
排他制御機能があるやつもある。<Pythonからどうハンドリングするかはしらん
ZODBもお手軽かな。
>>841 まあ、書いた人は馬鹿ですから。
最初からPerlで書いておけばよいのに。
Pythonってこういう短く詰め込むようなDeCSS系のスクリプトは書きにくいよね。
というかわざと書きにくくしているというか。
lambda使わずにかくのは無理だし。
で、2.4でZope使えた人いるの?
(´-`)。oO(普通は ZWiki か Plone か MySQL-python を使うんだけどね・・
>>879 SQLite などはどう?
C/S 型でない分気軽に運用できると思う。
SQL92 なトランザクションもあり排他的な問題もおけ。
その程度のことも、Pythonだけではできなくて、MySQLやSQLiteを
使わないといけないのか。
日本語に不自由な国の方ですか?
884 :
デフォルトの名無しさん:04/12/18 19:49:21
ReportLabに関する質問はこちらでよろしいでしょうか?
既存のPDFファイルに図形を追加しようと思っているのですが、
どの関数を使えばいいのか、それらしいものがわかりません。
SimpleDocTemplateかと思ったのですが、どうも違うような気がします。
もし御存知の方がいたらよろしくお願いします。
商用ライセンスの PageCatcher を買わないといけないんじゃなかったっけ?
うわぁ、ReportLabだけじゃだめだったんですね。
どうもありがとうございます…。_| ̄|○
http://www.python.jp/pub/doc_jp/api/bufferObjects.html ここに,
> バッファインタフェースをサポートするオブジェクトの例として、文字列型とアレイ (array) 型の二つがあります。
> バッファインタフェースを介してバイト列を公開しているオブジェクトは全て、ファイルへの書き出しができます。
とあるんだけど,
>>> from sys, array
>>> arr = array.array("c", "hello")
>>> sys.stdout.write(arr)
TypeError: argument 1 must be string or read-only character buffer, not array.array
なんでwriteする対象がread-onlyじゃないといけないんだ?
理由はわからないけど fileObject.c の PyArg_ParseTuple で s (文字列)
と s# (読み出しバッファ) に制限されてるね.
7行プログラミングを知らんのか?
posted by an anonymous coward at 12:10:55 PM on December 19, 2004
流儀とか綺麗さとかを敢えて崩してみてまでいかに短くするか、というのを競ってるという趣旨をわかってないと思う。pythonの人ってこういうわからず屋ばっかりなのかな。
posted by an anonymous coward at 01:00:48 PM on December 19, 2004
とりあえずやりたいことはすでに誰かがコード書いているのが Python。
この点で Ruby と異なる。そして Perl とは可読性の点で python の方が優れ
ている。さらに C/C++ にバインディングすることで Java と同等の汎用性を
獲得する。言うまでもなく Java よりも実行速度は速い。したがって Python
を修得しなければならない。
>>889 s#って読みだし専用バッファしか受け付けないのか….
ああ,そもそもstr型がimmutableだもんな.
とりあえず,
>>> sys.stdout.write(buffer(arr))
とすれば動いた.が,意味が分かってない上,buffer()がobsoleteな雰囲気.
sys.stdout.write(arr.tostring())
でいいと思うよ
arr.tofile(sys.stdout) ではないのか。
System.out.println(arr.toString())
>>894 arrayが糞デカく,コピーのコストが馬鹿にならない状況なので,
できるだけtostring()は使いたくないんだけど,やっぱりそれが自然なのかな.
>>895 sys.stdout.writeはバッファオブジェクトを受け取る関数の例として
出しただけで,実際はファイルオブジェクトではなかったり.
最初に書いておかなくて申し訳ない.
>>888 >>> import sys, array
>>> arr = array.array("c", "hello")
>>> sys.stdout.writelines(arr)
hello
はどうよ?
Pythonは三日で飽きる
Perlは三日で慣れる
>899
逆だろ。
俺は合ってると思う。
Pythonはタイプさせられる量が多くてかなわん。
5000行くらい書いて飽きた。
飽きるほど書いているときはアルゴリズムか開発体制が悪い時。
どちらも悪くないと思うが書くのが律速になってストレスたまるのよ、Python。
それは感じる。
でも書き捨て以外のソースを書くときは、
Lisp系やPerlでもそれなりに気を使うことになるから
個人的にはそう変わらん。
905 :
デフォルトの名無しさん:04/12/20 01:30:52
>>903 可読性とか、バグ入れ頻度はどんな印象?
ちゃんとしたかたちで書いておけば後でそのコードを育てられるので。
確かに使い捨てコードには向かないね。
ようするにスクリプト言語ではなくてプログラミング言語だってことだ。
言うまでもなく本格的なOOPLね。
文字列がimmutableなのがありがたい。
イタリアのおねえさんをGETできるスレってここですか?
フランスのおねえさんの方がGETし易くなっています
Foundations of Python Network Programming
この本ってどうよ?
Amazon.comでの評価、むっちゃ高いな。
とりあえずamazon.co.jpで買ってみた。年明けに届くらしい。
ReportLab使ってhtmlをPDFにコンバートできる?
できると思うけど,タイプセットは自分でやらないとだめじゃないかな.
それはできるとはいわないかも
できそう
できるかな?
できるかも
できないことはない
できてる
つぅかやらす
やっぱり、自分で組まないとだめなんかなぁ
>>920 そこにかいてあるmy_document.import_HTML(my_html_source)は実は間違いだそう
上のほうにあるリンク先で「ご注意: 当記事は、公開後、著者が import_HTML などに関する間違いを指摘しておりますので、ご参照ください。」
とあるし、補足のimport_HTMLのソースがあるけど、どう見てもこれだけじゃ動きそうに無い
self._write_string_to_tmpfile(html, ext='HTML')
ってのを呼び出してるけど、reportlabにはそんなの無いし
_write_string_to_tmpfileでググッたら、PJScriptで使ってるようなMLログがあった
PJってのはJAVA系みたいで、流石によくわからなくなってきた状態
\ │ /
/ ̄\ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
─( ゚ ∀ ゚ )< ポストンポストン!
\_/ \_________
/ │ \
WebDAVサーバのライブラリってあります?
Pyはじめました
定数がないようなんですが,
定数を使いたいときは,タプルを使うとよいのでしょうか
最近はpy初めるとかいうのか。
スクリプト言語のほとんどには定数なんてないよ。
変数を上書きしなように気をつけるのが普通。
そういうときはマクロを使いましょう
#define 1 2
pythonスクリプトにいちいちcppでも適用するのん?
まじめにrubyから乗換えを検討しているのだが、
乗換えで困ったことあったら教えて。
933 :
デフォルトの名無しさん:04/12/26 09:07:07
恥Py第二版の動物は、みればみるほど
後足からしっぽが生えてるんかよ
>>932 akr さんのような超絶コードを書ける。
Foundations of Python Network Programming届いた。cookbookみたいなもんだな、これは。
>929
メジャーどこだけ言ってもPerlにもRubyにも、ついでにVBScriptにすらあるんだが。
確かにawkにもm4にもないけどさ。
>>929 サンクス
定数的に扱いたい場合は変数名をuppercaseにして,
間違って上書きしないように気をつけることにしました。
そうすると,変更できないリストのタプルって
どういうときに使うと幸せになれるんでしょう
リストと違いディクショナリのキーになれる by 恥じパイ
Apacheとmod_pythonを使ってweb programmingを仕様と考えています。
読みやすさ,再利用しやすさ,セキュリティの点から
お手本になるソースをどんなものがありますか?
ZOPE以外で
Cで例えると、リストは配列(の高機能版)、タプルは構造体(の無名版)、といった感じで使ってる。
確かに動的型言語だと差違が薄く見えてくる気はするけど、本質的には別物だと思う。
(゚д゚)タポゥ
多値だと考えてはまずいのか? >tuple
それもあり。
タプルって何のためにあるの? リストを上書きしないように気をつければ言いだけの話じゃん
物を叩くだけなら、金槌は木槌で代用できる。しかし、木槌は磁石にくっつかない。
人間からみるとささいなlistとtupleの違いも、
コンピュータから見ると大きな違いが(人間の視点から見た違いとは別に)あるのだ。
>>948 コンピュータ(CPU)にはlistもtupleも関係ないよ.
Python言語の仕様にlistとtupleを入れたのは人間だよ.
951 :
デフォルトの名無しさん:04/12/27 17:09:52
スレ違いかもしれませんが reStructuredText について質問させてください。
pyblosxom で reStructuredText で書かれたデータを整形して出力しているのですが、
データ中のセクションが、h1、h2、... と変換されます。
これを h3、h4、... となるようにすることは可能でしょうか?
このように使っております。
html = publish_string(story, writer_name='html')
コンピュータってのは、CPUじゃなくてPython VMのことを言いたかったんじゃないだろうか。
だな。もしタプルが気にいらないのであれば Python のソースを全部パクって
違うシンタックスにしてその新しい言語を自分だけで使っていればよかろう。
pyblosxom が何のことだかわからないが
reStructuredText は普通に使っている俺が答えてみる.
rst2html をコマンドラインから使用するなら
rst2html --initial-header-level=3 ...
とやれば h1,h2 ではなくて h3, h4... を使って
くれます(これは手元で確認した).
publish_string でやるなら (site-packages/docutils/core.py のコメントを読む限り)
html = publish_string(..., settings_overrides={'initial-header-level': '3'})
で良さそうではあるが,実験はしてない.
pyblosxom は blosxom の Python 版
>>954 'initial-header-level': 3
も 'initial-header-level': '3'
も試しましたが、h1から出てきてしまいました。
>>956 settings_overrides={'initial_header_level': 3}
で試してもらえますか?
>>957 アンダーバーに直したらできました。
ありがとうございます!
背景を書くと、
pyblosxom は、1エントリを1ファイルで扱うblogツールで、
ファイルフォーマットに reStructuredText も扱える。
ただし、日付やタイトル(タイトルは最初の1行と決まっていて、
これにはreSTのマークアップはしない)が既にあるので、
セクションをそれより低いレベルで出力したかった。
というわけです。
正確には以下でした。
バリューの方文字列です。実験したらどっちでもいけるみたいですけど。
'initial_header_level': '3'
タイトルも認識しなくして、思い通りになりました。
以下でうまいこと動いています。
ありがとうございました。
--- /home/hogehoge/src/pyblosxom-1.0.0/contrib/entryparsers/rst.py Thu Jul 31 19:25:54 2003
+++ ./rst.py Mon Dec 27 01:40:47 2004
@@ -37,7 +37,13 @@
return parse(''.join(args['story']))
def parse(story):
- html = publish_string(story, writer_name='html')
+ html = publish_string(story, writer_name='html',
+ settings_overrides={
+ 'input_encoding': 'euc-jp',
+ 'output_encoding': 'euc-jp',
+ 'initial_header_level': 3,
+ 'doctitle_xform': 0
+ })
return html[html.find('<body>') + 6:html.find('</body>')]
def readfile(filename, request):
そういう用途なら、docutils\examples.pyが参考になると思うが
962 :
デフォルトの名無しさん:04/12/27 21:44:29
reStructuredTextで日本語はあつかえるのでしょうか?
表を作ろうとすると漢字を2バイトとして扱わない(?)ようで、
HTMLなどへの変換時にエラーが出てしまいます。
GJ!って言おうと思ったら、次スレもPart6になってるじゃんよ...
BJ!
え? 次スレはPart 7ってなってるよ?
二つあがってるくさ
立てまくるなボケ
後からスレ立てた奴氏ね
しかも Part6 のままだし。
>>970 U+00FFより上は全角幅とみなす、ってのはずいぶんと割切ったパッチだな。
日本語での使用に限っても半角カナでずれるぞ。
本家に取り込まれる余地のある、unicode対応パッチはないのか?
>971
作らないとないと思う
>>973 >PySoulSeek is a client for SoulSeek filesharing system
>that runs under Linux/FreeBSD/Solaris and other Unices and
>sorta runs under Mac OS X (see below for details).
そもそもpyslskはWindowsで動くの?
>>974 まだやり方が分からないため、はっきりと分かりませんが
多少(UNIX固有の部分の)ソースを修正すれば動くと思います。
Pythonを学びはじめるきっかけになればと思っています。
宜しくご教授お願いいたします。
まずWindowsで動かせるようにするほうが先
978 :
デフォルトの名無しさん:05/02/14 21:39:45
a
abs()
chr()
dir()
divmod
Noneぽ
保守
endswith()
tuple()
pass
from anywhere import all
del
try:
import Pychinko
except NameError:
pass
except ValueError:
raise
except ImportError:
continue
except TypeError:
from Pychinko import *