Pythonのお勉強 Part3000.12
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2006/08/30(水) 00:02:30http://www.python.jp/Zope/
Python オフィシャルサイト
http://www.python.org/
まとめwiki
http://www7a.biglobe.ne.jp/~yasozumi/python/wiki/
問題集
http://www.pythonchallenge.com/
Pythonのお勉強 Part11
http://pc8.2ch.net/test/read.cgi/tech/1155219600/
みんなのPython著者はこんなブログを書いてる人
>> http://coreblog.org/ats/scbscriber-of-coreblogml
> 「インストール方法」みたいな低ーーーいところとか,「落ちている物を拾って使います」的な乞食みたいな思想から抜け出せないのでは危ないと思います。
> 趣味で使うならいいんだけどね。しかしまあ,趣味の延長ではおいしい物食べられないし,車とかプラズマテレビは買えない(笑)。
0002デフォルトの名無しさん
2006/08/30(水) 00:06:070003デフォルトの名無しさん
2006/08/30(水) 00:06:36乙
0004デフォルトの名無しさん
2006/08/30(水) 00:17:34はやく夏よ終われ
0005デフォルトの名無しさん
2006/08/30(水) 00:19:01ふざけるな。貴様がスレを立てた基地害だろうが。
貴様が消えろ。今度という今度は許さん。
0006デフォルトの名無しさん
2006/08/30(水) 00:21:34import python
python.exit()
0007デフォルトの名無しさん
2006/08/30(水) 00:25:180008デフォルトの名無しさん
2006/08/30(水) 00:29:39>みんパイが叩かれてる理由を説明するレスが多すぎるから、それを省くために>>1に書いといてやったよ
>著者の主張を広めてみんパイ著者をあおってるってことはないだろう
>
>>>993
>嘘をつけ。みんPy叩き関連は、おそらく大部分が貴様の自作自演だ。
>このスレの人間はほとんど読んでない。対象読者から外れているからな。
>
>>>all
>俺はもう諦めた。次スレはこのまま使おう。
>馬鹿は言葉が通じないから馬鹿なのだ。どうしようもない。
あー
あー
0009デフォルトの名無しさん
2006/08/30(水) 00:34:32偏執狂は病院へ行ってください
0010デフォルトの名無しさん
2006/08/30(水) 00:36:17ふいにするのか…。
0011デフォルトの名無しさん
2006/08/30(水) 00:37:37作者らしき人が出てこなきゃ普通の入門書だったのにな・・・
0012デフォルトの名無しさん
2006/08/30(水) 00:40:23それと同じで、Pythonにメジャーになってもらいたくないツンデレの仕業と考えるんだ!
「あ、あんたたちに使いこなせるほど、簡単な言語じゃないんだからねっ!」
0013デフォルトの名無しさん
2006/08/30(水) 00:43:55オタ氏ね
0014デフォルトの名無しさん
2006/08/30(水) 00:44:37しかし作者を少し恨みたくはなるよ。あのblogのエントリは、ネットイナゴの
格好のエサだ…。
0015デフォルトの名無しさん
2006/08/30(水) 00:46:51http://d.hatena.ne.jp/keyword/%A5%CD%A5%C3%A5%C8%A5%A4%A5%CA%A5%B4
0016デフォルトの名無しさん
2006/08/30(水) 00:47:210017デフォルトの名無しさん
2006/08/30(水) 00:47:37>>>998
>こっちはみんパイの宣伝ばっかで飽き飽きしてんだよ。
>1000 名前: デフォルトの名無しさん Mail: sage 投稿日: 2006/08/30(水) 00:31:10
>>>999
>リアル敗北者乙。
>
>そして1000!!
ゲラゲラゲラ
0018デフォルトの名無しさん
2006/08/30(水) 00:50:081. 私怨らしい
2. Zope関係らしい
3. すごくヒマらしい
0019デフォルトの名無しさん
2006/08/30(水) 00:55:462. を隠れ蓑にしようという目論見が痛々しい
0020デフォルトの名無しさん
2006/08/30(水) 01:01:14ここで合っていますか?
0021デフォルトの名無しさん
2006/08/30(水) 01:08:20著者乙
0022デフォルトの名無しさん
2006/08/30(水) 01:08:59このわかりにくいスレタイ
まともなPythonistaの仕業とは思えない
今日は2chのPythonスレが終わった記念日...orz...
0023デフォルトの名無しさん
2006/08/30(水) 01:16:44合ってます。もう達人すぎて大変ですよ。
0024デフォルトの名無しさん
2006/08/30(水) 01:25:49もっと自分の人生見つめなおしたほうがいいよ
0025デフォルトの名無しさん
2006/08/30(水) 01:26:442chのム板みたいなさびれた板で
ネガティブキャンペーンはできないよなー
粘着キチガイは世間を知らない井の中の蛙か
感覚がずれたリアルキチガイかのどっちかだな(www
0026デフォルトの名無しさん
2006/08/30(水) 01:34:42>1. 私怨らしい
>2. Zope関係らしい
>3. すごくヒマらしい
1と3は否定しないんだね(W
0027デフォルトの名無しさん
2006/08/30(水) 01:44:130028デフォルトの名無しさん
2006/08/30(水) 01:47:37それなら難しい質問をさせて頂きます。
ttp://www.newlc.com/SIS-Info-tool-for-Symbian-9-1-SIS.html
上記サイトにある、「sisinfo.zip」をダウンロードして解凍すると、
「sisinfo.py」等のファイルが入っています。
sisinfoは何をするものかと言いますと、「SIS」という形式で圧縮されたファイルを
解凍するプログラムです。
しかし、実際には、解凍できるSISファイルと解凍できないSISファイルがあり、
なぜ解凍できない場合があるのか分からなくて困っています。
解凍できるSISファイルと解凍できないSISファイル構造の違いについて、
sisinfoのソースから、何か少しでも手がかりとなるような事があれば、教えて頂きたいです。
�@sisinfoの使用方法
コマンドプロンプトで、「sisinfo.py -f [フルパスのSISファイル名] -e [ファイル解凍先ディレクトリパス]
と打ち込む。
�A解凍できるSISファイル
ttp://www.handango.com/servlet/d/screenshot_s60_3rd_2.30.sis?s=1&p=186751&secw=1e5842b1&email=fafafaf%40hotmail.com
↑からダウンロードできるSISファイル
�B解凍できないSISファイル
ttp://gallery.mobile9.com/d/40737/
↑からダウンロードできる(※20秒ぐらい待つと、ダウンロード先リンクが表示される)SISファイル
0029デフォルトの名無しさん
2006/08/30(水) 01:55:03新しい次スレを立てませんか?
0030デフォルトの名無しさん
2006/08/30(水) 01:57:12> 趣味で使うならいいんだけどね。しかしまあ,趣味の延長ではおいしい物食べられないし,車とかプラズマテレビは買えない(笑)。
003128
2006/08/30(水) 01:57:17ちなみにSISファイルとは、NOKIAという携帯等で使用されている、
Symbian OS用の圧縮ファイルです。
もしも、解凍できなかったSISファイルも解凍できるよう、プログラムを改良できた人がいたら、
神扱いされ、携帯版は祭りとなるでしょう。
0032デフォルトの名無しさん
2006/08/30(水) 02:12:27それは難しい質問というより面倒くさい質問だな。w
まぁ暇な人よろしく。ww
0033デフォルトの名無しさん
2006/08/30(水) 02:27:41;' ':..
;' ´ ` あたまのびょうきは
./ ● .● なおらないよ
./ ⌒ ▼⌒':
__ ./ 彡 ∵人∵ノミ___
 ̄ ./ _ ミ ノ"ミ ̄ ̄ ̄
 ̄ ̄ ̄ ̄ ̄━━ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ̄ ̄━━━ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ̄ ̄ ̄ ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄ ̄ ̄
0034デフォルトの名無しさん
2006/08/30(水) 05:37:00sisinfo.pyのソースをすこし眺めてみたんだけど、
これ本当にちゃんと動くプログラムなのかな?
例えば sisreader.py にこんなコードがある。
def readSignedBytes(self, numBytes) :
buf = self.readPlainBytes(numBytes)
if len(buf) < numBytes :
return []
format = ""
for i in range(numBytes) :
format += "b"
return struct.unpack(format, buf)
def readBytesAsInt(self, numBytes) :
result = 0
bytes = self.readSignedBytes(numBytes)
if len(bytes) == numBytes :
for i in range(numBytes) :
result |= bytes[i] << (i*8)
return result
普通、2バイトを符号付きの16ビット整数として読む場合、
>>> struct.unpack("h", "\x88\x88")[0]
-30584
となるんだけど、引用したコードで readBytesAsInt(2) とやると
>>> bytes = struct.unpack("bb", "\x88\x88")
>>> (bytes[0]) | (bytes[1] << 8)
-120
>>>
というおかしな結果になる。展開できるファイルの方が少ないのでは?
sisfields.py の SISField#readFieldLength() も63ビットの符号なし整数を読む場合の
処理が仕様書(google://softwareinstallsis.pdf)と合致してない希ガス。
あと、format = "b" * numBytes だよなぁとか、むしろ
struct.unpack("%db" % numbytes, buf) だよなぁとか。Python 歴が短い印象。
003534
2006/08/30(水) 05:44:20「どうしても展開できません。本当にありがとうございました」って
知らせて対応してもらうのが一番手っ取り早いよ。
0036デフォルトの名無しさん
2006/08/30(水) 07:25:25ナカちゃん。はやく成仏してください。
0037デフォルトの名無しさん
2006/08/30(水) 08:40:42> > 「インストール方法」みたいな低ーーーいところとか,「落ちている物を拾って使います」的な乞食みたいな思想から抜け出せないのでは危ないと思います。
> > 趣味で使うならいいんだけどね。しかしまあ,趣味の延長ではおいしい物食べられないし,車とかプラズマテレビは買えない(笑)。
これは酷いね・・・
禁句じゃないか。
なんでこんなことが書けるんだ?
人間性を疑われても仕方がない。
003834
2006/08/30(水) 09:57:05その引用部分って、開発側の人間が開発側の人間に対して
「すごーく専門性の高いものを作ってるんだから、
孤高を自覚してストイックにやらなきゃダメだよー」と促してるんだよね。
(そのことが分からないように引用されているところに悪意を感じないでもないけどw)
俺は外野だけど、同じくフリーソフトを作って公開している立場から察するに、
言われた側は良い意味で刺激を感じることはあっても怒ったり失礼だと感じることはないと思う。
きっと騒いでいるのはごく一部で、発言の真意を理解している人がほとんどだと思うけど念のため。
0039デフォルトの名無しさん
2006/08/30(水) 09:58:030040デフォルトの名無しさん
2006/08/30(水) 10:04:53考えてみた。
Pythonが簡単で便利すぎて、とくに質問もでないし
話題がない。
0041デフォルトの名無しさん
2006/08/30(水) 10:45:38LL Weekend もつい最近だったし、いろんな意味で話題の新刊も出たし。
特にLL方面から来る人は、他言語出身だから、最初はいろいろ聞きたいことが
あるはず。実際、あちこちのblogで素朴な疑問を抱えた人が見つかる。
じゃあ、何でそういう人がこのスレに質問しに来ないのか。
理由は言うまでもあるまい。
0042デフォルトの名無しさん
2006/08/30(水) 10:47:33見てない人も多い。
0043デフォルトの名無しさん
2006/08/30(水) 10:50:06何を言っても無駄無駄無駄
0044デフォルトの名無しさん
2006/08/30(水) 11:27:390045デフォルトの名無しさん
2006/08/30(水) 11:48:47具体的にどこが専門性高い?
0046デフォルトの名無しさん
2006/08/30(水) 12:02:22あちこちのblogで素朴な疑問を抱えた人が見つかる。
じゃあ、何でそういう人がこのスレに質問しに来ないのか。
理由は言うまでもあるまい。
-> Pythonに疑問があるからといって、2chにくるとは限らないだろ?
0047デフォルトの名無しさん
2006/08/30(水) 12:04:27お勉強はとっくに卒業したひとが、
このスレにたまってるから
発展しないんだな。
0048デフォルトの名無しさん
2006/08/30(水) 12:05:48Pythonの技術的な話だけやれ
0049デフォルトの名無しさん
2006/08/30(水) 12:06:40と、オッサンが申しております
0050デフォルトの名無しさん
2006/08/30(水) 12:06:44おまえもな
0051デフォルトの名無しさん
2006/08/30(水) 12:08:16初心者がやってきたら、教えてあげるくらいしか
楽しみが無いのに、詳しい奴ばっかりで
初心者おいてけぼりで、喧嘩しててもつまんないよな。
0052デフォルトの名無しさん
2006/08/30(水) 12:12:23後半3行の意味が理解できない。できれば日本語で書いて欲しい。
0053デフォルトの名無しさん
2006/08/30(水) 12:12:45↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
0054デフォルトの名無しさん
2006/08/30(水) 12:15:170055デフォルトの名無しさん
2006/08/30(水) 12:16:40引用部分の前後(消されてる部分)を自分で探して読んでちょ。
0056デフォルトの名無しさん
2006/08/30(水) 12:22:534. 文章レベルが小学生並み
0057デフォルトの名無しさん
2006/08/30(水) 12:27:030058デフォルトの名無しさん
2006/08/30(水) 12:27:54自分が話したいことだけでも
・Python3000への移行
・TurboGearどうよ
・SciPyいいよね
・日本語ドキュメントや書籍の誤訳の共有
・unittest使ってる人いる?
・いかにしてPythonで飯を食うのか
だけど何を話しても荒れそうで躊躇しちゃうんだよね。結局無難なQ&A対応に
なってしまう。自分以外の人を見ても、叩かれにくいように1行レスをしてい
る人ばかり。
本当はPythonとHaskellがすごく似てるという話をしたいんだが、荒れること
必至だからなあ。
0059デフォルトの名無しさん
2006/08/30(水) 12:32:410060デフォルトの名無しさん
2006/08/30(水) 12:34:29PythonとHaskellのどこが似ているのか、まずは熱く語ってくれ。
0061デフォルトの名無しさん
2006/08/30(水) 12:43:27Pythonの話だけしてれば荒れない。
そこに、他の要素を持ち込むと利害関係で荒れるのでは。
特定の本の宣伝とか批判とか。
ルールをテンプレにして >2 あたりに張り付けようぜ。
0062デフォルトの名無しさん
2006/08/30(水) 12:46:15そこでチラ裏、もとい、blogですよ。
まあそれはさておき、このスレってずっと前から良くも悪くもQ&Aに終始してるよね。
こういってしまうとアレだけど、2ちゃんねるはSN比が高すぎて議論したくても無理っぽいねえ・・・。
しかも上級者が初心者からの質問を今か今かと口をあけて待ってる状況でもあって、
ぶっちゃけ単なる意見交換はお呼びでない感じだねえ・・・。
まあ、うまずたゆまず、テキトーに頃合いを見計らってネタ振りしてちょ。
0063デフォルトの名無しさん
2006/08/30(水) 12:46:16キチガイが居なくなれば全て丸く収まる。
0064デフォルトの名無しさん
2006/08/30(水) 12:47:400065デフォルトの名無しさん
2006/08/30(水) 12:52:07いつまでも馴れ合いなのが身分相応だろう。
0066デフォルトの名無しさん
2006/08/30(水) 12:53:59そーゆー言葉遣いを避けることから始めない?
こんな言葉、前スレより昔には全然出てこなかったよ。
特定の誰かに言っているのでなくても目障りだからヤメにしようよ。
0067デフォルトの名無しさん
2006/08/30(水) 12:54:45お言葉に甘えて、ちょっとだけ語ると、
Haskellにもほとんどそのままあるのは
・インデントによるブロック構造
・import文を使ったモジュール管理
・関数と変数の名前空間が同一なので、関数合成が容易
・タプル
・リスト内包表記
似ているものを並べると
・イテレータ → 遅延リスト
・不変オブジェクトが基本 → 変数の再代入禁止
・実行の単位が式でなくて文 → IOモナドなど
(最後のはあんまり賛同を得られないかもしれないが、目的は似ていると思う)
PythonistaがHaskellを学ぶと、あんまり似ているんでビックリするんじゃな
いかな。少なくともGuidoはすごく意識しているだろうと思う。
まあとりあえず、このくらいで。
0068デフォルトの名無しさん
2006/08/30(水) 12:57:29それって逆じゃね
0069デフォルトの名無しさん
2006/08/30(水) 12:58:44>こんな言葉、前スレより昔には全然出てこなかったよ。
認定基地外が登場したのは前スレな訳で.
このスレは基地外を隔離するための精神病院ですよ.
0070デフォルトの名無しさん
2006/08/30(水) 13:01:40逆ってどういう意味か良く分からないけど、
自分はHaskellは、Pythonの大きな源流の一つだと思う。
0071デフォルトの名無しさん
2006/08/30(水) 13:08:510072デフォルトの名無しさん
2006/08/30(水) 13:09:28・文字列がシーケンス → 文字列が(不変)リスト
まあ、今Haskellを知ってる人はあんまりいないかもしれないけれど、
Pythonの親戚のようなものとして認識してもらえば、Python生活にも
プラスの影響があったりしないかなあと。
Python3000も、自分にはまた少しHaskellに近くなったものに見える。
0073デフォルトの名無しさん
2006/08/30(水) 13:11:430074デフォルトの名無しさん
2006/08/30(水) 13:12:49それMatzも言ってた。
0075デフォルトの名無しさん
2006/08/30(水) 13:14:43もちろん、無益な議論ではないと思うし、個人的には面白い
でも Haskell 知ってる人は少ないんじゃない?
0076デフォルトの名無しさん
2006/08/30(水) 13:15:07・そもそも本当に似ているか
・似ているなら、Haskellで普及した各種の技法を、Pythonでも利用することは
できるだろうか
まあ2番目の話は、Haskellになれた人がある程度いないと話しづらいけどね。
0077デフォルトの名無しさん
2006/08/30(水) 13:18:11Pythonでさえも希少なのに。
0078デフォルトの名無しさん
2006/08/30(水) 13:19:09>Haskell使ってる人みたことないよ。
普通はそうだよな。
そうじゃないところもあるんだろうけど。
0079デフォルトの名無しさん
2006/08/30(水) 13:20:32似ているのはどちらかというと外面的な要素じゃないかという気がする。
(例:インデント文法)
内面的な設計思想はかなり違うよね。もっとも俺は Haskell のほうは「入門Haskell」に目を
通した程度なので誤解してるかもしれん。
0080デフォルトの名無しさん
2006/08/30(水) 13:24:21シンタックスが似てなくて本当によかったとおもう。
0081デフォルトの名無しさん
2006/08/30(水) 13:39:28いや実は自分もそんなにHaskellに詳しいわけじゃないけどね。
外面的に似ている点が多いのは同意してもらえるかな。
内面的設計思想については、「安全性」という点が似ていると思うんだ。
例えばPythonのクロージャは、他の多くの言語と違い、束縛された変数を書き
換えることができない。つまりクロージャは状態は持てても、それを変更はで
きない。つまり、便利さよりも安全性を取っているということ。
それはHaskellのクロージャも同じ。
他にもPythonは
・代入文は式ではない
・不変オブジェクトの使用が推奨される
ことによって、変数状態の変更によるバグを避けようとしている。
これはHaskellの変数再代入の禁止に近い設計思想だと思う。
>>80
いやむしろ、シンタックス(外面)の方が似ているのが分かりやすくない?
0082デフォルトの名無しさん
2006/08/30(水) 13:49:48Haskell
スレを埋め立てなければならない理由
0083デフォルトの名無しさん
2006/08/30(水) 14:03:57本題にしたかったのは、Python3000と、Haskellの遅延リストの関係だったんだけど。
興味のある人はHaskellを齧ってもらえると嬉しい。
「Python3000がイテレータだらけになったのは、こういうことをやりたかったからか!」
って納得してもらえると思う。
では失礼しました。
0084デフォルトの名無しさん
2006/08/30(水) 14:11:170085デフォルトの名無しさん
2006/08/30(水) 14:18:53結果的に使う目的が似ていることはあるけど、ベースとなる考えも適用範囲もかなり違うと思うぞ。
副作用、型についての考え方は真逆だし。
Python は手続き型言語にうまく関数型言語の道具を導入したなぁという気はするけど、
(手続き色の濃い言語に List conprehension を導入したセンスはけっこう凄いと思う)
関数型言語に似ているとはいえないし、似ている必要もない。
0086デフォルトの名無しさん
2006/08/30(水) 14:29:49> 結果的に使う目的が似ていることはあるけど、ベースとなる考えも適用範囲もかな
> り違うと思うぞ。
そうかな?
実装の方法は全然違うけれど、目的はどちらも「直感性を裏切らない資源の節
約」で共通じゃない?
適用範囲は、イテレータはランダムアクセスできないのが残念だけど、遅延リ
ストだってシーケンシャルなアクセスをするほうが多いんだから、大差なくな
い?
0087デフォルトの名無しさん
2006/08/30(水) 14:38:14これも真逆とは思わないんだよ。
Rubyなどの「勝手気ままな」言語に比べて、Pythonには、副作用を封じ込めよ
うとする明確な意思がある。>>81にも少し書いた。本当はdo構文とPythonのス
テートメントについて話したいんだけど、まとまらないんでやめる。
型については、Pythonは実は単なる型なし言語で終わる予定じゃない。
decoratorは型チェックに使えるし、型変数の導入もずっと検討され続けてる。
ただし、Pythonが関数型だとは全く思わない。関数型の手軽に利用しやすい部
分を輸入しただけだと思う。そこについては全く同意。
0088デフォルトの名無しさん
2006/08/30(水) 14:52:410089デフォルトの名無しさん
2006/08/30(水) 14:53:01できるというだけ。遅延評価のメリットには他にも勝手に memoization されるとか
いろいろある。まぁデメリットも多いし、俺は遅延評価嫌いだけども。
一方で Python の generator はまさに iteration のために導入されたもの。
iteration のことだけを考えれば、 generator のほうが使いやすいし、副作用の
ある言語にうまく適合していると思う。
generator 導入によるデメリットはあまりないし、 fiber 的な使い方ができるとか
応用も利く。
0090デフォルトの名無しさん
2006/08/30(水) 15:00:02あと、今の Python で外の変数を書き換えられないのは、
Python では変数宣言がないので、たまたま外の変数と名前が被ったのか
実際に外の変数を使いたいのか判別できないため。
ML 見てみればわかるけど、何かいいアイデアがあれば書き換えられるように
する方向だよ。
0091デフォルトの名無しさん
2006/08/30(水) 15:05:190092デフォルトの名無しさん
2006/08/30(水) 15:11:440093デフォルトの名無しさん
2006/08/30(水) 15:13:23Python に型が導入されようと Haskell なんかの型安全な言語とは違った形なのは
間違いない。
型安全性を守るため、 Haskell のリストに複数の型の値をごちゃ混ぜにできる日は
来ないだろうし( OCaml の polymorphic variant の導入はあるかもしれないけど)、
利便性のため、Python のリストに単一の型の値しか入れられなくなる日は来ないと思う。
>>91
失礼。議論するにしてももう少し具体的な話じゃないとアレだよな。
0094デフォルトの名無しさん
2006/08/30(水) 15:15:49少しはためになるんジャマイカ
0095デフォルトの名無しさん
2006/08/30(水) 15:35:12意見が違う理由が分かった気がする。自分は最初から遅延リストとイテレータ
と言っていたけど、あなたは遅延評価とジェネレータと言っている。議論の対
象自体が違ってたのだ。だから例えばあなたはジェネレータに特化した議論を
している。視点を共通化したら意見はそう変わらないのじゃないかと思う。
まあ自分は遅延評価が好きなので、自分はPythonがどんどんlazyになっていく
というだけで嬉しい。
>>90
それは参った。英語苦手なんで、MLはきちんと読んでない。そうか、意図的な
ものではなかったのか。ありがとう。しかしショックだ。変更されないことを
願う。
0096デフォルトの名無しさん
2006/08/30(水) 15:40:04これも視点の違いのような気がする。Pythonが型安全な言語になるとは思わな
いが、実用上はHaskellと似たような使い勝手の型システムを導入するのじゃ
ないだろうか。
Haskellは今でも、複数の組み込み型を"|"で区切ったユーザ定義型を作れる。
型なし変数が無くても、これで十分だ。またPythonが型なしを捨てることは無
いだろうが、例えばリストに特定の型しかセットできないようにするやり方は
当然現れると思う。
>>94
コードを貼るともっと長くなっちゃうよ。まあご迷惑をかけしました。
0097デフォルトの名無しさん
2006/08/30(水) 16:14:19くっつけて纏めておける、使い方次第でものすごく便利な入れ物な気がしてきた。
いくらでも再利用できるから、タイプ量かなり減らせるし。
OOP以前って、同じ規模の為に今よりも長く打たないといけなかったのかな。
0098デフォルトの名無しさん
2006/08/30(水) 16:17:41扱うデータ構造を予め規定する。
0099デフォルトの名無しさん
2006/08/30(水) 16:21:05あと一つだけ。HaskellとPythonが共通して持つ、リスト内包表記について。
リスト内包表記は関数型言語らしいのだろうか?mapやfilterの方が関数型的
ではないか?そもそもmapとfilterで済むものに、何で専用の構文を与えなけ
ればならないのか?という批判がLISPERから出ている。
そのメリットは唯一つ、関数型云々ではなく、明示的で分かりやすいことだろう。
Haskellを使ってまず感じたことは、LISPよりずっと明示的で分かりやすいと
いうことだった。LISPにはシンタックスが事実上無いので、どこを見てもおん
なじに見える。しかしHaskellだと構文も演算子もあるので、同じコードでも
ずっと内容が明示的に見える。
Haskellのこの明示性は、Zen of Python の Explicit is better than
implicit.と通じていると思う。Pythonがmapを非推奨にしてリスト内包表記を
導入したのは、ちょうどLISPからHaskellへの進化の歴史をそのままなぞって
いるように見える。
では、今度こそ失礼。
0100デフォルトの名無しさん
2006/08/30(水) 16:21:59>OOP以前って、同じ規模の為に今よりも長く打たないといけなかったのかな。
そんなことはないよ。構造体(とかそれに類似するデータ構造)と
コードのモジュール化をうまくやってやれば、効率の良い再利用可能なライブラリ
なんて幾らでも作れたし、実際にそうやって開発もされてきた。
OOPは、それをより楽に、明示的にできるようにしただけだよ。
0101デフォルトの名無しさん
2006/08/30(水) 16:24:59とりあえず Haskell を少し本格的に使ってみ?
その感じだと、チュートリアル斜め読みしたくらいでしょ。
型安全については使っただけでは実感わかないかもしれないけど、
型安全を守るか、型を導入しつつも型安全を捨てて利便性を取るか、
というのは180度違う考えだよ。
0102デフォルトの名無しさん
2006/08/30(水) 16:25:500103デフォルトの名無しさん
2006/08/30(水) 16:41:20> いや、勝手に同じ意見にされても困るけれども…。
それは大変申し訳ない。
おっしゃるとおり、自分には型の安全が証明されていることのメリットは理解
できてない。保証の無い言語と実用的には変わらないのではないかと思ってい
る。逆に言えば、恥ずかしながらその程度の使い方しかしていないということ
だが。申し訳ない。もっと勉強します。
未熟な議論にお付き合いいただき、大変ありがとうございました。
>>102
上の議論はLISPをSchemeと置き換えても変わらない。自分はもともとSchemer。
0104デフォルトの名無しさん
2006/08/30(水) 17:20:58C言語での話になるけど
Classが無いときから、Struct typedef + ポインタで
色んな実装の仕方でやってきたよ。
クラスがサポートされてる言語のほうが便利なことは確実だけど。
0105デフォルトの名無しさん
2006/08/30(水) 17:37:51それってつまり、C言語でもやろうと思えばOOPできるってことで。
やっぱり「OOP」以前はだらだら書いてたってことなんじゃ?
0106デフォルトの名無しさん
2006/08/30(水) 18:11:54そうだね。
よく似た関数が沢山あった。
0107デフォルトの名無しさん
2006/08/30(水) 18:43:100108デフォルトの名無しさん
2006/08/30(水) 19:34:18class A:
..
..
class B:
..
..
というクラスが2つあったとします。これは同一人物なのでしょうか?
誰か知っている人がいればお願いします
0109デフォルトの名無しさん
2006/08/30(水) 19:36:280110デフォルトの名無しさん
2006/08/30(水) 19:36:30どちらも人物ではないので安心してください
0111デフォルトの名無しさん
2006/08/30(水) 19:39:050112デフォルトの名無しさん
2006/08/30(水) 19:41:00マジレスすると別。
というか,AとBと二つ別々にあるのなら、それが同じなわけないじゃん。
0113デフォルトの名無しさん
2006/08/30(水) 19:43:46わざわざ召還するようなこと言わんでいい
0114デフォルトの名無しさん
2006/08/30(水) 19:45:200115デフォルトの名無しさん
2006/08/30(水) 20:34:12ネタがあるなら。べつに haskell にかぎらず python とかすってるなら
なんでもいいんじゃないですかね。
ただ主な論者は 2,3人とおみうけしますが、
外の人に分かりやすいように(レス番で良いので)
ハンドルつけておいて貰えると有り難いです。
続ける際はご配慮いただければ。
0116デフォルトの名無しさん
2006/08/30(水) 20:34:13海外ではホビーユーザも多いみたいだけど、日本だと研究者が多いんだろうか。
ということで、よろしかったら、このスレの皆さんに教えていただきたいんだけど
1.あなたの身分(職業)は?
2.Python歴は?
3.主に何に使ってる?
4.その他
自分に関して言えば
1.職業プログラマ
2.3ヶ月(苦笑)
3.SciPyで数値計算。あとは使い捨てスクリプト。
4.便利だー。もっと早く知りたかったよ。
0117デフォルトの名無しさん
2006/08/30(水) 20:41:590118デフォルトの名無しさん
2006/08/30(水) 20:50:520119デフォルトの名無しさん
2006/08/30(水) 21:21:38かなり強引な記事だった記憶があるが。
0120デフォルトの名無しさん
2006/08/30(水) 21:25:10世間の動向ばかりを伺うのは言語房ってことでスルーすればいいと思うよ
0121デフォルトの名無しさん
2006/08/30(水) 21:29:47色んな意見を認められる、心の広い人間になりたいね
ただし、色んな人 = キチガイ以外
0122116
2006/08/30(水) 21:37:20こんなに華麗にスルーされたのは初めてだよ。恥ずかしい。
しかし、なんで?
0123デフォルトの名無しさん
2006/08/30(水) 21:40:40でもRubyとの比較は泥沼な気配。
0124デフォルトの名無しさん
2006/08/30(水) 21:42:03スルーされてない書き込みは全部自演だから。
0125116
2006/08/30(水) 21:52:43マジレスすると、前スレでソースコードの秘匿の仕方について話し始めたのは
私なんだけど、あの時はすぐにいろんな意見が返って来て、それなりに盛り
上がったんだけどなあ。
今回のはそんなに変な書き込みだったのかな。分からない。
0126デフォルトの名無しさん
2006/08/30(水) 21:56:30正直、haskell知らないから別のところでやって欲しいなぁ。
0127デフォルトの名無しさん
2006/08/30(水) 22:04:070128すごい発想だな
2006/08/30(水) 22:07:560129デフォルトの名無しさん
2006/08/30(水) 22:15:28前スレを忘れたいので、このままがいい。
勉強になるし、頻度が落ちてもいいから、しばらくはHaskell&Pythonを引っ張ってよ。
0130デフォルトの名無しさん
2006/08/30(水) 22:15:42少しは自分だけの頭で考える訓練したほういい。
0131デフォルトの名無しさん
2006/08/30(水) 22:17:14いや、そんなこと全然思ってない。
ただ、「似てるか似てないか」の先に、何があるのか全くわからないので、
ただ単に「似てるか似てないか」だけを話したいのなら、haskellを知らないと
なんのことやらさっぱりわからないので、別のところでやって欲しいと思っただけ。
誰かが何かを思うことすら禁止したいの?
0132デフォルトの名無しさん
2006/08/30(水) 22:18:410133デフォルトの名無しさん
2006/08/30(水) 22:20:54>前スレを忘れたいので
大きな買い物でもして気晴らしすることをお勧めするよ.
車とか,プラズマテレビとか.
0134デフォルトの名無しさん
2006/08/30(水) 22:21:45勝手に画像使用して「作者です」みたいなことやってるし。
0135デフォルトの名無しさん
2006/08/30(水) 22:22:180136デフォルトの名無しさん
2006/08/30(水) 22:22:210137デフォルトの名無しさん
2006/08/30(水) 22:22:52んじゃ俺も。
1.仕事:R&D的
2.Python歴:えーと、12年ぐらい?(確か1.1か1.2が最初)
3.主な用途:
・プロトタイピング (思いつきをとりあえず形にする)
・数値計算
・語学(多言語テキスト処理とか単語暗記プログラムとか。Unicodeウマー)
・高機能電卓(IDLEウマー)
・日曜プログラミング(フリーソフトウェア的。最近お留守)
4.その他
仕様の拡張はお腹いっぱい
0138デフォルトの名無しさん
2006/08/30(水) 22:23:020139デフォルトの名無しさん
2006/08/30(水) 22:23:34確かに、「だから何」な話題だな。
0140デフォルトの名無しさん
2006/08/30(水) 22:24:57お前らやること無いのかよw
0141デフォルトの名無しさん
2006/08/30(水) 22:26:500142デフォルトの名無しさん
2006/08/30(水) 22:27:08みんぱい買えば?
0143デフォルトの名無しさん
2006/08/30(水) 22:30:330144デフォルトの名無しさん
2006/08/30(水) 22:30:41014528
2006/08/30(水) 22:32:51レスありがとうございます。
うーむ、ソース自体に不具合があるのかな。
展開できるファイルは少なくはないのですが・・・。
ただ1つ気づいた事は、展開できるのはアプリ関係のSISファイルで、
展開できないのはアプリ関係以外のSISファイルみたいです。
とりあえず、sisinfo.py の中の人に聞いてみます。
0146デフォルトの名無しさん
2006/08/30(水) 22:33:35外基地に粘着されるぞ(ww
0147デフォルトの名無しさん
2006/08/30(水) 22:34:03ここは「オレ様」の為のスレですか。
他の人もいるんだし、興味がなければ流しておけば。
0148デフォルトの名無しさん
2006/08/30(水) 22:34:59お前もスルーしろよ。
屈服させなけりゃ気が済まんのか?
0149デフォルトの名無しさん
2006/08/30(水) 22:37:190150デフォルトの名無しさん
2006/08/30(水) 22:37:33はっきり言って、言語ヲタクの知識自慢が垂れ流されるのは勘弁して欲しい。
今でもウザイくらいなのに。
0151デフォルトの名無しさん
2006/08/30(水) 22:38:03はいはい、オレ様オレ様。
0152デフォルトの名無しさん
2006/08/30(水) 22:39:120153デフォルトの名無しさん
2006/08/30(水) 22:39:56はいはい、似てるね.良かったね。
0154デフォルトの名無しさん
2006/08/30(水) 22:39:59お前うざいぞ。
0155デフォルトの名無しさん
2006/08/30(水) 22:40:113.主な用途:urllibで連番画像DL
0156デフォルトの名無しさん
2006/08/30(水) 22:42:14>はいはい、似てるね.良かったね。
.と。が混じってる。
お遊びもほどほどにすれ。
0157デフォルトの名無しさん
2006/08/30(水) 22:43:49キンモ〜☆
0158デフォルトの名無しさん
2006/08/30(水) 22:44:43def A:
..
..
def B:
..
..
という関数が2つあったとします。これは同一人物なのでしょうか?
0159デフォルトの名無しさん
2006/08/30(水) 22:45:14俺は一度も数値計算に使ったこと無いけど、便利なのか。
0160デフォルトの名無しさん
2006/08/30(水) 22:45:38いいえ、違います。
斎藤さんと荒木さんです。
0161デフォルトの名無しさん
2006/08/30(水) 22:46:02インディーズ時代からしばじゅんのファソだった!
0162デフォルトの名無しさん
2006/08/30(水) 22:46:50作者乙
0163デフォルトの名無しさん
2006/08/30(水) 22:47:470164デフォルトの名無しさん
2006/08/30(水) 22:47:520165デフォルトの名無しさん
2006/08/30(水) 22:48:05Whitespaceとかか?
0166デフォルトの名無しさん
2006/08/30(水) 22:48:10車とプラズマテレビは月賦だ。
0167デフォルトの名無しさん
2006/08/30(水) 22:48:32こいつ一人がいなくなれば、かなり落ち着くと俺は思うwwwww
0168デフォルトの名無しさん
2006/08/30(水) 22:49:23そういう奴に限って、変な所で粘り強いから嫌だ。
0169デフォルトの名無しさん
2006/08/30(水) 22:49:31俺も正直そう思ってた・・・
0170デフォルトの名無しさん
2006/08/30(水) 22:49:38貧乏人乙彼!!!
0171デフォルトの名無しさん
2006/08/30(水) 22:52:490172デフォルトの名無しさん
2006/08/30(水) 22:56:22ありがとうございました。
0173デフォルトの名無しさん
2006/08/30(水) 22:59:56実際に計算する部分はCやFortranで書かれたコードを呼ばないとパフォーマンスが出ないんだけど、
データの入出力とかユーザインタフェース(UI)とかはC/Fortranで書くのはめんどい。
故にC/Fortranとの連携が容易で、データ入出力やUIを書くのに便利なPythonが本領を発揮するわけ。
これは数値計算に限った話ではなくて、いわゆるグルー(糊付け)言語が必要かつ有用なケースのひとつ。
処理効率のいいコンポーネントをぺたぺた張り合わせるのに超便利。
しかもPythonの場合はそういうコンポーネントが既にいっぱいある。もうウハウハ。
0174116
2006/08/30(水) 23:21:56自分を入れても少しだけど、書いてくれる人もちらほら。>>116, >>137, >>155 (?)
ありがとうございます。
0175デフォルトの名無しさん
2006/08/30(水) 23:25:27じゃ、まず俺が鬼な!
0176デフォルトの名無しさん
2006/08/30(水) 23:27:52あなた達が望もうが望むまいがこれからpythonは日本で盛り上
がっていきます。くだらないことで相手を皮肉ったり警戒する
のはやめてもっとpythonの中の話をしましょう。
何も分かっていない初心者(キチガイを除く)がここに訪れ
るかもしれません。
それに対して、人によってはこないでくれといらいらするか
もしれません。しかし、初心者には優しく時には厳しく接し
ていきましょう。
これからの日本にはみなさんの技術が必要なんですよ。まじです。
0177デフォルトの名無しさん
2006/08/30(水) 23:58:59プログラムが組めるようになりそうなのは Python かも。
昔 C を勉強したことがあるけど、賢さが足りなかったみたいw
実用プログラムを組めるようになる前に挫折…。
俺にはやっぱりプログラミングは無理だったか orz とあきらめていたけど、
チュートリアルをやってみたら、少し希望が(;´Д`)ハァハァ
まだ 200行くらいの短いスクリプトしか書いたことがないけれど、とりあえず
動くものが簡単に書けるのが(・∀・)イイ!!
それにやっぱり Python は読みやすいです。
スーパーハカーばかりじゃなくて、自分のようなへぼい Python ファンもいるですよ。
0178デフォルトの名無しさん
2006/08/30(水) 23:59:03昔はCでやっててコア部分をアセンブラ直書きしてたんだよね。それと同じこと。
要するにUIの問題。敷居が低くなるのが利点。わかり易さは武器。
0179デフォルトの名無しさん
2006/08/31(木) 00:20:51>計算のコア部分に対してはC呼んるが
それは行列計算をPythonでやっていると言うのか?w
データ入力をやってるんじゃないのか?
つか、コア部分はCを呼び出してとかって話をよく聞くけど、まじ?
俺は断然boost::python派なんだが。
0180デフォルトの名無しさん
2006/08/31(木) 00:25:360181デフォルトの名無しさん
2006/08/31(木) 00:32:551.仕事: SE (ITスペシャリスト)
2.Python歴:1年
3.主な用途: テキスト加工、分析、抽出 (シェルスクリプトで出来ないものについて), CGI
4.その他: C言語的な小文字中心の識別子とスライスの扱い易さに惚れた
0182デフォルトの名無しさん
2006/08/31(木) 00:34:01わざわざ boost で車輪の再発明をする気にはなれんと思うよ。
0183デフォルトの名無しさん
2006/08/31(木) 00:39:56それで、上の演算子の式に使える版が and,or,xorと。
0184デフォルトの名無しさん
2006/08/31(木) 00:43:04論理演算子と算術演算子の違いだよ。
0185デフォルトの名無しさん
2006/08/31(木) 00:50:24> それは行列計算をPythonでやっていると言うのか?w
もちろん。入力データの生成はそれ自体が科学技術計算だからね。
入力データとなる行列を作る処理も行列計算だったりするわけだ。
> つか、コア部分はCを呼び出してとかって話をよく聞くけど、まじ?
もちろんマジ。
例えば NumPy や SciPy には BLAS/LAPACK という有名な行列計算ライブラリの
ラッパーが含まれている。BLAS と LAPACK には参照実装の他に CPU ベンダ製の
最適化バージョンが多数あって非常に効率良く行列計算が実現できる。そういう
標準的なライブラリを Python スクリプトから難なく利用できる。
パラメタ調整→コンパイル→実行の繰り返しが必要な科学技術計算の場合、
コンパイル不要の Python だととっても楽チン。これに慣れるともう
C や Fortran でライブラリの呼び出し部分を書く気にはなれない。
とりあえずコア部分を Python に組み込んで後々楽することを考えるわけだ。
0186デフォルトの名無しさん
2006/08/31(木) 01:08:000187デフォルトの名無しさん
2006/08/31(木) 01:12:51IronPythonがリリースされることによってVBやC#のようにPythonが
MSから正式なサポートが入るのでしょうか?
現在、社内でPythonの普及をさせようと思っていて「将来的にMSのサポートがある」
というと普及にむけて上司をの説得させる大きな材料の一つとなるので、、、
ご存じの方、ご教授お願い致します。
0188デフォルトの名無しさん
2006/08/31(木) 01:25:080189デフォルトの名無しさん
2006/08/31(木) 01:42:26将来のことなんて誰にもわからないよw
少なくともMSが公式にそういうコミットをしたことはないと思う
0190デフォルトの名無しさん
2006/08/31(木) 01:44:41なるほどね、既製品を使うって意味ね。
Cを呼ぶとか難しそうに(?)聞こえたもんで、
カスタマイズした自家製モジュールの話かと誤解してしまった。
0191デフォルトの名無しさん
2006/08/31(木) 01:45:53C++ならboost::python使うと簡単に呼べるよ
0192デフォルトの名無しさん
2006/08/31(木) 01:47:00記号の方も単語の方も、数値にも式相手にも使えるのね。対話モードで使ってみた。
数値対象のときは、bit変換後に評価するかそのまま評価するかで結果が違うけど、
式が対象のときは同様に働くみたいだし。使うシーンで論理〜と算術〜って呼び分けてるんだ。
誤解解いてくれてありがとう。いずれ恥かくか行き詰まるとこだった。
0193デフォルトの名無しさん
2006/08/31(木) 01:52:11>>190 = >>179かと。
0194デフォルトの名無しさん
2006/08/31(木) 03:06:04あーいや、既存のモジュールだけじゃなく
自前のC/Fortranコードを呼ぶための拡張モジュールを自炊することもあるよ。
既存のモジュールのソースコードを見よう見まねでコピペすれば何ら難しくはない。
テキトーに setup.py を書いとくとインストーラまで作ってくれるし便利。
0195デフォルトの名無しさん
2006/08/31(木) 03:10:02まだ誤解しているような気がするぞ。
算術演算子と論理演算子には原則として互換性はないよ。
前者はビット演算、後者は真偽値演算でまったく別物。
0196デフォルトの名無しさん
2006/08/31(木) 06:10:420197デフォルトの名無しさん
2006/08/31(木) 09:03:240198デフォルトの名無しさん
2006/08/31(木) 09:04:06まずビット演算から説明しないとならない気
0199デフォルトの名無しさん
2006/08/31(木) 10:54:25Pythonってプログラムの実行しながら
修正したりできる?
対話モードでプログラムを動かしながら挙動見つつ修正できるのかな?
0200デフォルトの名無しさん
2006/08/31(木) 10:59:39まあ、できる。
0201デフォルトの名無しさん
2006/08/31(木) 11:03:00>>> import yourmodule
>>> yourmodule.yourfunc() # 何かがおかしい。修正する。
>>> import sys
>>> del sys.modules['yourmodule'] # sys.modulesからyourmoduleを削除。
>>> import yourmodule # importしなおす。
>>> yourmodule.yourfunc() # 直ってる。
単にimportし直すだけではダメ。
0202デフォルトの名無しさん
2006/08/31(木) 11:33:35それも面倒なら、簡易統合開発環境Idleから起動するという手もある。
0203デフォルトの名無しさん
2006/08/31(木) 11:41:120204デフォルトの名無しさん
2006/08/31(木) 12:24:38おれは>>200だが、実は聞き方が微妙で困ってた。
どちらにせよ、対話モードで開発もできるし、pdb(デバッガ)もあるし・・・。
まあ、できる。
0205デフォルトの名無しさん
2006/08/31(木) 12:40:21print文を埋め込んでは、対話環境で関数ごとに実行するという原始的デバッグ。
本当はunittestを使うテストファーストにあこがれてるんだけど。
皆さんはどうしてますか?
0206デフォルトの名無しさん
2006/08/31(木) 12:42:27同じく!
0207デフォルトの名無しさん
2006/08/31(木) 12:45:45気持ちを切り替えればそれほど難しくない。
unittestやテスト手法に慣れるための学習時間も必要かも。
テストファーストをはじめると,自然とテストしやすい「切り分け」をする癖がついて
設計の腕も上がると思うよ。
Pythonのコードを難なく読める中級者以上にお勧め。
0208デフォルトの名無しさん
2006/08/31(木) 13:01:12全ての作業がシームレスだよ。
>>205
pythonはC/C++なんかよりも比較的デバッガの必要性は低いけど、
それでもやっぱりデバッガ使った方が作業が早い・・・場合が多い。
0209デフォルトの名無しさん
2006/08/31(木) 13:10:46EclipseのPyDEVのデバッガ使ってるよ。
それまではEmacs + pdbを長年使ってきたけど、最近Eclipseに完全に乗り換えた。
0210デフォルトの名無しさん
2006/08/31(木) 13:20:49デバッガはたしかにいい感じの
あのコード補完機能ってどうよ
0211デフォルトの名無しさん
2006/08/31(木) 13:39:090212デフォルトの名無しさん
2006/08/31(木) 13:49:28これ?
0213205
2006/08/31(木) 15:00:49>>207
ありがとうございます。JUnitなら使ったことがあるので、Pythonでも少しずつ
導入したいと思います。動的言語のほうが単体テストの重要性は高いと思うので。
>>208
私もEmacsなんですけど、まだ全然使いこなしてないです。shellモードで
Python対話環境を立ち上げてるだけです。Emacs上でのPython開発の仕方に
ついて、どこかに良いマニュアルはないでしょうか?
>>209
Eclipseですか!あれは何でも取り込んでいくなあ。今はテキストコンソールでの
開発だから、残念ながら手を出せないんですが。
0214デフォルトの名無しさん
2006/08/31(木) 15:23:200215デフォルトの名無しさん
2006/08/31(木) 15:27:170216208
2006/08/31(木) 16:15:56python-modeつっこんで.emacsから呼ぶだけ。
こういう作業はEmacs一般の話だからあっちこっちに書かれている。
適当にコード書いてC-c C-cすれば新しいバッファに結果が表示される。
pdbはM-x pdbと打って開始。
操作方法は下。
http://www.python.jp/Zope/articles/tips/pdb-howto-2?pp=1
emacsが、「pdb?知らねーよ。」と怒ってきたら、
http://page.sourceforge.net/tricks.htm
の「Running pdb under emacs」という項目などを参考に。
(ようするにパス通すだけ?)
0218デフォルトの名無しさん
2006/08/31(木) 17:02:52>>> x,y = 1,2
>>> x==1 & y==2
False
>>> x==1 and y==2
True
数値相手どころか、式相手でも互換性がないのね。危なかった…。
直感的に分かるのは論理演算子の方でした。
リファレンスマニュアル5.8見ても、なにやってもFalse返したがる算術演算子を
式相手に使う場面は想像できませんでした。
0219デフォルトの名無しさん
2006/08/31(木) 17:09:24優先順位のちがいだな
&, ^, | は == よりも優先されるから、
x==1 & y==2 は、x== (1 & y) ==2 となる
0220デフォルトの名無しさん
2006/08/31(木) 17:11:42互換性どころの問題じゃなく両者は別物です
ビット演算について調べてください
0221デフォルトの名無しさん
2006/08/31(木) 17:23:12の桁についてANDやORを取っているのだ。
それにしても、今の若い人は普通ビット演算なんて知らないんだろうなあ。しみじみ。
0222221
2006/08/31(木) 17:30:130223デフォルトの名無しさん
2006/08/31(木) 17:32:05ずっとperlとawkとsedだったけど、ここらで一念発起してみるか
0224デフォルトの名無しさん
2006/08/31(木) 17:50:50「数値」と「式」という言葉の使い分けが気になっていたのだが、
真理値(True, False)の意味で「式」と言ってるんだね。
(ふつう式といったら数値も含む。)
&, | は整数値に対してのみ使う。float や complex は NG。
一方、and, or は多くの場合、真理値に対して使う。
比較演算子の値(比較の結果)は真理値なので and, or を使えばよい。
また、Python では伝統的に 0, None, 空タプル、空リスト、空辞書などは False 扱い、
それ以外のオブジェクトは True 扱いされる。
したがって、and, or は何でもかんでも受け付ける。
0225デフォルトの名無しさん
2006/08/31(木) 17:57:04python 付属の python-mode.el (SVN-34960)と
emacs 付属の python.el (CVS-1.45)の
どっちが最新なの?
どこがどうちがうの?
単純にどちらを使うべきなの?
0226デフォルトの名無しさん
2006/08/31(木) 18:05:35バージョンなんて気にしたことナカタ
ぶっちゃけどれでも同じ
0227208
2006/08/31(木) 18:27:07http://gunnarwrobel.de/wiki/Python.html
の言うことには、python-mode.elは今んとこスタンダードで
python.elは新しく開発されたものとか。
ファイル単位でどっちが最新かって話なら、日付を。
実はおれもあまり気にしたことがなかった。
おれのLinuxでは、pythonファイル開くと勝手にpythonモードになるからな。
これはpython.elだろな。
んで、最近Cygwin上のemacsにはpython-mode.el入れた。
0228デフォルトの名無しさん
2006/08/31(木) 18:43:450229デフォルトの名無しさん
2006/08/31(木) 18:45:220230デフォルトの名無しさん
2006/08/31(木) 18:49:30今も昔もビット演算なんて知らないのがフツーだと思われ。
0231デフォルトの名無しさん
2006/08/31(木) 18:54:33そして知ろうとしないならそれで構わないが
& と | のことは 218 は今後100年は触れないようにして欲しい
0232デフォルトの名無しさん
2006/08/31(木) 18:58:110233デフォルトの名無しさん
2006/08/31(木) 19:06:17俺はJavaも使うのでPythonの環境移行はJavaついでという感だね。
で、PyDEVのデバッガ使える。いい。
コード補完はオマケと思って過度な期待をしなければ結構便利。
0234デフォルトの名無しさん
2006/08/31(木) 19:11:18a == b == c って書けたんだ…
これまで(a == b) and (a == c)って書いてたよorz
というわけで>>218の例をやってみる。
>>> x,y = 2,3
>>> x == 2 & y == 2
True
なるほどね。
0235デフォルトの名無しさん
2006/08/31(木) 19:14:40アセンブリ言語も地質学的昔ということなんだろうか。
#組み込み系とか制御系ではまだまだ現役なんだけどな。
0236デフォルトの名無しさん
2006/08/31(木) 19:16:12(a == b) and (a == c) と書くほうが俺は好きだ。
0237デフォルトの名無しさん
2006/08/31(木) 19:16:440238デフォルトの名無しさん
2006/08/31(木) 19:19:580239デフォルトの名無しさん
2006/08/31(木) 19:41:21>>> 1+3j.real
1.0
>>> 1+3j.imag
4.0
>>>
がしばらく理解できなくて恥をかいた.
0240デフォルトの名無しさん
2006/08/31(木) 19:49:08・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・なるほどw
0241デフォルトの名無しさん
2006/08/31(木) 19:56:560242デフォルトの名無しさん
2006/08/31(木) 19:57:300243デフォルトの名無しさん
2006/08/31(木) 19:58:320244デフォルトの名無しさん
2006/08/31(木) 20:02:070245デフォルトの名無しさん
2006/08/31(木) 20:02:30かっこ わるい
0246199
2006/08/31(木) 20:07:363Dプログラミングやっててどうにも動作の仕組みがわからないんで
動作中にそれぞれ値がどうなってるか見てみたかったんです
ここで聞くのはスレ違いにも程があるっていうのはわかっていたんですが
使ってる3Dライブラリが海外産なのでドキュメントも全て英語という始末
解読を試みたものの時間がかかってかかってorz
変な質問でしたが丁寧に答えてくださり本当に助かりました
とりあえずデバックで試してみます
0247デフォルトの名無しさん
2006/08/31(木) 20:18:36基本はレイトレーシング。光学計算をやればよろしい。
# みんPy立ち読みした。明らかにはじPyの二番煎じ。コーデックの説明なんてPython依存じゃなかったし。
0248デフォルトの名無しさん
2006/08/31(木) 20:40:31なんて3Dライブラリ?
0250199
2006/08/31(木) 21:13:37Panda3Dって奴です
http://www.panda3d.org/
フリーのライブラリとしては凄いのではと思います
チュートリアル、リファレンスがかなり豊富で
ディズニーとカーネギー大学の共同開発ってのもミソかもしれません
元はディズニーのMMOゲームのエンジンとして開発されたようです
http://toontown.disney.co.jp/
ただ問題はPython弄ってるみたいなんですよね
なのでこのスレ的にはちょっと敬遠されるかもしれません
確かZopeというのも弄ってたので嫌われてるという話でしたが・・・。
0251デフォルトの名無しさん
2006/08/31(木) 21:29:02Pythonベースのシステムが全部嫌われるわけじゃない。
Zopeについては色々といいたいことがあるが、
Zopeが日本に紹介された初期に Python == Zope用の拡張言語 というような風潮があったことがあって、
それがPythonを「プログラミング言語」として利用していた層には受けが悪かったという話。
今ではそんな話も過去のこと。
なので、Panda3DぜんぜんOKと思われ。
俺はtrueSpaceというPythonでスクリプトを書ける3Dツールを使っていたこともあるので、
グラフィックス系には興味ある。
0252デフォルトの名無しさん
2006/08/31(木) 21:31:330253デフォルトの名無しさん
2006/08/31(木) 21:33:32ちょwwwwwここすげぇwwwwwwww
0254デフォルトの名無しさん
2006/08/31(木) 21:50:24ふむ・・・、そうですか有難うございます
>>252
バレバレですね
個人的にはスレ沈めたく無いんで日記紛いにorz
気に入ったスレを覗くと4年前くらいのログが出てくるっていう化石ぶり
そう考えるとちょっと書き込みなかったくらいじゃ沈まないですよねw
0255デフォルトの名無しさん
2006/08/31(木) 21:53:02いじってるというのは Python の処理系自体に手が入っているってこと?
0256デフォルトの名無しさん
2006/08/31(木) 22:11:130257デフォルトの名無しさん
2006/08/31(木) 22:13:42宿題スレで「PythonとHaskellがどんだけ似てるか」って作文書かせればいいんだ!
0258デフォルトの名無しさん
2006/08/31(木) 22:15:09インタープリタに手が入ってるようです
どこまで手が入ってるかは解かりませんorz
呼び出しも「python」ではなく「ppython」として行いますし
Pythonとしては認識されないようです(Py2exe等が使えない)
0259デフォルトの名無しさん
2006/08/31(木) 22:16:37ごめん、無理。このスレで、もう少しHaskell人口が増えたらね。それまでには
私も、もっときちんと勉強します。>>85氏には深く感謝。
0260デフォルトの名無しさん
2006/08/31(木) 22:41:440261デフォルトの名無しさん
2006/08/31(木) 22:43:313Dと言えばPoserもPythonでスクリプティングできるようになってるね
0262デフォルトの名無しさん
2006/08/31(木) 22:49:57情報サンクス。でもって、>>250の話に戻るけど、
インタプリタに手が入っているからといってそのソフトウェアが
敬遠されるとか嫌われるとかってのは無いんじゃないかなあ。
別の理由ならあるかも知れず。
(実は俺もインタプリタに手を入れてる。
CPython原理主義の鉄砲玉に撃たれて死ぬかもw)
0263デフォルトの名無しさん
2006/08/31(木) 22:50:25逃げられたようでもあり.
0264デフォルトの名無しさん
2006/08/31(木) 22:59:10本来のPythonのことをちゃんと知った上で特定の環境のことを話すのならば嫌われないと思う
(たぶん)
0265デフォルトの名無しさん
2006/08/31(木) 23:20:08知らないことや分からないことはちゃんと真摯に質問すればいいわけだし。
普通の人は普通にしていればいい。
おかしい人は、すこし気をつけた方がいい。
0266デフォルトの名無しさん
2006/09/01(金) 00:03:490267デフォルトの名無しさん
2006/09/01(金) 00:31:42おおそうですか。
以前試したときはEclipseが重かったのでそれっきりだったが
今度考えてみます。
0268デフォルトの名無しさん
2006/09/01(金) 02:43:11ループとか関数定義の終わりにインデントを戻そうとバックスペースを入力すると
警告ウインドウが出てうざい
正しいインデントの抜けかたがあるのでしょうか?
0269デフォルトの名無しさん
2006/09/01(金) 06:57:30それとわすれちゃいけないBlender
0270デフォルトの名無しさん
2006/09/01(金) 10:47:57xyzzyなんてのもpy-modeも使ったこと無いから知らんが、
警告ウィンドウに何がかかれているのかも示すのが正しい質問の仕方じゃないかな?
0271デフォルトの名無しさん
2006/09/01(金) 11:44:44あー俺も Python は xyzzy の py-mode でやっているけど、あの警告少し
うるさいね。自分で修正したいけど、どうやっていいのかわかんない orz
0272デフォルトの名無しさん
2006/09/01(金) 11:51:52Close Block: (そのブロックの先頭の内容)
と出ます
0273デフォルトの名無しさん
2006/09/01(金) 11:54:31知らないんなら口出ししなくていいよ
0274デフォルトの名無しさん
2006/09/01(金) 11:58:45オマエモナー
0275デフォルトの名無しさん
2006/09/01(金) 12:05:09こういうのは、回答しやすくするためのアドバイスなんだから、いいと思うん
だけどな。
>>269 >>271
私もちょっと使ってるけど、変え方は分からない。まあ気にならないけど。
↓のスレで、親切な人がコードを改造してくれることがあるから、聞いてみたら?
xyzzyの使い方が分からぬやし励ましあえその9
http://pc7.2ch.net/test/read.cgi/software/1143621919/l20
0276デフォルトの名無しさん
2006/09/01(金) 12:07:43使ってる奴なら100%わかるだけの情報が入ってるんだが
0277デフォルトの名無しさん
2006/09/01(金) 12:10:190278275
2006/09/01(金) 12:17:59>>276
まあそれは分かるよ。自分も使ってるから。だけどね、
・前スレのloggingみたいに、使ってない人が親切で調べてくれることがある
・はたから見て、いかにも情報の足り無そうな(実際はそうでなくても)質問
があると、他の質問者が「ああこんなんで良いのか」と思ってしまう
まあ細かい話だな。すまん。
0279デフォルトの名無しさん
2006/09/01(金) 12:23:00>・はたから見て、いかにも情報の足り無そうな(実際はそうでなくても)質問
> があると、他の質問者が「ああこんなんで良いのか」と思ってしまう
実際に情報が足りない質問があったときに突っ込めばいいだけだろ。
いちいち情報が足りてる質問に突っ込む必要があるのか?
0280デフォルトの名無しさん
2006/09/01(金) 12:28:030281デフォルトの名無しさん
2006/09/01(金) 12:29:030282275
2006/09/01(金) 12:30:46ということでこの話は自分には判断できない。すまん。
0283デフォルトの名無しさん
2006/09/01(金) 12:35:52>>272で書かれた後に、書く必要無いなどとわざわざ突っ込む必要があるのか?
0284デフォルトの名無しさん
2006/09/01(金) 12:40:08>>270のような馬鹿を牽制するためにね。
0285デフォルトの名無しさん
2006/09/01(金) 12:42:27君さ、何をしたいわけ?
>>282で終わった話題でしょ。
個人攻撃に持ち込みたいのかな。
0286デフォルトの名無しさん
2006/09/01(金) 12:44:32>個人攻撃に持ち込みたいのかな。
ププププ
0287デフォルトの名無しさん
2006/09/01(金) 12:45:33↓次の話題どぞー。
0288デフォルトの名無しさん
2006/09/01(金) 12:46:350289デフォルトの名無しさん
2006/09/01(金) 12:46:430290デフォルトの名無しさん
2006/09/01(金) 12:48:130291デフォルトの名無しさん
2006/09/01(金) 12:48:420292デフォルトの名無しさん
2006/09/01(金) 12:49:42よっぽど悔しかったのか。
0293デフォルトの名無しさん
2006/09/01(金) 12:50:16メッセージを見てる人間はこんなもの示してもしょうがないと思うだろうが、見てない
人間にとってはそんなことわからない。メッセージを見れば俺にもわかるかもしれない
と思うのは自然な感情だろう。Pythonのスレで質問する以上、そういう人にも配慮して
質問するのが礼儀というもの。そういうことに突っ込まれただけで逆切れするのはとても
みっともない。質問者だったら多少でも他人の頭脳を使わせたことに敬意を表する
べきだろう。
0294デフォルトの名無しさん
2006/09/01(金) 12:50:28↓次の話題どぞー。
0295デフォルトの名無しさん
2006/09/01(金) 12:52:12俺質問者じゃないけど。
つか、必死すぎ。
0296デフォルトの名無しさん
2006/09/01(金) 12:52:41読めなかったら氏ねや(ぷぷぷぷぷ
0297デフォルトの名無しさん
2006/09/01(金) 12:54:270298デフォルトの名無しさん
2006/09/01(金) 13:00:27>質問者だったら多少でも他人の頭脳を使わせたことに敬意を表する
>べきだろう。
鈴木さん、ですか…?
0299デフォルトの名無しさん
2006/09/01(金) 13:06:18windowsのエディタなんだね。
>275 さんの指摘のようにエディタの設定の疑問は、使ってる人達に質問するのが正解だとおもいますよ。
0300デフォルトの名無しさん
2006/09/01(金) 13:11:030301デフォルトの名無しさん
2006/09/01(金) 13:25:26オッサンでピザなツンデレは疎ましいだけだ
0302デフォルトの名無しさん
2006/09/01(金) 13:34:49& を誤用して間違いに気づいていないままな件について
0303デフォルトの名無しさん
2006/09/01(金) 13:39:56俺も最初そう思ったけど、読み返してみたら、ああ分かってるんだなと思った。
だって、a == b == c という式になっていると気づいてるんだから。
b が (2 & y)になっているわけね。
0304デフォルトの名無しさん
2006/09/01(金) 14:45:48任意のファイルにリダイレクトできませんかね?
例えるなら賢いedで地道に書いていくようなイメージで。
0305デフォルトの名無しさん
2006/09/01(金) 15:02:45うーん、お求めの答えとは違うんだけど、
自分は対話環境を、Emacsのシェルモードで実行している。
これだと入力値と出力値をいくらでもさかのぼって取得できる。
しかし、そういうのじゃ駄目なんだよね?
0306デフォルトの名無しさん
2006/09/01(金) 15:23:540307デフォルトの名無しさん
2006/09/01(金) 15:38:26http://www.ics.uci.edu/~dock/manuals/IPython/node6.html#SECTION00065000000000000000
0308デフォルトの名無しさん
2006/09/01(金) 16:44:48xyzzyのpy-modeは知らんが、emacsのpython-modeだと、passでブロックを明示的に閉じる。
0309デフォルトの名無しさん
2006/09/01(金) 17:08:26俺だったら script コマンドを使うかも。
0310デフォルトの名無しさん
2006/09/01(金) 17:27:00おお!xyzzyでもpassでブロックが閉じる!
0311270
2006/09/01(金) 19:27:44すげー伸びてると思ったら燃料投入したのは俺かよw
荒れてしまって申し訳ない。
いやぁみんな勘違いしているけど、実は268の時点では、
それが何依存なのかの切り分けすらできないんだよね、冷静に見ると。
ただ、>>272みたいにして書いてもらえれば、
「xyzzyぃ?んなおもちゃの話知るか!」って俺みたいな人間でも、
Lispファイルくらいは見てみるかってもんで、
「py-mode.lの1268-1269行のif文をカラにしてみれば?」って提案はでてくるわな。
動作確認はしないけどw
0312デフォルトの名無しさん
2006/09/01(金) 20:01:53バックスペースじゃなくて、左にシフトの操作じゃだめなのか?
0313270
2006/09/01(金) 20:24:33やっぱ1269行目の
(error "Closes block: ~a" base-text))))))
を
())))))
に書き換えたらきっとお望みの動作だね。
バイトコンパイルもお忘れなく。
いやー、残念ながら罵り合いは最後まで何の役にも立ちませんでしたねーw
0314デフォルトの名無しさん
2006/09/01(金) 20:26:16おつかれ。GJ!
0315デフォルトの名無しさん
2006/09/01(金) 20:58:510316デフォルトの名無しさん
2006/09/01(金) 21:04:330317デフォルトの名無しさん
2006/09/01(金) 21:07:320318デフォルトの名無しさん
2006/09/01(金) 21:15:340319デフォルトの名無しさん
2006/09/01(金) 21:20:320320デフォルトの名無しさん
2006/09/01(金) 21:36:04最後の一行書かなきゃいい人だったのに惜しかったねw
ともあれご苦労様でした
0321デフォルトの名無しさん
2006/09/01(金) 21:39:34乙w
0322デフォルトの名無しさん
2006/09/01(金) 21:51:42ありがとうございます
xyzzy板の方で聞いたら
ツール > 共通設定 > さまざま
で「エラーの表示をマイルドに」をチェックするといちいち警告ウインドウが開かなくなるようです
0323デフォルトの名無しさん
2006/09/01(金) 21:56:12良い人じゃないかもしれないが、罵り合いより役に立つ情報だったのは確か。
0324デフォルトの名無しさん
2006/09/01(金) 21:58:490325234
2006/09/01(金) 22:19:39む、すまん俺は>>218とかの人とは別の部外者だ…
ややこしくしてスマンス
せっかくなのでpythonの話。Djangoだけど。
setting.pyではado_mssqlも選べるような事書いてあるけど
実際やってみると片っ端からエラーでだめぽですな。
せっかくpyISAPIeでIISと繋がったのになあ
つーかおとなしくLinuxにしろって話かなw
0326デフォルトの名無しさん
2006/09/01(金) 22:28:07別にLinuxにしなくてもIISやめるだけで幸せになったりしないかな
0327デフォルトの名無しさん
2006/09/01(金) 23:37:49俺にはさっぱり理解できないが、確かにそのハカーのチューニングしたIISは
超安定動作&パフォーマンス良好だった。
pyISAPIeは知らなかたよ。今は IronPythonで ASP.NETが面白い。
0328デフォルトの名無しさん
2006/09/01(金) 23:57:520329デフォルトの名無しさん
2006/09/02(土) 00:08:30「みんなのPython」って本買いました!まだ半分くらいしか
読んでませんが、分かりやすいですねこれ。(もうひとつの、
動物の絵が表紙の奴は難しかった…。)ただ、「CとかJavaでは〜」
って言われても何のことか分からないのが悲しい…。
ところで、スライスというものはなぜ [ここから:ここまで] の
「ここまで」 の部分が目的の番号に1を足さないといけないんですか?
(例)
>>> a = [1, 2, 3, 4, 5]
>>> a[1:3]
[2, 3]
>>>
0から始まるのも間違えやすそうですが、それはまぁ、注意すれば
覚えられそうですが、スライスは覚えにくいです。
本だと48ページあたりですが、理由は書いてありませんでした。
0330デフォルトの名無しさん
2006/09/02(土) 00:10:35前スレあたりに回答あり
0331デフォルトの名無しさん
2006/09/02(土) 00:20:48>s[a:b] は始点が位置 a で
>長さが b-a になるようになってるんよ
>長さnの列全体(つまり0からn-1まで)は[0:n]と表記できることから想像できんかね?
0332デフォルトの名無しさん
2006/09/02(土) 00:37:52とりあえずエレメントとか属性とか無茶ですが
以下のようなXMLがあったとします。
<?xml version = "1.0" encoding = "utf-8"?>
<person>
<aperson no = "123">
<name>Yamada Hanako</name>
<age>18</age>
<sex>female</sex>
</aperson>
<aperson no = "124">
<name>aaa Hanako</name>
<age>18</age>
<sex>female</sex>
</aperson>
</person>
これから、例えばaperson no = "124"のageのデータを取りたい場合
どうやれば効率がよいでしょうか?
思いついたのは、
lst = root.findall('aperson')
for item in lst:
if item.get("no") = "124":
124root= item
break
print 124root.find('age').text
ぐらいなんですが;;
findの後のxpathって属性まで検索対象にできないんですよね?
よく分からないけどlst = root.findall('aperson@no=124')みたいに
0333デフォルトの名無しさん
2006/09/02(土) 00:51:440334デフォルトの名無しさん
2006/09/02(土) 01:34:43Web(つかhttp)サーバというのはけっこうでっかい車輪だと思うが。
てか旧はじパイ読み始めたばっかの超初心者なんだが、出来合いのんあるのと違うの? > Python製httpd
0335デフォルトの名無しさん
2006/09/02(土) 01:42:43XPath 自体は属性値も扱えるはずだけど、ElementTree だとエラーになるね。
PyXML 0.8.4 だとこんな↓感じで使える。
from xml import xpath
from xml.dom.ext.reader import Sax2
reader = Sax2.Reader()
doc = reader.fromStream(file("test.xml"))
root = doc.documentElement
print xpath.Evaluate("aperson[@no='124']", root)
print xpath.Evaluate("aperson[@no='124']/age", root)
print xpath.Evaluate("aperson[@no='124']/age/text()", root)
>>334
出来合いのん:
import BaseHTTPServer
import SimpleHTTPServer
import CGIHTTPServer
0336デフォルトの名無しさん
2006/09/02(土) 01:51:39どういう点でいいんだい?
そこら辺詳しく
0337デフォルトの名無しさん
2006/09/02(土) 01:55:50意味が分からんのだが(苦笑
0338デフォルトの名無しさん
2006/09/02(土) 02:06:10これか?
ttp://yimado.s-lines.net/doc/why_python.html
0339デフォルトの名無しさん
2006/09/02(土) 02:09:03ハカーは言語化するのを疎う傾向にあるので
*方言なしの*コードで語れることに惹かれるのだろう。
0340デフォルトの名無しさん
2006/09/02(土) 02:16:07バージョンが上がるたびに標準語が変化して、
取り残された古参ユーザがしゃべっているのはコテコテの方言、
という状況にある気がするがw
0341デフォルトの名無しさん
2006/09/02(土) 02:19:08何やっても大抵綺麗に書ける。
凄いけど動作原理が不明とかあんまない。
0342デフォルトの名無しさん
2006/09/02(土) 02:32:27前者をhackする奴が何処に居るんだ?w
それは揚げ足取りの言葉遊びにすぎないだろw
0343デフォルトの名無しさん
2006/09/02(土) 02:32:35なんか「ハック」の理解の仕方が俺と違うな・・・。
0344デフォルトの名無しさん
2006/09/02(土) 02:37:00Perlみたいな言語をやっているとこうなる例。
0345おかあさん
2006/09/02(土) 03:01:220346デフォルトの名無しさん
2006/09/02(土) 03:02:40Zopeの精神....Zen(禅)
これでわかりましたか?
0347デフォルトの名無しさん
2006/09/02(土) 03:28:040348デフォルトの名無しさん
2006/09/02(土) 03:38:02Zopeの言い訳....「一箇所にまとまっているんだから、それと同じ機能なんてすぐに勝手に書けるでしょ?」
これでわかりましたか?
0349デフォルトの名無しさん
2006/09/02(土) 05:59:410350デフォルトの名無しさん
2006/09/02(土) 07:28:58> XPath 自体は属性値も扱えるはずだけど、ElementTree だとエラーになるね。
XPath のサブセットゆえに要素名の検索しかできないっぽい。
http://effbot.org/zone/element-xpath.htm
0351デフォルトの名無しさん
2006/09/02(土) 09:39:42そういう些末なハックに気を取られないで本質的なハックに専念できるので、ハッカーに
とっては生産性が向上するんですよ
0352332
2006/09/02(土) 10:25:46やっぱりそうですか。ありがとうございます。
じゃあアルゴリズムは332に書いてるようなのでいいでしょうか
データを増やしたらちょっと遅かったもんで。。
それともElementTreeだから遅いんですかね
もうちょっと調べてみます。
0353デフォルトの名無しさん
2006/09/02(土) 11:07:21IronPythonでASP.netについてkwsk
IronPython出始めの頃少し調べたんだけど結局やり方が分からんかった
0354デフォルトの名無しさん
2006/09/02(土) 11:16:51XPath を使いたいなら属性値の判定も含めて XPath でやるのが速いと思われ。
でもって、速度も追求するなら C で書かれた処理系の Python バインディングが必要だろうね。
俺は未見だけど ElementTree のホームページで紹介されてる lxml が良さげなのでは。
インタフェースは ElementTree 互換らしい。findall() もかなり速いっぽい。
http://codespeak.net/lxml/performance.html#tree-traversal
0355デフォルトの名無しさん
2006/09/02(土) 12:52:57whileとforの速度差にこだわるのはハッカーですか?
0356デフォルトの名無しさん
2006/09/02(土) 13:01:33それはヲタ
0357デフォルトの名無しさん
2006/09/02(土) 14:01:190358デフォルトの名無しさん
2006/09/02(土) 14:10:29これからPythonのプログラミングについて、勉強しようと思っています。
Pythonをインストールし、Python関連のHPも色々見てみましたが、
VCのようなデバッグ方法(GUI上でステップ実行等をする)がイマイチわかりません。
申し訳ないですが、VCのようにデバッグする方法を教えて下さい。
0359デフォルトの名無しさん
2006/09/02(土) 15:06:440360デフォルトの名無しさん
2006/09/02(土) 15:58:47Komodoを使うといいんじゃないかな。有料。
0361デフォルトの名無しさん
2006/09/02(土) 16:11:44eclipseじゃできないの?
0362デフォルトの名無しさん
2006/09/02(土) 16:25:120363デフォルトの名無しさん
2006/09/02(土) 16:27:12PyDevでもできた。
0364デフォルトの名無しさん
2006/09/02(土) 16:59:150365デフォルトの名無しさん
2006/09/02(土) 17:28:11IDEとか軟弱者の使うモノ。
0366デフォルトの名無しさん
2006/09/02(土) 17:42:34IDEとか軟弱者の使うモノ。
↓
漢はVimで書けよ。
Emacsとか軟弱者の使うモノ。
↓
漢はnviで書けよ。
Vimとか軟弱者の使うモノ。
↓
漢はedで書けよ。
nviとか軟弱者の使うモノ。
↓
漢はechoで書けよ。
edとか軟弱者の使うモノ。
0367デフォルトの名無しさん
2006/09/02(土) 18:30:58なんでおまいらそんな低次元のことで張り合ってるの?
0368デフォルトの名無しさん
2006/09/02(土) 18:35:49Rubyとか軟弱者の使うモノ。
↓
漢はC++で書けよ。
Pythonとか軟弱者の使うモノ。
↓
漢はCで書けよ。
C++とか軟弱者の使うモノ。
↓
漢はasmで書けよ。
Cとか軟弱者の使うモノ。
↓
漢はbinaryで書けよ。
asmとか軟弱者の使うモノ。
0369デフォルトの名無しさん
2006/09/02(土) 18:37:17そこはJavaだろw
0370デフォルトの名無しさん
2006/09/02(土) 19:17:37ちょっとしたスクリプトとか設定ファイルは
cat > foobar.sh
とかするけど、pythonの場合はインデント厳しいからむりぽ。
0371デフォルトの名無しさん
2006/09/02(土) 20:10:270372デフォルトの名無しさん
2006/09/02(土) 20:14:22>漢はbinaryで書けよ。
>asmとか軟弱者の使うモノ。
プリミティブなツールを使うのが漢らしいと考えるのは
ちんぽがでかけりゃ女にモテるらしいと考えるようなものだ。
0373デフォルトの名無しさん
2006/09/02(土) 20:16:510374デフォルトの名無しさん
2006/09/02(土) 20:44:50False
>>> isinstance(368, Hacker)
False
0375デフォルトの名無しさん
2006/09/02(土) 21:46:19>>> isinstance(self, Hacker)
Traceback (most recent call last):
File "<stdin>", line 1, in ?
NameError: name 'self' is not defined
>>> isinstance(375, Hacker)
Traceback (most recent call last):
File "<stdin>", line 1, in ?
NameError: name 'Hacker' is not defined
0376341
2006/09/02(土) 22:23:50"hack"って英単語って切り刻むとかずたずたにするとか、
そー言う含みもあるから、実装依存だけど強烈に早いとか
言語の内部構造の性質を利用した抜け道とかって捉えてたんで、
ある意味でpythonに"hack"は要らないねーって思うて。
quick hackなんて言葉は、単純にできればそうしたいけど、
こういう切り抜け方があるよって響きではなかろうかと。
ていうかみんな、そんな煽らないでくれよ……
0377デフォルトの名無しさん
2006/09/02(土) 22:44:11"my name is #{$ruby}" #=> "my name is RUBY"
これのPythonでの書き方は?
0378デフォルトの名無しさん
2006/09/02(土) 22:45:450379デフォルトの名無しさん
2006/09/02(土) 22:55:54結構便利だよ。ヒアドキュメントに埋め込んだりもできるし。
0380デフォルトの名無しさん
2006/09/02(土) 23:10:530381デフォルトの名無しさん
2006/09/02(土) 23:11:23ruby = 'RUBY'
'my name is %(ruby)s' % vars()
0382デフォルトの名無しさん
2006/09/02(土) 23:49:20そこは python = 'python' でそ
0383デフォルトの名無しさん
2006/09/02(土) 23:58:36>>> 'my name is %(ruby)s' % vars()
Traceback (most recent call last):
File "<stdin>", line 1, in ?
KeyError: 'ruby'
0384デフォルトの名無しさん
2006/09/03(日) 00:03:060385デフォルトの名無しさん
2006/09/03(日) 00:10:130386デフォルトの名無しさん
2006/09/03(日) 00:12:02SyntaxError: can't assign to literal
0387デフォルトの名無しさん
2006/09/03(日) 00:13:12楽しそうだね。
0388デフォルトの名無しさん
2006/09/03(日) 00:50:14print unicode(text,'cp932').encode('utf-8')
これで出来たけど、いちいちやるのはめんどくさい。
ロケール設定すれば良いかと思ったけど、出来なかった。
locale.setlocale(locale.LC_CTYPE,('ja_JP.cp932'))
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "/usr/lib/python2.4/locale.py", line 381, in setlocale
return _setlocale(category, locale)
locale.Error: unsupported locale setting
0389358
2006/09/03(日) 00:53:47Komodo、eclipse、PythonWin、PyDevを
それぞれ試してみます。
0390デフォルトの名無しさん
2006/09/03(日) 01:05:49入力時に一括してcp932でデコードし、出力時に一括してutf-8でエンコードすればよい。
たとえば
import codecs, sys
file = codecs.open(filename, encoding="cp932")
text = file.readline()
などとして読み込む。この時点で text は unicode オブジェクト。さらに
Writer = codecs.getwriter("utf-8")
stream = Writer(sys.stdout)
print >>stream, text
などとして標準出力に印字する。
標準出力が端末のときは自動的にロケールに沿ってエンコードされるが
標準出力がファイル等にリダイレクトされている場合には
デフォルトエンコーディング(多くの場合 ascii)でエンコードされる。
よって上記のように print >>stream, ... 形式を使うのが安全確実。
0391デフォルトの名無しさん
2006/09/03(日) 01:07:190392デフォルトの名無しさん
2006/09/03(日) 01:24:43ありがとー。
0393デフォルトの名無しさん
2006/09/03(日) 02:32:43BitTorrent がそうだと検索していて知りましたが、ほかにはあまり
見当たりません(何かあります?)。
何もそこまで大規模なものではなく、Widget とか、ちょっとした
ユーティリティレベルのものでいいのですが、可能なのでしょうか?
Tkinter というものを使えばできそうだと知りましたが、やはり
Win アプリなら VC などでやるべきでしょうか?
0394デフォルトの名無しさん
2006/09/03(日) 02:33:54問題なく可能
0395デフォルトの名無しさん
2006/09/03(日) 04:03:130396デフォルトの名無しさん
2006/09/03(日) 05:02:190397デフォルトの名無しさん
2006/09/03(日) 07:58:24悔しいが認めざるを得ないが…
スモールツールなら。
0398デフォルトの名無しさん
2006/09/03(日) 08:11:440399デフォルトの名無しさん
2006/09/03(日) 08:37:12Python には IDLE という統合環境が付いてくる。
これは Tkinter を使って書かれていて Windows でも普通に動く。
実用的な Windows アプリのひとつだと思われ。
Tkinter のいいところ:
・Windows でも Linux でも Mac でも同じように動く。
・Python に標準で付いてくる。
・シンプル。
見た目や細かい挙動にこだわらないならおすすめの GUI ライブラリだよ。
0400デフォルトの名無しさん
2006/09/03(日) 09:07:46IDLEの中をいじればよいのかもしれんがめんどい。
0401デフォルトの名無しさん
2006/09/03(日) 10:03:54vbみたいにやりたいんならBoa Constructor か PythonCard を使えばいいんじゃないかな。
0402デフォルトの名無しさん
2006/09/03(日) 11:51:270403デフォルトの名無しさん
2006/09/03(日) 14:04:56マルチは辞めような。
0404デフォルトの名無しさん
2006/09/03(日) 14:28:410405デフォルトの名無しさん
2006/09/03(日) 14:39:450406デフォルトの名無しさん
2006/09/03(日) 14:47:060407デフォルトの名無しさん
2006/09/03(日) 15:42:170408デフォルトの名無しさん
2006/09/03(日) 16:03:41多分無い。
0409デフォルトの名無しさん
2006/09/03(日) 21:38:160410デフォルトの名無しさん
2006/09/03(日) 21:58:31入れたら混乱の元だと思う
0411デフォルトの名無しさん
2006/09/03(日) 22:51:10f = urllib.urlopen('http://www.2ch.net/')
これが10秒くらいかかるんだけど。
試しにJavaで同じようなことしたら、サクッと取ってこれた。
もちろんWebブラウザでも速い。
何かコードを書き加えないとダメ?
ちなみにOSはFedora Core 5
0412デフォルトの名無しさん
2006/09/03(日) 23:06:56ウチだと1秒もかからないよ。
バージョンとか書いといた方がいいかもね。
自分とこはActivePython 2.4.3 Build 12
0413デフォルトの名無しさん
2006/09/03(日) 23:07:07対話モードでやったら1秒もかからなかったよ。
ひょっとしてPythonインタプリタ自体の起動に時間がかかってるだけじゃない?
0414441
2006/09/03(日) 23:15:44'2.4.3 (#1, Jun 13 2006, 11:46:08) \n[GCC 4.1.1 20060525 (Red Hat 4.1.1-1)]'
対話モードでも遅いんだよね。
OSの問題かな。
0415411
2006/09/03(日) 23:36:04WindowsXP(同じPC)で動かしたら気持ちよく動いた。
なので、OSの設定か何かかなー。
とにかく問題はコードじゃないってことか。
>>412-413 ありがとうございました。
0416デフォルトの名無しさん
2006/09/04(月) 00:43:01調べる他にない?
0417デフォルトの名無しさん
2006/09/04(月) 00:47:360418416
2006/09/04(月) 01:17:10いきなりunboundにぶち当たって落とされると結構不愉快なんだけど。せめて
NoneかFalseと同じ扱いにしてくれりゃぁいいのに。それはそれで問題なんだろけど。
0419デフォルトの名無しさん
2006/09/04(月) 01:45:32そもそも、そういう書き方になるのはおかしいんじゃね?
例外でも投げてくれ
という声があった頃だからだと思う。
あとPythonは辞書と名前空間で管理されてるから>>417でいいし。
0420デフォルトの名無しさん
2006/09/04(月) 03:11:33前にも未定義の変数を参照しても例外投げないでくれっていう奴がいてだな
その時はふざけんなボケまともに書けやカスって流れだった希ガス
0421デフォルトの名無しさん
2006/09/04(月) 03:18:530422デフォルトの名無しさん
2006/09/04(月) 03:22:28Python 2.3.4 (#1, Mar 10 2006, 06:12:09) [GCC 3.4.5 20051201 (Red Hat 3.4.5-2)]
OS: CentOS4.4 の環境で、一瞬で帰ってくる。
おそらくOS設定だろうね。
0423デフォルトの名無しさん
2006/09/04(月) 05:38:28PPPoEの接続切れてて、つなぎ直す最初だけ遅いとか
0424デフォルトの名無しさん
2006/09/04(月) 08:13:41こいつとは一緒に仕事したくないな。
キチガイは一生引きこもっていて欲しい。
0425デフォルトの名無しさん
2006/09/04(月) 10:32:28"自分が思った通り" のプログラムじゃないのに
ある仕様を規定することによって
"自分が思った通り" の動作をするようになる
なんて本気で信じてるんですかねぇ…
どういう思考回路してるんだろう… プログラマ向きじゃないよな
0426デフォルトの名無しさん
2006/09/04(月) 11:17:27公式に普通に置いてありますが?
GPLであることに問題が無ければ、Qtはかなり良い選択だと思う
0427デフォルトの名無しさん
2006/09/04(月) 13:10:24ちょっと言い過ぎでは?
俺は416=418ではないが
未定義の変数を参照したら適当な初期値を与える仕様の
プログラミング言語は実在するし(例えば awk がそう)、
注意深く意図的に使えば便利なものだよ(特にワンライナーを書くとき)。
俺は Python もそうあってほしいとは思わないが、
そうあってほしいと考えることが間違いとかプログラマ向きでないとは思わない。
(あえて言えば、安易な全否定こそプログラマにあるまじき態度だと思う。)
0428デフォルトの名無しさん
2006/09/04(月) 13:21:51> 俺は Python もそうあってほしいとは思わないが、
これは全く同意。
> そうあってほしいと考えることが間違いとかプログラマ向きでないとは思わない。
> (あえて言えば、安易な全否定こそプログラマにあるまじき態度だと思う。)
ここはPythonのスレなのだからそれは文脈無視の屁理屈だよ。
0429デフォルトの名無しさん
2006/09/04(月) 14:21:21>注意深く意図的に使えば
随分ハードル高いな(W
>(特にワンライナーを書くとき)。
ふーん(WWW
0430デフォルトの名無しさん
2006/09/04(月) 14:23:540431デフォルトの名無しさん
2006/09/04(月) 14:36:12「データ」−「新しいデータソースの追加」が使えなかった。ポトペタできない。
DBクライアントアプリ開発には最高レベルの効率だと思ったのに。残念。
C#は使う気ないし。
0432デフォルトの名無しさん
2006/09/04(月) 15:23:16> 文脈無視の屁理屈
そうは思わないけど、あれこれ言っても得るものがなさそうだし俺は手を引くよ。
0433デフォルトの名無しさん
2006/09/04(月) 15:40:190434デフォルトの名無しさん
2006/09/04(月) 15:44:070435デフォルトの名無しさん
2006/09/04(月) 16:02:450436デフォルトの名無しさん
2006/09/04(月) 17:32:24ttp://www.daa.com.au/pipermail/pygtk/2003-March/004763.html
>There are three major contenders in the
>cross-platform GUI race, PyGtk, wxPython and PyQT.
0437デフォルトの名無しさん
2006/09/04(月) 17:35:560438デフォルトの名無しさん
2006/09/04(月) 17:43:25「なぜ <<python>> にその機能を望んだのか?」
だよな。
素直に巣穴に戻って perl なり awk 使えばいいのに。
0439デフォルトの名無しさん
2006/09/04(月) 18:14:39他人に使わせる時、リッチテキストや画像を使う時など
いくらでもGUIの欲しい場面なんてあるんだよw
Hello Wordlでも表示してオナニーしてろよww
0440デフォルトの名無しさん
2006/09/04(月) 18:15:580441デフォルトの名無しさん
2006/09/04(月) 18:20:360442デフォルトの名無しさん
2006/09/04(月) 18:26:210443デフォルトの名無しさん
2006/09/04(月) 18:27:45氏ねって言われたwwwwwwwwwカナシスwwwwwwwwwww
0444デフォルトの名無しさん
2006/09/04(月) 18:29:110445デフォルトの名無しさん
2006/09/04(月) 18:35:21君には先見の明がある。
最後に残るのは PyQt
0446デフォルトの名無しさん
2006/09/04(月) 18:36:330447デフォルトの名無しさん
2006/09/04(月) 18:37:25思うに、夏休みと平常日の区別のある人間は比較的まとも。
一番ヤバいのは毎日貼り付いてる方々。という俺の最終予測。
0448デフォルトの名無しさん
2006/09/04(月) 18:39:19そうだね.その通りだと思うよ.
0449デフォルトの名無しさん
2006/09/04(月) 18:50:290450デフォルトの名無しさん
2006/09/04(月) 18:55:220451デフォルトの名無しさん
2006/09/04(月) 18:55:400452デフォルトの名無しさん
2006/09/04(月) 20:36:010453デフォルトの名無しさん
2006/09/04(月) 20:58:360454デフォルトの名無しさん
2006/09/04(月) 22:02:25おまえにはコレが足りないんだよ。
http://www.riverbankcomputing.co.uk/pyqt/download.php
0455デフォルトの名無しさん
2006/09/04(月) 22:56:47453 のようなキチガイ妄想丸出しの考え方は,
頭の悪さが露呈しすぎだからひかえたほうがキミのためだと思うよ.
0456デフォルトの名無しさん
2006/09/04(月) 22:58:560457デフォルトの名無しさん
2006/09/04(月) 22:59:410458デフォルトの名無しさん
2006/09/04(月) 23:33:46チョウ聞きたいんだけどさ〜!
辞書って
for i in list:
i['aaa'] = bbb
みたいに作成できないのぉ?
ってバカがバカっぽく質問してみます。
0459デフォルトの名無しさん
2006/09/04(月) 23:42:41bbb = 'ccc'
for i in list:
i['aaa'] = bbb
で出来た
0460デフォルトの名無しさん
2006/09/04(月) 23:45:49pyQTと一緒に Qt4-GPL をインストールする必要があるんじゃないか。
たぶん http://www.trolltech.com/developer/downloads/qt/windows の、
コレ qt-win-opensource-4.1.4-mingw.exe
0461デフォルトの名無しさん
2006/09/04(月) 23:54:56いや、
list = "a","b","c"
for i in lst:
i['aaa'] = 1
で、a['aaa'] = 1,b['aaa'] = 1,c['aaa'] = 1
こういうのを期待してるんですが無理ですよね。
0462デフォルトの名無しさん
2006/09/04(月) 23:58:51>>> a = {}
>>> b = {}
>>> c = {}
>>> for i in [a,b,c]:
... i['aaa']=1
...
>>> a
{'aaa': 1}
>>> b
{'aaa': 1}
>>> c
{'aaa': 1}
0463デフォルトの名無しさん
2006/09/05(火) 00:09:36>>> for i in ["a", "b", "c"]:
...locals()[i] = { "aaa" : 1 }
...
>>> a
{'aaa': 1}
>>> b
{'aaa': 1}
>>> c
{'aaa': 1}
>>>
0465デフォルトの名無しさん
2006/09/05(火) 00:32:14raise StopIteration() が return のように振舞ってるんですが、何か変な感じです。
Python 2.4.3 (#69, Mar 29 2006, 17:35:34) [MSC v.1310 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> def f():
... yield 1
... raise StopIteration()
... yield 2
...
>>> [x for x in f()]
[1]
元々
list = [1, 2, 3, 4]
try:
it = iter(list)
while 1:
print [it.next() for n in xrange(it.next())]
except StopIteration:
pass
で、it.next() が StopIteration 例外を出して except で捕獲されると
思ったらされなかったのが発端なんですけど。
0466デフォルトの名無しさん
2006/09/05(火) 00:39:32なんでそんな複雑なことをするのかキチガイ、じゃなかった聞きたい。
0467デフォルトの名無しさん
2006/09/05(火) 00:48:02間違えた、こうだ。
list = [1, 2, 3, 4]
try:
it = iter(list)
while 1:
print tuple(it.next() for n in xrange(it.next()))
except StopIteration:
pass
どこかの日記で見たパズルを解いていて気づいた。(はてなだったかな?)
0468デフォルトの名無しさん
2006/09/05(火) 01:41:56[1]
どういう動作を期待してるんだろう、俺の期待している通りの動作なんだが・・・
0469デフォルトの名無しさん
2006/09/05(火) 02:52:48一度 StopIteration 例外が起こったあと後続の行が実行されることを期待しているのに
そうならない、これは仕様か?という質問だよね。答えは Yes。
http://www.python.org/doc/current/ref/yield.html#l2h-512
> When a generator function is called, it returns an iterator known as a generator iterator,
> or more commonly, a generator. The body of the generator function is executed by calling
> the generator's next() method repeatedly until it raises an exception.
停止条件が StopIteration に限られていない点に注目。
つまり、ジェネレータは何であれ例外が起こったところで実行を停止する。
ジェネレータの停止とは、後続の next() の呼び出しがすべて StopIteration 例外になるということ。
f() の中で StopIteration 例外の代わりに別の例外を raise してみるといいよ。
最初にその例外が起こり、その後はずっと StopIteration 例外が起こり続ける。
0470デフォルトの名無しさん
2006/09/05(火) 03:40:170471466
2006/09/05(火) 06:46:26最初の要素が 1 -> 次の1個の要素をタプルにせよという命令
-> 2 なので (2,) を表示
次の要素が 3 -> 次の3個の要素をタプルにせよという命令
-> 4 しかない(3個ない)ので中断
という挙動をしろというパズルなのですが,意図した
(2,)
という出力ではなく
(2,)
(4,)
という出力になってしまいます。
(it.next() for n in xrange(it.next()))
というジェネレータで例外が出るのだから、キャッチされるまでスタックを
さかのぼるはずが、まるで tuple() の中で StopIteration 例外が
キャッチされているかのような実行結果が妙だと思いまして。
0472466
2006/09/05(火) 06:47:16等価であるはずの
def g(it):
for n in xrange(it.next()):
yield it.next()
def execute(*a):
try:
it = iter(a)
while 1:
print tuple(g(it))
except StopIteration:
pass
execute(1, 2, 3, 4)
だとまた結果が違って
(2,)
(4,)
()
()
()
以下無限
となったり????
0473466
2006/09/05(火) 07:24:20例外を出すまで処理するんだからこれでいいのか。他のイテレータからの例外なんで
違和感あるけど(スレ汚し失礼)
0474デフォルトの名無しさん
2006/09/05(火) 07:50:05>>473 はどういう意味か解説キボン
L = [1, 2, 3, 4]
try:
it = iter(L)
while 1:
print tuple([it.next() for n in xrange(it.next())])
except StopIteration:
pass
0475469
2006/09/05(火) 10:28:36>>471
> まるで tuple() の中で StopIteration 例外が
> キャッチされているかのような実行結果が妙だと思いまして。
(it.next() for n in xrange(it.next())) の中で
StopIteration 例外が何回どこで起こっているかを考えると、
1回目:it.next() の5回目の呼び出し(for の前の方)
→ tuple によりキャッチ。(4,) というタプルが生成される。
(ジェネレータの生成には成功している。)
2回目:it.next() の6回目の呼び出し(xrange の中の方)
→ジェネレータの生成に失敗して except 節によりキャッチ。
となってんだよね。
0476デフォルトの名無しさん
2006/09/05(火) 17:05:460477デフォルトの名無しさん
2006/09/05(火) 20:30:010478デフォルトの名無しさん
2006/09/05(火) 21:11:110479デフォルトの名無しさん
2006/09/05(火) 21:46:25もっと単純なマクロとかソフトとかありそうだ
0480デフォルトの名無しさん
2006/09/05(火) 22:02:030481デフォルトの名無しさん
2006/09/05(火) 23:13:280482デフォルトの名無しさん
2006/09/05(火) 23:28:21a. basic authentication に対応する(ID とパスワードがなければアウト)。
b. もらったクッキーを食べる。
c. 適切な Referer: ヘッダを付ける(アクセス元を詐称する)。
d. 適切な User-Agent: ヘッダを付ける(ブラウザを詐称する)。
認証以外のダウンローダ除けも入ってるけど、だいたいこの辺り。
0483デフォルトの名無しさん
2006/09/05(火) 23:41:41a. urllib2.HTTPBasicAuthHandler
b. cookielib.CookieJar
c&d. urllib2.Request.add_header
ライブラリリファレンスに例がのってたよ。
http://www.python.jp/doc/release/lib/urllib2-examples.html
http://www.python.jp/doc/release/lib/cookielib-examples.html
0484481
2006/09/05(火) 23:49:18>>483
丁寧にありがとう
でもそっちじゃなくてつまり、認証があるか無いか分からない URL の束をアクセスして行き、その中に認証があるやつが混ざっているとコマンドラインに ID&PASS を要求された状態でプログラム自体が停止してしまうのだけれども、その URL を飛ばしたい、という事です
0485デフォルトの名無しさん
2006/09/05(火) 23:51:290486デフォルトの名無しさん
2006/09/06(水) 00:01:270487デフォルトの名無しさん
2006/09/06(水) 00:04:080488デフォルトの名無しさん
2006/09/06(水) 00:19:18401 Authorization requiredが返ってきたらしかるべき処置を加えて再試行するのが常套手段
0489デフォルトの名無しさん
2006/09/06(水) 00:30:55FancyURLopener.prompt_user_passwd()をオーバーライド
0490デフォルトの名無しさん
2006/09/06(水) 00:41:25みたいな事がPyJUGに書いてあったんだけども
どんな人たちが来るんだろう
0491デフォルトの名無しさん
2006/09/06(水) 00:52:13>1
0492デフォルトの名無しさん
2006/09/06(水) 01:26:040493デフォルトの名無しさん
2006/09/06(水) 01:45:56すくない参加経験から察するに、
・平均年齢高め。職業人多し。
・平均スキル高め。多言語ユーザ多し。
・各人の関心の方向性が多岐に渡る。
・平均英語力高め。
・男女比高め。ZeroDivisionError 気味。
・健全性高め。オタクだらけのハズだが邪気が感じられない。
要するにみんな大人。能動的な人ほど得るものが大きい。
0494デフォルトの名無しさん
2006/09/06(水) 02:22:560495デフォルトの名無しさん
2006/09/06(水) 02:33:590496デフォルトの名無しさん
2006/09/06(水) 04:23:55日本のデブキャンは大阪でやるべきだろ?
0497デフォルトの名無しさん
2006/09/06(水) 04:37:30インデントだけでfor内部を認識するようにしてくれ
0498デフォルトの名無しさん
2006/09/06(水) 06:29:480499デフォルトの名無しさん
2006/09/06(水) 06:49:070500デフォルトの名無しさん
2006/09/06(水) 06:51:27富士市じゃん。
0501デフォルトの名無しさん
2006/09/06(水) 06:56:43それを使うと標準関数のlist()やdict()が使えなくなります。
変数と関数の名前空間が同じであるという仕様は気に入っているのですが、この点だけがちょっと気になります。
みなさん、どんな変数名使ってますか。
他の言語だと例えば list = new List() とか dict = new Dict() となるので、listやdictを変数として使っても問題ないです。
またPHPだと変数は$listや$dictなので関数名とかぶる心配もないですし。
なにぶんPtyhonは初めたばかりなので、こんなつまらんことで悩んでいます。
0502デフォルトの名無しさん
2006/09/06(水) 07:08:27うーん、やっぱ結構頑張ってる人が来るのね
雑魚みたいなガキは行ってもいいんだろうか
勿論遊びに行きたい訳ではなくて勉強だけども
0503デフォルトの名無しさん
2006/09/06(水) 07:41:26listやらdictは一般的すぎるので使わないようにしてる
typeとかidはあえて上書きしちゃうこともあるけど
0504デフォルトの名無しさん
2006/09/06(水) 07:51:11例:candlidate_list, foo_list, mylist
0505デフォルトの名無しさん
2006/09/06(水) 07:54:370506デフォルトの名無しさん
2006/09/06(水) 08:50:56>能動的な人ほど得るものが大きい。
ここ試験に出るから。
0507 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄V ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
2006/09/06(水) 09:10:41ビシッ / ̄ ̄ ̄ ̄\
/ ̄\( 人____)
, ┤ ト|ミ/ ー◎-◎-)
| \_/ ヽ (_ _) )
| __( ̄ |∴ノ 3 ノ
| __)_ノ ヽ ノ
ヽ___) ノ )) ヽ.
0508デフォルトの名無しさん
2006/09/06(水) 09:11:250509デフォルトの名無しさん
2006/09/06(水) 09:27:590510デフォルトの名無しさん
2006/09/06(水) 10:16:10>Python若手議員の会
加齢臭が漂ってくる言葉ですね。
0511デフォルトの名無しさん
2006/09/06(水) 11:38:20邪気が漂うイベントの例をお願いします。
0512デフォルトの名無しさん
2006/09/06(水) 11:54:52○○○さん,出社早々お疲れさまです
0513デフォルトの名無しさん
2006/09/06(水) 11:57:580514デフォルトの名無しさん
2006/09/06(水) 12:00:22> 他の言語だと例えば list = new List() とか dict = new Dict() となるので
じゃあ変数名を List, Dict にすればいいだろ
0515デフォルトの名無しさん
2006/09/06(水) 12:23:56Person クラスのリストなら people とか。後から読む時全然違うから。
0516デフォルトの名無しさん
2006/09/06(水) 12:31:49他のみんなに分からないと不評でした。
0517デフォルトの名無しさん
2006/09/06(水) 13:07:42だけど汎用的な関数だと、そうも行かないよね。
高階関数だったりすると、もう絶対無理。
同じ悩みのあるSchemeでは、リストはlis とか list0 とかの変数名をつけてた。
0518デフォルトの名無しさん
2006/09/06(水) 14:11:36手をあげちゃったYO
おいら雑魚レベルだけど、
興味あるお題が出ていたし
一気入門勉強の良い機会かなーと思って
せっかく持ち出しで企画してくれてるんだし
興味があるというのなら十分な理由じゃないでしょうか。
0519デフォルトの名無しさん
2006/09/06(水) 14:29:04ベータ取れてる?
0520デフォルトの名無しさん
2006/09/06(水) 14:36:44Release 1.0 Production
http://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=IronPython&ReleaseId=423
0521デフォルトの名無しさん
2006/09/06(水) 15:26:33相手にされてるように見えて、軽くハブられそう。
0522デフォルトの名無しさん
2006/09/06(水) 15:28:14にちゃんねるへようこそ。
0523デフォルトの名無しさん
2006/09/06(水) 15:40:46みんPyノルマが増えるだけで歓迎されますよ。
0524デフォルトの名無しさん
2006/09/06(水) 16:29:44最初の一歩を踏み出したわけだ。(・∀・)イイヨイイヨー
0525デフォルトの名無しさん
2006/09/06(水) 16:42:010526デフォルトの名無しさん
2006/09/06(水) 16:50:50キミみたいなのはどこにいってもハブられるとおもうよ。
0527デフォルトの名無しさん
2006/09/06(水) 16:51:030528デフォルトの名無しさん
2006/09/06(水) 17:09:510529デフォルトの名無しさん
2006/09/06(水) 17:09:49レベル高いと思い込んでる馬鹿の集りにわざわざ参加することなし。
0530デフォルトの名無しさん
2006/09/06(水) 17:10:340531デフォルトの名無しさん
2006/09/06(水) 17:11:33時間が戻っている・・・
0532デフォルトの名無しさん
2006/09/06(水) 17:15:01この短い文章の中に根拠のない断定が少なくとも2つあってすごいと思った(www
0533デフォルトの名無しさん
2006/09/06(水) 17:18:33所詮、低レベル同士の馴れ合いの場。
0534デフォルトの名無しさん
2006/09/06(水) 17:21:32井の中の蛙の煽りだろ。
レベル高いと思いこんでると思いこんでるバカの煽りにわざわざ反応する必要なし。
0535■■■お知らせ■■■
2006/09/06(水) 17:31:25こ の ス レ は 日 本 発 の P y t h o n 製 品 を 挙 げ る ス レ に な り ま し た 。
0536デフォルトの名無しさん
2006/09/06(水) 17:32:100537デフォルトの名無しさん
2006/09/06(水) 17:37:010538デフォルトの名無しさん
2006/09/06(水) 17:38:57井戸の中からお送りしています。
0539デフォルトの名無しさん
2006/09/06(水) 17:41:19wktk(・∀・)
0540デフォルトの名無しさん
2006/09/06(水) 17:43:34Pythonの話をしようぜ!!!
0541デフォルトの名無しさん
2006/09/06(水) 18:15:080542デフォルトの名無しさん
2006/09/06(水) 18:37:150543デフォルトの名無しさん
2006/09/06(水) 18:42:450544デフォルトの名無しさん
2006/09/06(水) 18:43:280545デフォルトの名無しさん
2006/09/06(水) 18:50:330546デフォルトの名無しさん
2006/09/06(水) 18:51:52井戸を出て合宿に池。
0547デフォルトの名無しさん
2006/09/06(水) 19:01:28意見交換の場として参加することについても
各種コミュニケーションインフラツールの揃っている現在では甚だ疑問だし。
結局、自画自賛披露会に終わるでしょう。
0548デフォルトの名無しさん
2006/09/06(水) 19:02:110549デフォルトの名無しさん
2006/09/06(水) 19:04:37日 本 発 の P y t h o n 製 品 で き た ? ? ?
0550デフォルトの名無しさん
2006/09/06(水) 19:13:260551デフォルトの名無しさん
2006/09/06(水) 19:27:510552デフォルトの名無しさん
2006/09/06(水) 19:36:470553デフォルトの名無しさん
2006/09/06(水) 19:39:38問題は
今日の雨
傘がない
0554デフォルトの名無しさん
2006/09/06(水) 19:50:08dict → dic
0555デフォルトの名無しさん
2006/09/06(水) 20:12:47/": : : : : : : : \
/-─-,,,_: : : : : : : : :\
/ '''-,,,: : : : : : : :i
/、 /: : : : : : : : i ________
r-、 ,,,,,,,,,,、 /: : : : : : : : : :i /
L_, , 、 \: : : : : : : : :i / 参加したら
/●) (●> |: :__,=-、: / < 負けかなと思ってる
l イ '- |:/ tbノノ \
l ,`-=-'\ `l ι';/ \ カエル(24・男性)
ヽトェ-ェェ-:) -r'  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ヾ=-' / /
____ヽ::::... / ::::|
/ ̄ ::::::::::::::l `──'''' :::|
0556デフォルトの名無しさん
2006/09/06(水) 20:38:37それで済むだけ
なんで井の底のカッパは他人の活動を否定したがるのかねー
ごく一部のキ印だけだとは思うけど。ruby でも使っててください。
0557デフォルトの名無しさん
2006/09/06(水) 20:44:38明らかに貶す文脈でrubyを出してるこの馬鹿さかげん。
0558デフォルトの名無しさん
2006/09/06(水) 21:29:47どっちが井の中の蛙なのか分かりませんね。
0559デフォルトの名無しさん
2006/09/06(水) 21:34:24>予想のななめ上の目指して
意味不明
>どっちが井の中の蛙なのか
「予想のななめ上の目指す」
「Ruby批判」
これのどっちがどうすると「井の中の蛙」なのか簡潔に説明白
0560デフォルトの名無しさん
2006/09/06(水) 22:06:36が敗因でした。
0561デフォルトの名無しさん
2006/09/06(水) 22:17:24#encoding: エンコード名
#coding: エンコード名
どちらが正しいんでしょうか
0562デフォルトの名無しさん
2006/09/06(水) 22:18:55演
失
敗
!
!
0563デフォルトの名無しさん
2006/09/06(水) 22:23:36後者
0564デフォルトの名無しさん
2006/09/06(水) 22:27:350565デフォルトの名無しさん
2006/09/06(水) 22:29:48どっちも正しい
0566デフォルトの名無しさん
2006/09/06(水) 22:36:040567デフォルトの名無しさん
2006/09/06(水) 23:15:340568ZOPEを知らない子供達
2006/09/06(水) 23:19:410569デフォルトの名無しさん
2006/09/06(水) 23:30:360570デフォルトの名無しさん
2006/09/06(水) 23:37:060571デフォルトの名無しさん
2006/09/06(水) 23:47:22重複してるだけだと思うよ。
先週末のRubyスレプチ祭りのときは、ここ静かだったし。
普段はこっちに常駐してるみたい。
0572デフォルトの名無しさん
2006/09/07(木) 00:17:360573デフォルトの名無しさん
2006/09/07(木) 00:22:100574デフォルトの名無しさん
2006/09/07(木) 02:03:21バンド名!?
0575デフォルトの名無しさん
2006/09/07(木) 06:26:45...
>>> f(range(10))
([0, 1, 2, 3, 4, 5, 6, 7, 8, 9],)
>>> f(*range(10))
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
これ通るんだ
0576デフォルトの名無しさん
2006/09/07(木) 06:31:0010
>>> int("1111", 2)
15
これの逆が欲しいんだよな.
ruby みたいに "x = %b" % x 見たいな感じで.
追加して失うものなんて何かあるか?
0577デフォルトの名無しさん
2006/09/07(木) 06:52:42s = i >= 0 and '+' or '-'
i = abs(i)
l = []
while i != 0:
l.append(i & 1)
i = i >> 1
l.reverse()
return s + ''.join(map(str, l))
やっつけで書いたけど基数指定して変換するのなかったっけか?
0578スマソ
2006/09/07(木) 06:54:15s = i >= 0 and '+' or '-'
i = abs(i)
l = []
while i != 0:
l.append(i & 1)
i = i >> 1
l.reverse()
return s + ''.join(map(str, l))
0579デフォルトの名無しさん
2006/09/07(木) 07:37:54コードに性格が滲み出ているw
0580デフォルトの名無しさん
2006/09/07(木) 09:10:08def bin(n):
assert isinstance(n, int)
def bit(x):
if x == 0:
return ""
return bit(x >> 1) + str(x & 1)
if n < 0:
n = 0x100000000L + n
return bit(n)
負の値は2の補数で表現(よって int 型限定)。
0581デフォルトの名無しさん
2006/09/07(木) 09:18:190582デフォルトの名無しさん
2006/09/07(木) 09:27:470583580
2006/09/07(木) 09:51:450584デフォルトの名無しさん
2006/09/07(木) 09:56:390585デフォルトの名無しさん
2006/09/07(木) 10:18:34ドコで開催してるの?
0586デフォルトの名無しさん
2006/09/07(木) 10:21:280587デフォルトの名無しさん
2006/09/07(木) 10:53:030588デフォルトの名無しさん
2006/09/07(木) 11:00:270589デフォルトの名無しさん
2006/09/07(木) 11:21:05ttp://headlines.yahoo.co.jp/hl?a=20060906-00000391-reu-ent
0590デフォルトの名無しさん
2006/09/07(木) 11:49:06暗示的ですな。
ttp://www.rubyist.net/~matz/20050709.html
>私の一族のマスコット動物は羊なのだが
0591デフォルトの名無しさん
2006/09/07(木) 11:51:44( ゚д゚)
_(__つ/ ̄ ̄ ̄/_
\/ /
 ̄ ̄ ̄
( ゚д゚ )
_(__つ/ ̄ ̄ ̄/_
\/ /
 ̄ ̄ ̄
0592デフォルトの名無しさん
2006/09/07(木) 15:16:14要は共倒れかww
0593590
2006/09/07(木) 15:18:140594デフォルトの名無しさん
2006/09/07(木) 15:26:12つまり反面教師ですな。
0595デフォルトの名無しさん
2006/09/07(木) 15:27:230596デフォルトの名無しさん
2006/09/07(木) 15:31:35ラリーはもっと前に行き倒れになってます。
となると、残るのは...P(ry
0597デフォルトの名無しさん
2006/09/07(木) 16:11:540598デフォルトの名無しさん
2006/09/07(木) 16:13:02昔はあれで業務アプリ組んだりしてたんですよね?
0599デフォルトの名無しさん
2006/09/07(木) 16:20:270600デフォルトの名無しさん
2006/09/07(木) 16:33:260601デフォルトの名無しさん
2006/09/07(木) 16:42:04↑の柴田淳氏のプレゼンでPython3000が「フロムスクラッチ」って
言ってるけど、これって完全に事実誤認だよな。
公式ドキュメントも読まないで発表してるのか?
ttp://www.python.org/dev/peps/pep-3000/
> Python 3000 will be implemented in C, and the implementation
> will be derived as an evolution of the Python 2 code base.
> This reflects my views (which I share with Joel Spolsky) on
> the dangers of complete rewrites. Since Python 3000 as a
> language is a relatively mild improvement on Python 2, we
> can gain a lot by not attempting to reimplement the language
> from scratch. I am not against parallel from-scratch
> implementation efforts, but my own efforts will be directed
> at the language and implementation that I know best.
0602デフォルトの名無しさん
2006/09/07(木) 16:54:56そんなのあったのかw
見たところ、Delphi(.NET)とC#,C++のみっぽいけど...。
http://www.borland.com/downloads/download_turbo.html
スラッシュドット ジャパン | Borland Turboシリーズ、無償ダウンロード開始
http://slashdot.jp/articles/06/09/06/1414208.shtml
0603デフォルトの名無しさん
2006/09/07(木) 21:11:53してないんじゃないか?
0604デフォルトの名無しさん
2006/09/07(木) 21:12:110605デフォルトの名無しさん
2006/09/07(木) 21:27:030606デフォルトの名無しさん
2006/09/07(木) 21:31:250607デフォルトの名無しさん
2006/09/07(木) 21:44:010608デフォルトの名無しさん
2006/09/07(木) 22:01:00ttp://www.fishbase.org/images/thumbnails/jpg/tn_Abbal_u0.jpg
0609デフォルトの名無しさん
2006/09/07(木) 22:04:56宣伝乙.
0610デフォルトの名無しさん
2006/09/07(木) 22:08:31ハイハイ、柴田信者の偽装偽装
0611デフォルトの名無しさん
2006/09/07(木) 22:10:270612デフォルトの名無しさん
2006/09/07(木) 22:15:070613デフォルトの名無しさん
2006/09/07(木) 22:37:18他の配布サイトはないですか?
0614デフォルトの名無しさん
2006/09/07(木) 23:01:27http://newworld.ddo.jp/doc/python-iaq-ja/
乙です!
0615デフォルトの名無しさん
2006/09/08(金) 00:02:380616デフォルトの名無しさん
2006/09/08(金) 01:02:05流れにワロタ。
結局残るのは、羊(Ruby)を飲み込んでところどころが裂けた(破綻した)、死んだPythonかw
普及すると案外そうなるかもしれないね。。。
0617デフォルトの名無しさん
2006/09/08(金) 01:07:580618デフォルトの名無しさん
2006/09/08(金) 01:12:18マクロ的に見れば、そちらの方は本流ではありませんので悪しからず。
0619デフォルトの名無しさん
2006/09/08(金) 01:13:05おまけに、Pythonの本も出してるよ!
0620デフォルトの名無しさん
2006/09/08(金) 01:13:49Guidoのせいだなきっと。
0621デフォルトの名無しさん
2006/09/08(金) 01:20:08作者タソのくせにマクロ的に見た本流を変えようとするなんてけしからん!(プンプン
0622デフォルトの名無しさん
2006/09/08(金) 01:21:36まあなんつーか
とりあえず井戸から出ろや
視野が広がるぞ
0623デフォルトの名無しさん
2006/09/08(金) 01:23:420624デフォルトの名無しさん
2006/09/08(金) 01:28:51日本発のPython製品を作って本流を示すといいよ。
0625デフォルトの名無しさん
2006/09/08(金) 01:42:530626デフォルトの名無しさん
2006/09/08(金) 01:49:43Jythonは傍流です
0627デフォルトの名無しさん
2006/09/08(金) 01:58:04あーあ。
今日も玉砕だ。
またあしたもがんばろう。
0628デフォルトの名無しさん
2006/09/08(金) 02:05:01>またあしたもがんばろう。
頑張らなくていいよ(WWWWWWWWWW
基地外が勘違いするから止めろよ(WWWWWWWW
0629デフォルトの名無しさん
2006/09/08(金) 02:09:10零細企業のお山の大将では駄目なんだよ。
0630デフォルトの名無しさん
2006/09/08(金) 02:23:490631デフォルトの名無しさん
2006/09/08(金) 02:46:39マクロ的に見れば、そちらの方は本流ではありませんので悪しからず。
0632デフォルトの名無しさん
2006/09/08(金) 02:49:34Google は Python のトレンドリーダーって言われても、
Pythonプログラマに役立つGoogleのテクニックとか公開されてるのか?
0633デフォルトの名無しさん
2006/09/08(金) 02:52:14> Pythonプログラマに役立つGoogleのテクニックとか公開されてるのか?
Guido が公開されてます。
0634デフォルトの名無しさん
2006/09/08(金) 02:56:28( ゚д゚)
_(__つ/ ̄ ̄ ̄/_
\/ /
 ̄ ̄ ̄
出向???
( ゚д゚ )
_(__つ/ ̄ ̄ ̄/_
\/ /
 ̄ ̄ ̄
0635デフォルトの名無しさん
2006/09/08(金) 03:03:26┝ - - - - ┿━━━━━┿━━━━━┥
∩___∩ /)
| ノ ヽ ( i )))
/ ● ● | / /
| ( _●_) |ノ / ここクマ――!!
彡、 |∪| ,/
/__ ヽノ /´
(___) /
0636デフォルトの名無しさん
2006/09/08(金) 09:25:20イキロ
0637デフォルトの名無しさん
2006/09/08(金) 09:46:420638デフォルトの名無しさん
2006/09/08(金) 09:59:28とうとうじぶんのからだを切りはじめました
もう鼻のさきしかのこっていません
0639デフォルトの名無しさん
2006/09/08(金) 10:06:58__ /: : : : : : : : : : : (
〈〈〈〈 ヽ /: : : : ::;:;: ;: ;:;: ; : : : ::ゝ
〈⊃ } {:: : : :ノ --‐' 、_\: : ::}
∩___∩ | | {:: : :ノ ,_;:;:;ノ、 ェェ ヾ: :::}
| ノ ヽ ! ! 、 l: :ノ /二―-、 |: ::ノ
/ ● ● | / ,,・_ | //  ̄7/ /::ノ
| ( _●_) ミ/ , ’,∴ ・ ¨ 〉(_二─-┘{/
彡、 |∪| / 、・∵ ’ /、//|  ̄ ̄ヽ
/ __ ヽノ / / // |//\ 〉
(___) / / // /\ /
出向できないなら出血するクマー!!
0640デフォルトの名無しさん
2006/09/08(金) 10:18:43>結局残るのは、羊(Ruby)を飲み込んでところどころが裂けた(破綻した)、死んだPythonかw
裂けたなんて話でてた?
単にタイーホされただけじゃねーの?
なんの容疑かは知らないけど。
0641デフォルトの名無しさん
2006/09/08(金) 10:39:21へぇ、びっくり!
0642デフォルトの名無しさん
2006/09/08(金) 10:43:59死刑ッ!(ビシッ
0643デフォルトの名無しさん
2006/09/08(金) 10:44:360644デフォルトの名無しさん
2006/09/08(金) 11:08:31>ヘビが捕まったんだって!
>へぇ、びっくり!
Yamada().withdraw_squatter(641)
0645デフォルトの名無しさん
2006/09/08(金) 11:17:530646デフォルトの名無しさん
2006/09/08(金) 12:31:350647デフォルトの名無しさん
2006/09/08(金) 12:38:08もっとも彼は子だくさんのようだが。
0648デフォルトの名無しさん
2006/09/08(金) 12:43:48インスタンス生成のコスト低そうだからいいんじゃね?
0649デフォルトの名無しさん
2006/09/08(金) 12:52:180650デフォルトの名無しさん
2006/09/08(金) 12:59:090651デフォルトの名無しさん
2006/09/08(金) 13:02:12彼は「シングルトン」と言いたいんだと思うんだ。
まあ仲良くしてやってくれ(w
0652デフォルトの名無しさん
2006/09/08(金) 13:15:14あらあら、気づきませんでしたわ
そのようなお言葉使い、お国はどちらだったのかしら
0653デフォルトの名無しさん
2006/09/08(金) 13:28:32クラスオブジェクトにインスタンス格納が常套?
0654デフォルトの名無しさん
2006/09/08(金) 13:49:07Pythonではシングルトンが必要なとき、モジュールで用が済んだりする。
ムネオたんの発言参照。
ttp://www.python.jp/pipermail/python-ml-jp/2002-January/001029.html
0655デフォルトの名無しさん
2006/09/08(金) 14:03:16そもそもクラスにしないのが常套
0656デフォルトの名無しさん
2006/09/08(金) 15:24:59モジュールは1個のオブジェクトで、
なおかつ個々のモジュールには複数のインスタンスは存在しない、
という意味で「モジュールはシングルトンパタン」と言っているのであって
シングルトンパタンをモジュールで実現、という意味ではない。
0657デフォルトの名無しさん
2006/09/08(金) 16:09:510658デフォルトの名無しさん
2006/09/08(金) 16:35:32何を言っているのか確かに分からん。
0659デフォルトの名無しさん
2006/09/08(金) 17:14:080660デフォルトの名無しさん
2006/09/08(金) 17:20:44モジュールをシングルトンとして使っている例はいくらでもあるじゃん。
ていうかPythonでは定石。標準ライブラリのdircache.pypとかさ。
0661デフォルトの名無しさん
2006/09/08(金) 17:40:32たとえばの話。
moduleA,moduleB,moduleCとあって、moduleAにはfuncAが定義されているとする。
moduleBでimport moduleAし、moduleA.funcAと参照するfuncAと
moduleCでfrom moduleAし、funcAは
どっちも同じ実体を指しているの?
0662デフォルトの名無しさん
2006/09/08(金) 17:43:43>moduleCでfrom moduleAし、funcAは
というのは
moduleCでfrom moduleA import funcAしたときのfuncAは
の間違いです。
0663デフォルトの名無しさん
2006/09/08(金) 17:46:27from moduleC import funcA as funcA_from_moduleC
print funcA_from_moduleB is funca_from_moduleC
0664デフォルトの名無しさん
2006/09/08(金) 17:51:45同じ実体を指す(だからシングルトンとして使える)
0665デフォルトの名無しさん
2006/09/08(金) 18:19:16http://slashdot.jp/developers/article.pl?sid=06/09/08/0142254
0666デフォルトの名無しさん
2006/09/08(金) 18:44:290667デフォルトの名無しさん
2006/09/08(金) 18:53:39よく分かったよ。サンクス!
0668デフォルトの名無しさん
2006/09/08(金) 18:58:15Dive Into Python は計画的にってことだな。
0669デフォルトの名無しさん
2006/09/08(金) 20:46:31シングルトンじゃないの?
0670デフォルトの名無しさん
2006/09/08(金) 20:56:21「どうして教科書通りにしないんですか?教科書にはそんなこと書いていません。教科書と同じでなきゃイヤ!」
と駄々をこねる奴がいます。こういう奴に自分の頭で考えさせるには、どうしたらいいでしょう?
0671デフォルトの名無しさん
2006/09/08(金) 20:58:25解ってないんだろ
0672デフォルトの名無しさん
2006/09/08(金) 21:09:27貴方自身が自分で「どう教えるか」ということを考えることを放棄しているのに、
同僚の所為にするのはいかがなものかと存じます。
さて本題に入りましょうか。
仕事では教科書どおりのやり方が一番推奨されます。
まず、貴方が教科書熟読しましょう。
「自分のやり方」とやらも結構ですが、それは基礎を伴っている必要があります。
守離破ということです。わかりましたか?
0673デフォルトの名無しさん
2006/09/08(金) 21:10:29シングルトンクラスのインスタンスを生成できないように保証するのは常識だろうに。
0674デフォルトの名無しさん
2006/09/08(金) 21:16:460675デフォルトの名無しさん
2006/09/08(金) 21:21:500676デフォルトの名無しさん
2006/09/08(金) 21:26:58reloadすればインスタンスの同一性はなくなってしまうから。
しかし、reloadは普通は対話環境で使うもので、実際のコードで使われること
は考えにくい。事実上、シングルトンとみなしても大きな問題はないと思う。
0677デフォルトの名無しさん
2006/09/08(金) 21:32:30全く確かにそうであるべきではあるが
そうでなければシングルトンと呼ばない訳ではないね
0678デフォルトの名無しさん
2006/09/08(金) 21:38:21いや、reloadよりも現実的な危険があるよ。他のモジュールから直接書き換え
られる場合だ。
あるモジュールで、
from module_a import hoge
を実行したあとで、他のモジュールが
import module_a
module_a.hoge = u"ほげほげ"
とか実行したらどうする?
0679デフォルトの名無しさん
2006/09/08(金) 22:03:29あるモジュールで定義したクラスを、他のモジュールから完全に書き換えるこ
とさえ出来てしまう。
結局、Pythonでは安全性の保証は、最終的にはユーザの明示的または暗黙的な
合意によってしか成り立たない。より「ユーザのやらなそうな」ことをした時
にだけ問題が起こるようなら、比較的安全だと言えるだろう。結局は程度問題。
ちなみに、実はJavaでも安全性は程度問題だったりする。Pythonと違ってJava
にはprivateというものがあるが、リフレクションを利用するとそのprivateな
属性にもアクセスできてしまう。みんなやらないだけで。(単体テストの時に
は利用したりするが)
0680デフォルトの名無しさん
2006/09/08(金) 22:14:290681デフォルトの名無しさん
2006/09/08(金) 22:22:58その理屈だと、Perl界の方がPython界より民度が高いことになるな。
安全性の設計の方針を、安易に「民度」なんてものに結びつけるのはよくない。
「ひいきの引き倒し」という言葉を知っているか?
0682デフォルトの名無しさん
2006/09/08(金) 22:41:21本人も、周りも。
中二病にはおすすめできない。
0683デフォルトの名無しさん
2006/09/08(金) 22:43:180684デフォルトの名無しさん
2006/09/08(金) 22:56:37見え見えの釣りにわざわざ付き合う事ねえよ
0685デフォルトの名無しさん
2006/09/08(金) 23:20:180686デフォルトの名無しさん
2006/09/08(金) 23:37:240687デフォルトの名無しさん
2006/09/08(金) 23:50:29つりでも何でも無いんだが、柴田氏のどこが気に入らないんだ?
0688デフォルトの名無しさん
2006/09/09(土) 00:08:120689デフォルトの名無しさん
2006/09/09(土) 00:18:01つまりお前は、
"""ガチで釣り針に食いつきました"""
ってことだな。
0690デフォルトの名無しさん
2006/09/09(土) 00:18:09気に入ってる気に食わないって永遠に解決し得ない言い合いのせいで
中身の無い荒れ方をするのは見るに堪えない。
0691デフォルトの名無しさん
2006/09/09(土) 00:26:08荒れる原因を作ってるヤツを隔離しなければ同じこと。
0692デフォルトの名無しさん
2006/09/09(土) 00:31:10スライムA乙
0693デフォルトの名無しさん
2006/09/09(土) 00:34:11カッチリ硬いという印象のあるPythonだが、実際にはその安全性は無いに等し
い。実行時にモジュールやクラスを自由に書き換えることができるし、オブジェ
クトにはprivateがない。そもそも変数だけがあって定数が無い。C++やJavaし
か知らない人には危険極まりなく見えるだろう。
しかし、Pythonの構文は極めて明快で、何をやっているかが分かりやすい。そ
のため「こんなことやったらまずいな」というプログラマの常識に訴える力が
強い。事実上それのみによって、Pythonの安全性は保証されている。
これは確かに危険だが、大きなメリットもある。それは「普段はやらないが、
いざというときには危険な手段も取れる」ようになるからだ。
http://practical-scheme.net/wiliki/wiliki2.cgi?Lisp%3AGeometry
PythonではなくCLOSの話で恐縮だが、上のページをに出てくる例は、動的な言
語のメリットを実に良くあらわしている。長すぎて読めない人には、"java"で
上のページを検索して拾い読みするのをお薦めしたい。
0694デフォルトの名無しさん
2006/09/09(土) 00:35:48そんな長々と妄想聞かされても困るから
0696デフォルトの名無しさん
2006/09/09(土) 00:45:590697693
2006/09/09(土) 00:49:07念のためだが、妄想なんかじゃないぞ。それなりに根拠を持って書いている。
批判するのは自由だが、どこが間違っているかぐらいは指摘してほしいもんだな。
0698デフォルトの名無しさん
2006/09/09(土) 00:49:52Python使いって懐が深くてすごいとおもうわ(w
0699デフォルトの名無しさん
2006/09/09(土) 00:52:14それなりな根拠とやらを示したらどうだ?
0700デフォルトの名無しさん
2006/09/09(土) 00:53:59君が妄想と決め付けた根拠を書くのが先じゃないかな。
0701デフォルトの名無しさん
2006/09/09(土) 01:01:220702デフォルトの名無しさん
2006/09/09(土) 01:01:33小学生みたいな言い合いするなよw
0703デフォルトの名無しさん
2006/09/09(土) 01:03:100704デフォルトの名無しさん
2006/09/09(土) 01:06:45から
キチガイでもできるPython
になっちゃったのかよー
0705693
2006/09/09(土) 01:10:53根拠ねえ、またここに書くと荒れそうなんだけど、言語の歴史の流れなんだよ。
SmalltalkとCLOSからオブジェクト指向は始まったんだけど、前者は比較的硬
くて後者は比較的柔らかい。
その流れはやがて大きな二極を生み出した。一つはC++のような極めて硬いオ
ブジェクト指向。もう一つはプロトタイプベースのような極めて柔らかいオブ
ジェクト指向。そしてPythonは明らかに後者に属する。
で、>>693に書いたことは、Pythonだけじゃなくて後者の言語のどれにも大体
当てはまることなんだよ。
まあこう書いて納得してもらえるとは思わないけどね。知ってたら初めから煽
りに来ないから。
0706デフォルトの名無しさん
2006/09/09(土) 01:20:26り
0707デフォルトの名無しさん
2006/09/09(土) 01:32:10つまり、妄想を根拠に妄想話をしてたってことだな。
0708デフォルトの名無しさん
2006/09/09(土) 01:36:39> 実行時にモジュールやクラスを自由に書き換えることができる
> オブジェクトにはprivateがない
そんな貴方に with statement
0709693
2006/09/09(土) 01:52:09まあ、そう来ると思ったよ。
>>693のリンク先を読んでごらん。この手法はPythonでも使える。と言うより、
まともなPythonユーザなら、一度くらいは自分でやったことがあるはずだ。
まさにPythonの最大の特徴の一つなんだから。
では失礼。
0710デフォルトの名無しさん
2006/09/09(土) 02:34:53リンク先示して終りでいいだろ。
知識披露厨はこれだから・・・。
0711デフォルトの名無しさん
2006/09/09(土) 02:47:500712デフォルトの名無しさん
2006/09/09(土) 02:51:38根拠のない妄想なのか、
根拠の丸写しの受け売りなのか、
どっちだって言いたいんだ?真逆じゃねえのか?
0713デフォルトの名無しさん
2006/09/09(土) 03:02:45PHPに対するPtyhonのアドバンテージには
どういったことがありますか?
0714デフォルトの名無しさん
2006/09/09(土) 03:06:09PHPとかPerlのほうが作りやすいかも……と
時々思ってしまう。。。
0715デフォルトの名無しさん
2006/09/09(土) 03:15:350716デフォルトの名無しさん
2006/09/09(土) 03:18:14そういうレベルの人に説明するのは難しいな。w
まず使いたいフレームワークありきでしょ。それを決めれば言語も決まる。
0718デフォルトの名無しさん
2006/09/09(土) 03:57:35> まず使いたいフレームワークありきでしょ。それを決めれば言語も決まる。
君と同じレベルでは嫌なので軽く調べた。
要するにWebフレームワークってORMライブラリのことでしょ?
で、テンプレートとインターフェースの主観的な使い勝手の差で類似ソフトが湧いている、と。
0719デフォルトの名無しさん
2006/09/09(土) 08:32:17煽りには乗らないほうがいい。
> 要するにWebフレームワークってORMライブラリのことでしょ?
いや、それは違う。ORMライブラリは付属しているだけ。
http://www-06.ibm.com/jp/developerworks/linux/060802/j_l-django.shtml
(ORMライブラリより、ORマッパという言葉のほうが普通だと思う。)
あと、そもそもフレームワークとは何かと言うと、ライブラリに似ているが、
ある意味逆のものとも言える。どちらも既存のコードと自分のコードを組み
合わせてアプリケーションを作るという点は同じだが、
・メインのロジックを自分が書き、そこから既存のコードを呼び出す場合、
その既存のコードをライブラリと言う。
・自分のコードの隙間を埋める既存のコードがライブラリ。
・メインのロジックは既存のコードであり、そこから自分のコードが呼び
出される場合、その既存のコードをフレームワークと言う。
・既存のコードの隙間に自分のコードを埋め込んでアプリに仕上げるのが
フレームワーク。
こう言っても分かりづらいだろうなあ。自分もJavaのStrutsとかを実際に
使ってみるまで分からなかった。
あとPythonのWebフレームワークって使ったことがないんで、そこから先は
他の人に聞いて。すまん。
0720デフォルトの名無しさん
2006/09/09(土) 08:46:59>カッチリ硬いという印象のあるPythonだが
まぢ?
0721デフォルトの名無しさん
2006/09/09(土) 08:51:140722デフォルトの名無しさん
2006/09/09(土) 08:57:200723デフォルトの名無しさん
2006/09/09(土) 09:25:53意味不明。
フレームワークとは自分の望むテンプレートを呼び出せるシステムのこと。
データ永続性のためにORマッパはテンプレート部分にデフォで含まれる。
フレームワークの利点は各コンポーネンツを admin を介するだけで自在に操れる点にある。
ユーザは指揮者となってタクトを振ってさえいればよい。
0724デフォルトの名無しさん
2006/09/09(土) 09:38:480725デフォルトの名無しさん
2006/09/09(土) 09:46:44これがなければ,「なんにでも噛みつきたいお年頃なのね」で済んだのに。
>>723
>ユーザは指揮者となってタクトを振ってさえいればよい。
おまえまともなコード書いたことないだろ。
タクト振って済めば開発者なんていらねえんだよ。
0726デフォルトの名無しさん
2006/09/09(土) 09:48:09困ったなあ。フレームワークの意味を知ってる?
http://e-words.jp/w/E38395E383ACE383BCE383A0E383AFE383BCE382AF.html
> フレームワークとは自分の望むテンプレートを呼び出せるシステムのこと。
それじゃテンプレートエンジンとどう違うの?
> データ永続性のためにORマッパはテンプレート部分にデフォで含まれる。
それはWebフレームワークにそういうものが多いだけ。そうでないのもある。
> フレームワークの利点は各コンポーネンツを admin を介するだけで自在に操れる点
> にある。
> ユーザは指揮者となってタクトを振ってさえいればよい。
なんかムズムズするが、まあいいやこれは。
0727デフォルトの名無しさん
2006/09/09(土) 09:51:130728デフォルトの名無しさん
2006/09/09(土) 09:55:40世の中にはたった2行でコミッター気取りの人もいるみたいだし,
まあいいんじゃないでしょうか.
0729デフォルトの名無しさん
2006/09/09(土) 09:56:390730デフォルトの名無しさん
2006/09/09(土) 09:58:54> タクト振って済めば開発者なんていらねえんだよ。
不要だよ。コピペで済むような、既存アプリを再利用することに対してはね。
>>726
> それじゃテンプレートエンジンとどう違うの?
原始的にスクリプトを吐くのではなくて、単体でも成り立つような既存のサービスをいくつか混ぜ合わせた上で吐き出すという違いがある。
要するに integrated か否かという違い。
> それはWebフレームワークにそういうものが多いだけ。そうでないのもある。
そうでないものの具体例を出してね。
0731デフォルトの名無しさん
2006/09/09(土) 10:03:40すごいね。一日中スレに張り付いているの?
0732デフォルトの名無しさん
2006/09/09(土) 10:07:38>そうでないものの具体例を出してね。
Zope
Webware for Python
SkunkWeb
CherryPy
Quixote
バカの相手は疲れるなあ。
0733デフォルトの名無しさん
2006/09/09(土) 10:08:56> 要するに integrated か否かという違い。
この説明だと、複数ライブラリを組み合わせて作った統合ライブラリは
全部フレームワークになってしまうぞ。まだ「タクトを振るだけ」という
俗っぽい表現のほうが近いぐらいだ。
> そうでないものの具体例を出してね。
いや、Strutsがまさにそれなんだけどね。
0734デフォルトの名無しさん
2006/09/09(土) 10:09:21> Zope
はい、ORマッパ入ってます。
> CherryPy
これはフレームワークではありません。
> Webware for Python
> SkunkWeb
> Quixote
これらは知らない。でも、その程度でしょう。
0735デフォルトの名無しさん
2006/09/09(土) 10:09:460736デフォルトの名無しさん
2006/09/09(土) 10:14:130737デフォルトの名無しさん
2006/09/09(土) 10:14:470738デフォルトの名無しさん
2006/09/09(土) 10:17:40>> CherryPy
>これはフレームワークではありません。
http://www.cherrypy.org/
思い切り
CherryPy is a pythonic, object-oriented HTTP framework.
と書いてあるんだが、まあよしとしよう(w
ところで ZOPE って O/R マッパーが内蔵されてるんだ
知らなかった
0739デフォルトの名無しさん
2006/09/09(土) 10:18:470740デフォルトの名無しさん
2006/09/09(土) 10:19:26同じものを、全く違う見方をしている人がいるというだけで嬉しい。
まあPythonユーザ一般がそうだと言うつもりはないが。
0741デフォルトの名無しさん
2006/09/09(土) 10:32:01よるからよなかにかけて、あたらしいあそびあいてがみつかりました。
うれしかったです。
さんじかんくらいねて、けいじばんであそんでいると、
やっぱり玉砕だ。
ごじかんくらいたっぷりひるねをしてからまたがんばろう。
0742デフォルトの名無しさん
2006/09/09(土) 10:32:39実際に使った感じはどうなんでしょう?
0743デフォルトの名無しさん
2006/09/09(土) 10:38:000744デフォルトの名無しさん
2006/09/09(土) 10:39:48そして長っ!
0745デフォルトの名無しさん
2006/09/09(土) 10:43:470746デフォルトの名無しさん
2006/09/09(土) 11:01:590747デフォルトの名無しさん
2006/09/09(土) 11:38:30なかなか大それたことを。
その言葉を使って何を説明したいのかっていう中身が重要なのでは?
便宜上どうしても定義が必要なら、自分はこういう意味で使っていると明示しておけばろよしくね?
その定義が明らかにおかしな場合は「こうじゃないですか?」と突っ込みはすれども、
「ちがう」と言われれば、周囲の人間は「ふーん」と流して本題に集中すべきかと。
そういう意味で、>>742の気持ちも解かるが、おれはそういう強引なしきりが嫌いだw
0748デフォルトの名無しさん
2006/09/09(土) 11:40:07ノシ
0749デフォルトの名無しさん
2006/09/09(土) 11:50:320750デフォルトの名無しさん
2006/09/09(土) 11:58:54「Python的」の意味だと俺には使えない。そんなものを語る資格も度胸も俺にはない。
「Pythonチック」とか「Python風味」ぐらいの意味なら使ってもいいかな。
0751デフォルトの名無しさん
2006/09/09(土) 12:23:47「Pythonっぽい」「Pythonにょろ〜」
0752デフォルトの名無しさん
2006/09/09(土) 12:23:53「Python的」「Pythonチック」「Python風味」の意味を定義してくれないとなんとも言えません
0753750
2006/09/09(土) 14:36:21「自称Pythonic」は「自称hacker」と同じぐらいナンセンスでバカっぽい。
それで思い出したんだけど、
ESRは「hackerだと認知されている人からhackerだと言ってもらえること」を
hackerの要件として挙げている。
だから「自称hacker」はバカっぽく聞こえるわけだ。
「Pythonic」も同じ側面がある希ガス。
つまり、自分以外の誰かのコードについて
「お、これってPythonっぽくていいじゃん」的に使う分には問題ないけど
自分のコードについて使うといかにも自画自賛っぽくてダメな感じがする。
「Pythonic」という形容詞はエロい人専用、と言ってみるテスト。
0754750
2006/09/09(土) 14:39:42自分のコードを「Pythonic」と形容できるのはエロい人だけ、と言い直してみるテスト。
0755デフォルトの名無しさん
2006/09/09(土) 14:43:32ろくなプログラミングは出来ない、と言ってみるテスト
0756750
2006/09/09(土) 14:44:200757デフォルトの名無しさん
2006/09/09(土) 14:56:07というか、全部同一人物か?
0758デフォルトの名無しさん
2006/09/09(土) 14:56:510759デフォルトの名無しさん
2006/09/09(土) 15:25:39ほんとに「荒らそう」としてる奴がいるとしか思えない。
0760デフォルトの名無しさん
2006/09/09(土) 15:38:260761デフォルトの名無しさん
2006/09/09(土) 15:46:24どっちがマシだろう。
どっちも嫌だな。
0762デフォルトの名無しさん
2006/09/09(土) 16:02:43+ 粘着私怨キチガイ
+ 長文バカ
+ 定義厨
+ ネットイナゴ
に汚染されています。
0763750
2006/09/09(土) 16:10:170764デフォルトの名無しさん
2006/09/09(土) 16:33:340765デフォルトの名無しさん
2006/09/09(土) 16:36:320766デフォルトの名無しさん
2006/09/09(土) 17:00:07Cで言うところのcharのポインターをintのポインターにキャストすることを
Pythonではどうしたらいいのでしょう?
int *p = (int*)"俺!俺だよ俺”;
0767デフォルトの名無しさん
2006/09/09(土) 17:05:02その目的まで書いたほうがアドバイスを得やすいであろう
0768766
2006/09/09(土) 17:14:48大本の理由はピックルしたものを暗号化したいと思い、
http://www.schneier.com/blowfish.html
こいつを移植中なんですが、32ビット幅で計算したほうが楽かなと
思い質問したしだいです。
0769デフォルトの名無しさん
2006/09/09(土) 17:27:090770デフォルトの名無しさん
2006/09/09(土) 17:30:010771766
2006/09/09(土) 17:35:33選択肢を増やしたいだけです。
そういったこともあり、できるだけ簡単そうなもの選んだつもりが。
実際pypiに似たものあるのも承知してますよ。
array.array("B",
でStringIOがとおらないのには参った
0772デフォルトの名無しさん
2006/09/09(土) 17:39:26Pyrexのこと言ってるのか?
ttp://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/
0773デフォルトの名無しさん
2006/09/09(土) 18:16:420774デフォルトの名無しさん
2006/09/09(土) 18:25:22いつまでも俺を捨てられず手数が増え敵が増え。
俺って最高だな!!!
0775デフォルトの名無しさん
2006/09/09(土) 18:27:550776デフォルトの名無しさん
2006/09/09(土) 18:28:090777766
2006/09/09(土) 18:30:11よくわからないのでスルーさせていただきました。
選択肢はpycryptとかCerealizerあたり。
>>773
そうですね。素直にord使います。
いっそorzにしてほしい。
0778デフォルトの名無しさん
2006/09/09(土) 18:37:17しかしな、世の中には俺より優れた人間なんていっぱい居る。
俺は俺を捨て、俺自身に敗北宣言をすることによって、
より優れた「俺共同体」と融合することが出来たと思うんだ。
俺共同体の俺より優れた別の俺共は、常に俺に対して屈服を要求し続けるわけだが、
相対としての俺共同体は個体としての俺より数段優れているので
なによりアウトプットのレベルが違うんだよ。比べものにならないくらい高いんだ。
これを俺は「俺2.0」と呼ぶことにした。
0779デフォルトの名無しさん
2006/09/09(土) 19:31:480780デフォルトの名無しさん
2006/09/09(土) 19:54:47オマエも俺共同体に入れよ。
0781デフォルトの名無しさん
2006/09/09(土) 21:01:13抵抗は無意味ですか?
0782デフォルトの名無しさん
2006/09/09(土) 21:08:020783デフォルトの名無しさん
2006/09/09(土) 21:31:370784デフォルトの名無しさん
2006/09/09(土) 21:33:110785デフォルトの名無しさん
2006/09/09(土) 22:06:410786デフォルトの名無しさん
2006/09/09(土) 22:38:42Pythonはインスタンス変数をサブクラスと共有しますか?
また、そうである場合、それを制限する方法はありますか?
0787デフォルトの名無しさん
2006/09/09(土) 22:55:200788デフォルトの名無しさん
2006/09/09(土) 22:57:210789デフォルトの名無しさん
2006/09/09(土) 22:57:500790デフォルトの名無しさん
2006/09/09(土) 23:02:43すみません。もしこの要件を満たさないのであれば、学ぶ価値がないという考えがあったので、
敢えて学ぶ前に質問させて頂きました。
ドキュメントを読んだところ、どうやら根本的な解決方法は存在しないようです。
(多少は問題視をしているようで、解決法「らしき」ものはありましたが…。)
0791デフォルトの名無しさん
2006/09/09(土) 23:33:16釣りでも煽りでも荒らしでもないならもっと具体的に書いてくれないと誰もまともに答えられない
できれば簡単なコードか具体的に書いてあるURL張っつけて
0792デフォルトの名無しさん
2006/09/09(土) 23:34:130793デフォルトの名無しさん
2006/09/09(土) 23:40:190794デフォルトの名無しさん
2006/09/09(土) 23:43:300795デフォルトの名無しさん
2006/09/09(土) 23:47:27class A:
def __init__(self):
self.x = 0
class B(A):
def __init__(self):
A.__init__(self)
self.x = 1 <- かぶってるのがいやん
ってことかなたぶん
0796デフォルトの名無しさん
2006/09/09(土) 23:47:34サブクラスとインスタンス変数を共有しない、というのは、
具体的な例を使って示すと、こういう事です。
あるクラスAでは、インスタンス変数vが使われている。
Aの作者はvがA以外によって操作されることを意図しない。
あるクラスBはAのサブクラスである。BにはAと同様に、インスタンス変数vが使われている。
Bの作者はvがB以外によって操作されることを意図しない。
こういうケースにおいて、PerlやRuby、そして恐らくPythonも、
インスタンス変数の名前の衝突によりAやBの作者の意図したい事態が引き起こされてしまいます。
この問題を、Javaの様に解決する方法はないのかと質問させて頂いた次第です。
0797デフォルトの名無しさん
2006/09/09(土) 23:52:11何だよプライベート変数ってw そっちのがよっぽどマイナーだよ。
0798デフォルトの名無しさん
2006/09/09(土) 23:54:33プライベート変数,って言うと外から変えられない感じ。
0799デフォルトの名無しさん
2006/09/10(日) 00:00:440800デフォルトの名無しさん
2006/09/10(日) 00:03:28なんでクラスB作る時点でクラスAから派生するの?
そういう用途ならラップするとか内部で生成して保持するとかじゃないの
0801デフォルトの名無しさん
2006/09/10(日) 00:10:16そうですか。どうやらあなたとは意見が合いそうにないです。
>>800
そういう用途とはどういう用途ですか?
>>797 に対してのレスであれば、このコードはあくまで普遍的に
(クラスを継承ことによって)この様な状況が起こり得るのことを示唆したのであって、
特定の用途や状況に限ったものではありません。
0802デフォルトの名無しさん
2006/09/10(日) 00:11:56× コード
× 797 → 796
0803デフォルトの名無しさん
2006/09/10(日) 00:19:270804デフォルトの名無しさん
2006/09/10(日) 00:20:58class A:
def __init__(self):
self.__x=1
def f1(self):
print self.__x*10
class B(A):
def __init__(self):
A.__init__(self)
self.__x=2
def f2(self):
print self.__x*10
b=B()
で、b.f1()は10、b.f2()は20って、ことで解決?
0805デフォルトの名無しさん
2006/09/10(日) 00:21:362. なんでわざわざ派生するの?
Javaの方がアクロバティックなことしてるだけじゃねえの
0806デフォルトの名無しさん
2006/09/10(日) 00:22:39それくらいストイックにならないと漢とは呼べないな。
俺ってすごいだろ。
0807デフォルトの名無しさん
2006/09/10(日) 00:24:09別のものには別の名前を付けようよ
0808デフォルトの名無しさん
2006/09/10(日) 00:26:10>この問題を、Javaの様に解決する方法はないのかと質問させて頂いた次第です。
python 的にはプライベート変数を使えばイナフじゃね?
http://www.python.jp/doc/release/tut/node11.html
java 的に・・・というのにこれからも拘るならば、python には向かないと思うね。
純粋な OOP じゃないから。
0809デフォルトの名無しさん
2006/09/10(日) 00:27:00意味が分からないです。
__による解決策も悪くないですね・・・。
問題視なされているようなのでPython開発陣の今後の対応に期待したいと思います。
皆さんお忙しい中ご返答ありがとう御座いました。
0810デフォルトの名無しさん
2006/09/10(日) 00:29:22Pythonには向かないかもねー
現状のPythonでも,アトリビュートの上書きを回避する方法はいくらでもあるのだから
活用すればいいだけの話で
0811デフォルトの名無しさん
2006/09/10(日) 00:33:570812デフォルトの名無しさん
2006/09/10(日) 00:36:310813デフォルトの名無しさん
2006/09/10(日) 00:40:42__があれば十分です。
>>806に漢をみた。
0814デフォルトの名無しさん
2006/09/10(日) 00:41:200815デフォルトの名無しさん
2006/09/10(日) 00:54:01この場合、組み込み関数のpropertyを使えば十分だと思う。
0816デフォルトの名無しさん
2006/09/10(日) 00:57:38そもそもあれはコンパイラがOS等の環境に合わせた解決策であって、
究極に言えばOSやCPUがインスタンスでシンボル名を解決してくれれば必要ないわけで。
もちろんJava(VM)はそれをやってくれるので、マングルは無い。
0817デフォルトの名無しさん
2006/09/10(日) 01:22:38おまいの価値観では学ぶ価値がない。
だから、もう来るな。
0818デフォルトの名無しさん
2006/09/10(日) 01:23:230819デフォルトの名無しさん
2006/09/10(日) 01:25:59C:\IronPython>ipy
IronPython 1.0.2424 on .NET 2.0.50727.42
Copyright (c) Microsoft Corporation. All rights reserved.
>>> import clr
>>> clr.AddReference("System.Windows.Forms")
>>> import System.Windows.Forms as WinForms
>>> WinForms.MessageBox.Show("Hello", "Hello World")
OK
最後の
>>> WinForms.MessageBox.Show("Hello", "Hello World")
が、メッセージボックスにHelloと表示、Okボタンが出て終わり
Hello Worldは何処にいったのでせうか??
0820デフォルトの名無しさん
2006/09/10(日) 01:27:110821デフォルトの名無しさん
2006/09/10(日) 01:32:14これはこれは。私はスレのヌシ様を怒らせてしまったようです。なんて罪なことを!
色んな意味で、このスレでは私のPythonに対するイメージが確立されました。
たとえ学ぶことがあっても、もうここで質問するようなことは無いのでどうぞお気を沈めてください^^
0822デフォルトの名無しさん
2006/09/10(日) 01:33:40pythonでもマングルされた名前を使うことはまずないよ。
0823デフォルトの名無しさん
2006/09/10(日) 01:36:31迂闊でした。orz
とにかく、Win環境に親和性のあるPythonが手にはいって大喜びです
次は、Haskellがほしい
0824デフォルトの名無しさん
2006/09/10(日) 02:07:38結局、釣り宣言かよ
0825デフォルトの名無しさん
2006/09/10(日) 07:23:04キチガイが和もうとして失敗したんだよ(WWWWWW
0826デフォルトの名無しさん
2006/09/10(日) 07:45:01歴史的にみてしかたないっちゃあそれまでだけど、今の仕様だとクラスとそうでないのとがごっちゃになっていて、なんかいまいちな感じがするのはおれだけ?
0827デフォルトの名無しさん
2006/09/10(日) 07:50:36きょうはキャラをかえてみた。ひたすらていしせいでたいおうしようとするさくせんだ。
しばらくはうまくいった。でも、やはりいつものくせが出てしまった。
また玉砕だ!!!
あたらしいさくせんをかんがえて、またがんばろう。
0828デフォルトの名無しさん
2006/09/10(日) 08:40:370829デフォルトの名無しさん
2006/09/10(日) 10:02:50よくわからないけど、こういうことですか?
return mangle(name)
0830デフォルトの名無しさん
2006/09/10(日) 10:42:250831デフォルトの名無しさん
2006/09/10(日) 12:50:200832デフォルトの名無しさん
2006/09/10(日) 13:43:08クラスだよ。
0833デフォルトの名無しさん
2006/09/10(日) 15:38:14PythonWinをインストールして、
デバッグ環境を構築しました。
PythonWinでサンプルプログラムを実行する事は出来たのですが、
プログラム実行時に、引数を指定する方法が分かりません。
(※"TEST.py -i abc.txt"というように、TEST.pyに2つの引数を与えて
デバッガ上で実行したい場合に、「-i」と「abc.txt」の指定方法が分かりません)
申し訳ないですが、デバッガ上で、
プログラム実行時に引数を指定する方法を教えて下さい。
0834デフォルトの名無しさん
2006/09/10(日) 16:08:19を時折逆さまに書いてしまう脳足りんの俺様の為に
string.encodeToとstring.decodeBy
にしてくれるといいなぁ。
0835デフォルトの名無しさん
2006/09/10(日) 17:12:05メニューの File->Run で出るダイアログの Arguments
0836デフォルトの名無しさん
2006/09/10(日) 17:15:47decode は 使ったことがない
0837デフォルトの名無しさん
2006/09/10(日) 17:37:15多分もういないんだろうけど、一応。
Pythonのクラスシステムはとんでもなく原始的。
selfとか、マングリングとか、普通なら処理系に任せられるところを
人間が意識しなきゃならない。
だけどこんなのでも、意外に実用に耐える。
まあ騙されたと思って使ってみそ。
0838デフォルトの名無しさん
2006/09/10(日) 18:07:23>人間が意識しなきゃならない。
うーん...
そういう風に思う人には向かないんじゃないのかな...
0839デフォルトの名無しさん
2006/09/10(日) 18:14:48そうかな。それなりに使えているんならいいと思うが。
それなら、Pythonに向いている人はどう思うの?
0840デフォルトの名無しさん
2006/09/10(日) 18:24:23堅い言語仕様だとライブラリに問題があったときとかに変態的テクニック使いまくるハメになるし
0841デフォルトの名無しさん
2006/09/10(日) 18:28:37まあそういう要素があってこそ良くなる部分も無い訳じゃない。
0842デフォルトの名無しさん
2006/09/10(日) 18:54:500843デフォルトの名無しさん
2006/09/10(日) 19:01:05kwsk
0844デフォルトの名無しさん
2006/09/10(日) 19:59:39無いと思うが。
0845デフォルトの名無しさん
2006/09/10(日) 20:12:330846デフォルトの名無しさん
2006/09/10(日) 20:36:13経験または想像力の欠如
0847デフォルトの名無しさん
2006/09/10(日) 20:47:280848デフォルトの名無しさん
2006/09/10(日) 20:52:430849デフォルトの名無しさん
2006/09/10(日) 21:04:150850デフォルトの名無しさん
2006/09/10(日) 21:21:50このスレではずっとできないでいるんだよ。残念なことに。
0851デフォルトの名無しさん
2006/09/10(日) 21:42:04ずっと前にもどこかで質問したけれど回答もらえなかったが。
> 処理系実装者が手を抜ける
っていってもそんなに大きなメリットにはならない気がするし。
0852デフォルトの名無しさん
2006/09/10(日) 21:45:59明示できて便利。
0853デフォルトの名無しさん
2006/09/10(日) 21:50:390854デフォルトの名無しさん
2006/09/10(日) 21:56:12selfに関しては、こんなページがある。
ちょっと怪しいところもあるけれど、参考にはなると思う。
0855デフォルトの名無しさん
2006/09/10(日) 21:57:27実装するのはマンドクセ
全部オブジェクトだし辞書があるからいーじゃん
というのはあったかもな
0856デフォルトの名無しさん
2006/09/10(日) 22:01:180857デフォルトの名無しさん
2006/09/10(日) 22:06:15時々、自分がコンパイラの代わりをやらされているような気にもなるが。
0858デフォルトの名無しさん
2006/09/10(日) 22:10:090859デフォルトの名無しさん
2006/09/10(日) 22:11:140860デフォルトの名無しさん
2006/09/10(日) 22:23:38少数派か多数派か知らんけど、俺は嫌い。
何で俺様がいちいちselfを書かねばならんのだ、って感じ。
0861デフォルトの名無しさん
2006/09/10(日) 22:28:06冗談はともかく、予約語が一つ減るというのはメリットかも
メソッドを単なる関数として使いまわせる、というのもあるね
0862デフォルトの名無しさん
2006/09/10(日) 22:29:00まぁ今流行ってる大抵のオブジェクト指向言語ではself相当は書かないからなぁ。
日本でPythonを最初の言語に選択するケースも少ないだろうから、
そう思う人が多くてもしょうがないんじゃねーかね。
一応self必須は、読みやすさに貢献しているってメリットがある。
LEGBルールから、Lに存在しなければGかBに存在すると分かるが
selfが省略可能だと疑う場所が一つ増える。
0863デフォルトの名無しさん
2006/09/10(日) 22:31:58だったら明日からは自分用は、aでいいや。
確かにPythonは(自由というか緩いというか)、
True/Falseにさえ代入できるくらいに、
予約語少ないもんなぁ。
Noneくらいでしか怒られない寛大さ。
0864デフォルトの名無しさん
2006/09/10(日) 22:32:50分かりやすい文章書けないの?
0865デフォルトの名無しさん
2006/09/10(日) 22:36:120866デフォルトの名無しさん
2006/09/10(日) 22:36:29まあLocalとGlobalくらいは文脈からわかるけど
0867デフォルトの名無しさん
2006/09/10(日) 22:39:29調べてまでも理解する価値なしと判断したまで。
0868デフォルトの名無しさん
2006/09/10(日) 22:39:52いや、selfが予約語で無いぐらいで「予約語少ない」と評するのはどうかと思うが。
他の一般的な言語と同じくらい予約語あるぞ。
printとか他の言語じゃ予約語じゃないものまであるし。
0869デフォルトの名無しさん
2006/09/10(日) 22:40:59じゃあ、俺はお前の存在を理解する価値無しと判断させてもらう。
よって特に説明は市内。
0870デフォルトの名無しさん
2006/09/10(日) 22:44:18そうですか。
0871デフォルトの名無しさん
2006/09/10(日) 22:46:030872デフォルトの名無しさん
2006/09/10(日) 22:48:59http://tinyurl.com/q2tld
0873デフォルトの名無しさん
2006/09/10(日) 22:49:400874デフォルトの名無しさん
2006/09/10(日) 22:54:49まだ「保守」だけのカキコが連なる方がマシじゃないか……?
0875デフォルトの名無しさん
2006/09/10(日) 22:56:530876デフォルトの名無しさん
2006/09/10(日) 22:57:11受け売り乙。
0877デフォルトの名無しさん
2006/09/10(日) 22:58:270878デフォルトの名無しさん
2006/09/10(日) 23:06:160879デフォルトの名無しさん
2006/09/10(日) 23:09:480880デフォルトの名無しさん
2006/09/10(日) 23:14:10そうなったら「self」なんて書かないで「俺」って書くのに
0881デフォルトの名無しさん
2006/09/10(日) 23:14:520882デフォルトの名無しさん
2006/09/10(日) 23:18:340883デフォルトの名無しさん
2006/09/10(日) 23:19:09クラス指向ではないから self が必要なんじゃないだろか
>>880
まずは str と unicode の一本化からだろうな
昨日は ElementTree で unicode を喰ってくれなくて驚いたよ
0884デフォルトの名無しさん
2006/09/10(日) 23:19:46何を問題にしているのですか?
クラス変数とインスタンス変数の区別はどうするのでしょう?
0885デフォルトの名無しさん
2006/09/10(日) 23:20:16タイミングがズレたんだよ。selfの代わりに「俺」はかっこよすぎ。是非使ってくれ。
0886デフォルトの名無しさん
2006/09/10(日) 23:29:55selfは4byteだよ。
0887デフォルトの名無しさん
2006/09/10(日) 23:35:09utf8で俺は3バイトだし、utf16ではそもそも全て2バイトだし。
0888デフォルトの名無しさん
2006/09/10(日) 23:38:410889デフォルトの名無しさん
2006/09/10(日) 23:56:12自分で決められるようにしたんだろうな。
0890デフォルトの名無しさん
2006/09/10(日) 23:58:400891デフォルトの名無しさん
2006/09/10(日) 23:59:46wife とかどうだ
0892デフォルトの名無しさん
2006/09/11(月) 00:02:210894デフォルトの名無しさん
2006/09/11(月) 00:18:570895デフォルトの名無しさん
2006/09/11(月) 00:19:24かかあ天下
>>892
ケダモノ
0897デフォルトの名無しさん
2006/09/11(月) 01:11:01Ruby の場合、仕様上は self だろうけど現実で相応するのは @ だろうな
0898デフォルトの名無しさん
2006/09/11(月) 02:46:05名前のメソッドがある場合、Pythonだとselfの有無で呼び分けできるわけ
ですが、これをRubyでやるにはどうすればいいでしょうか。
def foo():
print "outer"
class A:
def foo(self):
print "inner"
class B(A):
def boo(self):
self.foo() # inner
foo() # outer
B().boo()
0899デフォルトの名無しさん
2006/09/11(月) 03:19:180900デフォルトの名無しさん
2006/09/11(月) 05:19:19それRubyのソースじゃないし
0901デフォルトの名無しさん
2006/09/11(月) 05:52:53def boo
foo # 明示的に self.foo でも良い
Kernel.foo
end
ところで、Python の self が必須なのは
元々 self が予約語でなかった Python に後から予約語追加すると
過去のコードで不具合出るからじゃないのか?
んでその時に互換性を重視してそういう仕様にした結果
今度は self の省略も互換性が無くなるから
中々出来なくなっちゃってこじ付けてるんでは
0902デフォルトの名無しさん
2006/09/11(月) 07:10:35リポジトリの日付が正しけりゃ少なくとも13年前には既にselfってたことになる
(;´Д`)つ http://jp.rubyist.net/magazine/?0008-Legwork
0903デフォルトの名無しさん
2006/09/11(月) 10:10:270904898
2006/09/11(月) 10:13:52def foo
puts "outer"
end
class A
def foo
puts "inner"
end
end
class B < A
def boo
foo
Kernel.foo
end
end
B.new.boo
ruby 1.8.5 (2006-08-25)
inner
a.rb:15:in `boo': private method `foo' called for Kernel:Module (NoMethodError)
from a.rb:19
Rubyユーザですら間違えるというのは、つまりPythonのわかりやすさが勝っている
ということですね。「間違いようのない方法が1つあるのがいいね」でしたっけ。
0905901
2006/09/11(月) 11:47:03あーそっか。private だから無理なんだな。
Kernel.module_eval{foo}
で良いかな?
Kernel.method(:foo).call
なんて変態的なやり方もあるが。
> Rubyユーザですら間違えるというのは
> つまりPythonのわかりやすさが勝っているということですね。
その通り。Python は判りやすいよ。
一人では Ruby 使ってるが多人数で使う気にはなれんし。
Ruby は出来れば速いが知らない事は本当に解らない。
> 「間違いようのない方法が1つあるのがいいね」
これ言ったの誰だろ、またいつもの「教祖様の狂言」か?w
matz 自体は Ruby スレでも叩かれるぐらい厨発言繰り返してるよ。
こないだもMLで矛盾した発言繰り返してたし。
Ruby 自体は好きだが
あの教祖はどうにも疑わしい Ruby 厨の愚痴でした。
スレ汚し失礼。
0906デフォルトの名無しさん
2006/09/11(月) 12:04:30yumリポジトリでは2.4のRPMが提供されていません。
ソースからインストールするしかないでしょうか? 同OS上で2.4を使っている方はいますか?
0907デフォルトの名無しさん
2006/09/11(月) 12:05:22puts "outer"
end
public :foo
class A
def foo
puts "inner"
end
end
class B < A
def boo
foo
Kernel.foo
end
end
B.new.boo
0908デフォルトの名無しさん
2006/09/11(月) 13:26:56タプルのリスト、例えば
[('A', 1), ('B', 2)]
を、リストのリスト
[['A', 1], ['B', 2]]
にしたい場合は、各要素をコピー&変換した新しいリストを作るしかないですか?
0909デフォルトの名無しさん
2006/09/11(月) 13:33:16>>> a = [('A', 1), ('B', 2)]
>>> map(list, a)
[['A', 1], ['B', 2]]
0910デフォルトの名無しさん
2006/09/11(月) 13:39:08やっぱ、そうですか・・
データベース関連のスクリプト作ってて千件近いリスト処理になるんで
SQL段階で処理するか、Pythonに取り込んだあと処理するか思案中です。
0911デフォルトの名無しさん
2006/09/11(月) 14:05:09B = [('foo',), ('bar',)]
c = [ [aa, ab, b] for (aa, ab), b in zip(a, b)]
みたいなことをしたいのかな。
0912デフォルトの名無しさん
2006/09/11(月) 14:27:450913デフォルトの名無しさん
2006/09/11(月) 14:29:460914デフォルトの名無しさん
2006/09/11(月) 14:43:38よっぽどカラム数の多いテーブルじゃなければ
千件程度なら絶対時間が短いだろうからどっちでやっても大差なさげ。
将来件数が増える見込みがあるならSQLでやっとくのが無難だろうね。
(というか、SQL で書ける処理は全部 SQL で書くのが筋でしょう。)
0915デフォルトの名無しさん
2006/09/11(月) 21:58:410916デフォルトの名無しさん
2006/09/11(月) 22:06:53Python 処理系を SQL で記述、とかの話か?
そりゃ、SQL だろうが Whitespace だろうが無限のリソースがあれば何でもかんでも記述可能だろうけどね
0917デフォルトの名無しさん
2006/09/11(月) 22:09:28下記のコードのように、AAクラスからAクラスの__init__()を呼びたい場合に、
super()はどう書けばいいのでしょうか?
class A:
def __init__(self):
print "__init__ of A"
class AA(A):
def __init__(self):
A.__init__(self) # これはOK
super(AA).__init__(self) # これはエラーになりました。
print "__init__ of AA"
aa = AA()
0918デフォルトの名無しさん
2006/09/11(月) 22:13:40一応もう一度書いておきます。
class A:
def __init__(self):
print "__init__ of A"
class AA(A):
def __init__(self):
A.__init__(self) # これはOK
super(AA).__init__(self) # これはエラーになりました。
print "__init__ of AA"
aa = AA()
0919デフォルトの名無しさん
2006/09/11(月) 22:24:55みんなのPython
0920デフォルトの名無しさん
2006/09/11(月) 22:36:53class A(object): # 新形式クラスでないと駄目
def __init__(self):
print "__init__ of A"
class AA(A):
def __init__(self):
A.__init__(self) # これはOK
super(AA, self).__init__() # これでOK
print "__init__ of AA"
aa = AA()
0922デフォルトの名無しさん
2006/09/11(月) 23:01:500923デフォルトの名無しさん
2006/09/11(月) 23:22:03http://pc8.2ch.net/test/read.cgi/tech/1157984472/
キチガイが立てたスレは今日中に埋め立てましょう.
0924デフォルトの名無しさん
2006/09/11(月) 23:39:310925デフォルトの名無しさん
2006/09/11(月) 23:42:190926デフォルトの名無しさん
2006/09/11(月) 23:47:230927デフォルトの名無しさん
2006/09/11(月) 23:52:10Python 2.5
ネタはいろいろあるから
それなりに盛り上がるかも試練
0928デフォルトの名無しさん
2006/09/12(火) 00:02:06って、
__import__ で、かくとどうなるのでしょうか?
0929デフォルトの名無しさん
2006/09/12(火) 00:19:54b,c,dというリストを期待したPerlの@list=(b..d)相当の操作はどうしましょう。
数字ならrangeでごまかせば似たようにできるんだけど、文字は怒られた。
あと、m//とs///とか。検索すると、matchとかsubとかそれっぽい機能が
メソッドにはあるみたい。
0930デフォルトの名無しさん
2006/09/12(火) 00:30:11>> 「間違いようのない方法が1つあるのがいいね」
>
> これ言ったの誰だろ、またいつもの「教祖様の狂言」か?w
Zen of Python の一節じゃないの?
0931デフォルトの名無しさん
2006/09/12(火) 00:43:490932デフォルトの名無しさん
2006/09/12(火) 00:46:25要はCOBOLerみたいな、何でも
SELECT * FROM MYTABLE
して加工なんて阿呆な事すなっつー事でそ
0933デフォルトの名無しさん
2006/09/12(火) 04:57:18そうなの?リファレンスマニュアルを見る限り、クラスは型のひとつであり、リストや辞書は(クラスでない)型であると書いてるように見えるけど。
じゃあPythonでは
class list:
....
とか
class dict:
....
というふうに定義されていると考えていいの?
0934デフォルトの名無しさん
2006/09/12(火) 06:22:54Microsoft IronPython 1.0
http://pc8.2ch.net/test/read.cgi/tech/1157686822/
0935デフォルトの名無しさん
2006/09/12(火) 08:06:520936デフォルトの名無しさん
2006/09/12(火) 09:02:42そうか、厳密に言うとクラスじゃないね。訂正。
でも class mylist(list): のように継承できるし、
isinstance() はクラスのインスタンスにも [] や {} にも同じように働く。
違うのは組み込み型は変更できない(list.foo=1みたいな代入は不可)ぐらいなもので
ほとんどの場合はクラスと同じように使える。
0937デフォルトの名無しさん
2006/09/12(火) 09:22:19| ノ\ ヽ |
/ ●゛ ● | |
| ∪ ( _●_) ミ j
彡、 |∪| | J
/ ∩ノ ⊃ ヽ
( \ / _ノ | |
.\ “ /__| |
\ /___ /
0938デフォルトの名無しさん
2006/09/12(火) 10:14:06予定通りリリースされるんだろうか
0939デフォルトの名無しさん
2006/09/12(火) 11:05:17ttp://www.python.org/dev/peps/pep-0356/
0940デフォルトの名無しさん
2006/09/12(火) 11:18:30サンクス
気になるならちゃんとPEPを見れば良かったね
0941デフォルトの名無しさん
2006/09/12(火) 18:05:24コードの連続した文字列を生成する必要が、まず思いつかん。
0942デフォルトの名無しさん
2006/09/12(火) 18:44:57まあめったに使わんわな
0943デフォルトの名無しさん
2006/09/12(火) 18:55:10>>> ''.join(chr(c) for c in range(ord('b'), ord('d')+1))
'bcd'
0944デフォルトの名無しさん
2006/09/12(火) 18:55:33map(chr, range(ord('a'), ord('z') + 1))
0945デフォルトの名無しさん
2006/09/12(火) 19:25:22>>943 カッコが足りないと思ったんだけど、ちゃんと動いた。
ジェネレータ式のカッコと関数呼び出しのカッコって兼用できるの?
リスト内包表記だったら、こう書かなきゃならないのに。
''.join([chr(c) for c in range(ord('b'), ord('d')+1)])
この[]が()にならなきゃならないかと思ってた。
0946デフォルトの名無しさん
2006/09/12(火) 19:43:040947デフォルトの名無しさん
2006/09/12(火) 19:48:04文法的に許される場所ならジェネレータ式に ( ) は不要。
[ ] の中にジェネレータ式があるとジェネレータがリストに変換されるだけ。
0948デフォルトの名無しさん
2006/09/12(火) 19:49:58The parentheses can be omitted on calls with only one argument.
へぇー
0949デフォルトの名無しさん
2006/09/12(火) 19:53:08[expr(x) for x in 1, 2, 3]はOKだけど(expr(x) for x in 1, 2, 3)はダメなんだと。
0950デフォルトの名無しさん
2006/09/12(火) 20:07:00929は['b', 'c', 'd']を期待してると思ったんだけど、違うの?
Perl読めね
0952デフォルトの名無しさん
2006/09/12(火) 21:05:080953デフォルトの名無しさん
2006/09/12(火) 22:13:46粘着が消えてくれた証なら喜ばしいことだ。
0954デフォルトの名無しさん
2006/09/12(火) 23:00:12どうせ基地外がたてたスレだし.
0955デフォルトの名無しさん
2006/09/12(火) 23:00:300956デフォルトの名無しさん
2006/09/13(水) 01:17:11二度と戻ってくるなよ。
0957デフォルトの名無しさん
2006/09/13(水) 02:00:06>955
0958デフォルトの名無しさん
2006/09/13(水) 16:38:36雄弁は金だよ、オマエ。
0959デフォルトの名無しさん
2006/09/13(水) 17:22:380960デフォルトの名無しさん
2006/09/13(水) 17:24:190961デフォルトの名無しさん
2006/09/13(水) 17:27:040962デフォルトの名無しさん
2006/09/13(水) 17:44:390963デフォルトの名無しさん
2006/09/13(水) 17:45:220964デフォルトの名無しさん
2006/09/13(水) 17:45:510965デフォルトの名無しさん
2006/09/13(水) 18:04:560966デフォルトの名無しさん
2006/09/13(水) 18:22:420967デフォルトの名無しさん
2006/09/13(水) 18:45:570968デフォルトの名無しさん
2006/09/13(水) 19:29:310969デフォルトの名無しさん
2006/09/13(水) 23:15:44, '"  ̄ ヽ.
ル)"ノノルλ
ルil´_ゝ`ノリ
〃//ヾ ゴリッ
/_ノ_>ゝ○-++#####∵:ブ゙チッ:
し'(__) ⊂⌒~⊃。Д。)⊃
0970デフォルトの名無しさん
2006/09/13(水) 23:38:36〃//ヾ ゴリッ
/_ノ_>ゝ○-++#####∵:ブ゙チッ: ← 私怨粘着荒らしキチガイ
し'(__) ⊂⌒~⊃。Д。)⊃
0971デフォルトの名無しさん
2006/09/15(金) 00:31:02メソッドで ( ) たれる前と後に『 self. 』と言え!分かったかウジ虫ども!
0972デフォルトの名無しさん
2006/09/15(金) 00:36:460973デフォルトの名無しさん
2006/09/15(金) 01:55:060974デフォルトの名無しさん
2006/09/15(金) 04:49:380975デフォルトの名無しさん
2006/09/15(金) 20:54:570976デフォルトの名無しさん
2006/09/15(金) 20:55:310977デフォルトの名無しさん
2006/09/15(金) 20:56:140978デフォルトの名無しさん
2006/09/15(金) 20:57:040979デフォルトの名無しさん
2006/09/15(金) 21:16:190980デフォルトの名無しさん
2006/09/15(金) 22:13:33Stiffと偉大なプログラマー達-登場人物
http://blog.livedoor.jp/dankogai/archives/50628933.html
…
Guido Van Rossum - プログラミング言語Python の創設者。
Stiffと偉大なプログラマー達-プログラミングを学んだのは
http://blog.livedoor.jp/dankogai/archives/50628965.html
…
Guido Van Rossum:
大学には大きなメインフレームと多くの(コンピューター関連の)コースがあっ
た。私にはとても大事な経験。
Stiffと偉大なプログラマー達-最重要な技能
http://blog.livedoor.jp/dankogai/archives/50628992.html
…
Guido Van Rossum:
一般的すぎて答えづらいなあ:-)。朝食に卵を料理する能力は欠かせないと思う。
Stiffと偉大なプログラマー達-プログラマーと数学・物理
http://blog.livedoor.jp/dankogai/archives/50629021.html
…
Guido Van Rossum:
数学に関してはイエス。ただしその一部。微分方程式は自分にはどうでもいい
が、代数と論理学が重要。物理に関しては、多くのことに興味をもつのはよい
ことだという点を除けばそうは思わない。
0981デフォルトの名無しさん
2006/09/15(金) 22:20:21http://blog.livedoor.jp/dankogai/archives/50629053.html
…
Guido Van Rossum:
ごめん。水晶玉は苦手でね。私はCGIの登場を実際の登場の五年後に予測した
ことがあるし:-)
Stiffと偉大なプログラマー達-最近の技術
http://blog.livedoor.jp/dankogai/archives/50629063.html
比較的最近の技術の習得のために三ヶ月あるとしたら、どれを学びますか?
…
Guido Van Rossum:
スノーボード。
Stiffと偉大なプログラマー達-10倍、100倍の生産性
http://blog.livedoor.jp/dankogai/archives/50629080.html
プログラマーの中には、生産性が10倍、100倍高いものたちがいるが、その秘訣は?
…
Guido Van Rossum:
遺伝的に異なる脳の構造。
Stiffと偉大なプログラマー達-お気に入りの道具
http://blog.livedoor.jp/dankogai/archives/50629113.html
…
Guido Van Rossum:
Unix/Linux, Python, vi+emacs, Firefox。
0982デフォルトの名無しさん
2006/09/15(金) 22:24:35http://blog.livedoor.jp/dankogai/archives/50629146.html
…
Guido Van Rossum:
Neil StephensonのQuicksilver。
http://www.amazon.co.jp/exec/obidos/ASIN/0060593083
Stiffと偉大なプログラマー達-一般書籍
http://blog.livedoor.jp/dankogai/archives/50629163.html
…
Guido Van Rossum:
Neil StephensonのQuicksilver。
Stiffと偉大なプログラマー達-音楽
http://blog.livedoor.jp/dankogai/archives/50629176.html
…
Guido Van Rossum:
Philip Glass.
(以上。個人的には、フィリップ・グラスがいかにもだなあと思った)
0983デフォルトの名無しさん
2006/09/15(金) 22:56:130984デフォルトの名無しさん
2006/09/16(土) 00:15:48> …
> Guido Van Rossum:
> 遺伝的に異なる脳の構造。
身もふたも無いな。
0985デフォルトの名無しさん
2006/09/16(土) 00:55:44def parsefile(f):
template = [];TEMP = template.append
TEMP("html = []\nHTML = html.append\nHTML(\"\"\"\n")
pycode = False
indent = 0
tab = "\t"
for line in f.readlines():
if pycode
if "?>\n" in line:
TEMP(line.replace("?>\n", "\n%sHTML(\"\"\"" % (tab * indent)))
python = False
elif line[-2] == ":":
TEMP(line)
indent += 1
elif "#end" in line:
indent -= 1
else:
TEMP(line)
else:
if "<?\n" in line:
TEMP(line.replace("<?\n", "\"\"\" %% locals())\n%s" % (tab * indent)))
python = True
else:
TEMP(line)
TEMP("\"\"\" % locals())")
exec("".join(template))
return "".join(html)
html = parsefile(open("template.html"))
道のりは遠い...orz
0986デフォルトの名無しさん
2006/09/16(土) 01:38:10↓
TEMP('""" % locals())')
0987デフォルトの名無しさん
2006/09/16(土) 10:16:460988デフォルトの名無しさん
2006/09/16(土) 12:10:480989デフォルトの名無しさん
2006/09/16(土) 12:59:350990デフォルトの名無しさん
2006/09/16(土) 13:07:470991デフォルトの名無しさん
2006/09/16(土) 13:12:120992デフォルトの名無しさん
2006/09/16(土) 13:15:130993デフォルトの名無しさん
2006/09/16(土) 13:16:300994デフォルトの名無しさん
2006/09/16(土) 13:17:070995デフォルトの名無しさん
2006/09/16(土) 13:19:100996デフォルトの名無しさん
2006/09/16(土) 13:22:400997デフォルトの名無しさん
2006/09/16(土) 13:24:580998デフォルトの名無しさん
2006/09/16(土) 13:25:590999デフォルトの名無しさん
2006/09/16(土) 13:28:281000デフォルトの名無しさん
2006/09/16(土) 13:28:56人生を無為に浪費して誰からも注目されず
年老いて死んでゆくリアル敗北者氏ね。
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。