Pythonお勉強スレッド Part2
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG前スレ
http://pc.2ch.net/test/read.cgi/tech/965815778/
過去スレ
http://mentai.2ch.net/prog/kako/965/965058106.html
>>2 2GET
>>3 関連書籍
>>4 関連サイト
0153105=111
NGNG言葉足りなさ過ぎだよアナタ…。
それはともかくレスどうもです。文字リテラルとselfに関するサンプルですね。
この場合、変数やクラス名はそのまんま参照になってるということなんですな。
でもこれみてると思うんだけど、Cやアセンブラなんかで直にメモリさわった
経験のない人には、こういうのってどうイメージしてるんだろ、って思う。
これみてると、確かに代入っていうのは違和感あるよなぁ…でもフツーにint
なんかだったら別に代入でもいいんじゃないか、とも思う。混乱の元かな?
>>149
…なんつーか、ここまでアレだと可哀相に思えて来るよ…。
他人を見下して自信を保とうとするのは好ましい事ではないと思うな。
>>150
どうも、このスレをひっかきまわしている中心人物です。すんません。
>>151
ほっといてくだちい。(笑)
>>152
どうも。まあ、空気読めない人間はどこにもいる訳で…。(汗
0154デフォルトの名無しさん
NGNGその意図は?
その例が、なんで、クラスとインスタンスの仕組みの解説になるのか、わからん。
単にインスタンスに無い属性は、クラスの属性から探すっていう事だけしか示していないようだが…
0156デフォルトの名無しさん
NGNG0158デフォルトの名無しさん
NGNG> どうも。まあ、空気読めない人間はどこにもいる訳で…。(汗
あんたもね。
0159デフォルトの名無しさん
NGNG0160デフォルトの名無しさん
NGNGやっと日本でも定着してきた証拠だな。
赤飯でも炊くか?
0161157
NGNGメソッドの第一引数にはインスタンスを渡さなくちゃいけないっていう*規則*になってること
x.f()はClassOfx.f(x)のシンタックスシュガーだってこと、
最低この2つがわかってれば、>>144の例が、メソッドの第一引数がインスタンスだって
保証されてることの例としては、ナンセンスだってわかるだろ。
>>144
>Pythonのクラスとインスタンスがどんな仕組みの上に成り立っているのか、
>理解できてないんじゃない?
>>144は、init(self)を呼ぶ前にFooのインスタンスは属性xを持っていないっていう事しか
示してないんじゃないか?
つーこった。
ひきつづき、つっこみよろしく。
0162デフォルトの名無しさん
NGNG... x = 'Hello'
... def init(this):
... this.x = 'Good bye'
Foo.xが属性として参照可能になるのって仕様としてどうなの?
x('Hello'を参照している方)はローカル変数になる方が良い気がする。
あと、pythonにおけるクラスとインスタンスの定義って何?
確かpythonは2.2からmetaclassのサポートがあるので、
明確に定義するのが難しいと思うんだが、そう感じるのは俺だけ?
0163デフォルトの名無しさん
NGNGPythonは、アクセス制限が出来なから、外から参照できないっていう
意味でのローカル変数ってのは、存在しないんだよね。
>明確に定義するのが難しいと思うんだが
クラスとインスタンスってのはは、相対的な関係だってことだよ。
0164デフォルトの名無しさん
NGNG0165デフォルトの名無しさん
NGNG意味不明じゃ
この知ったか野郎
0166名無しさん@Emacs
NGNG>Pythonは、アクセス制限が出来なから
できなかったからのまちがい??
__hoge
_hoge
でできます。
_おおいほど制限あり.
0167163
NGNG「出来ないから」のつもりでした。 で、最近のバージョンはアクセス制限できるの?
漏れの知ってるのは、__name が _classname__nameに変換されるところまでで、フルネーム書けば外からアクセスできる、ってとこまで。
>>165
クラスもメタクラスから見ればインスタンスだってことだ、だから相対的。
このへん、Smalltalkやってれば、ごくあたりまえの事だよ。
オブジェクト指向FAQ
http://www.zzz.or.jp/~iizuka/EOO/Japanese/oofaq-j/oo-faq-toc.html
の、「メタクラスって何ですか?」のあたりを読んでみてほしい。
0168名無しさん@Meadow
NGNGフルで書くとアクセスできるね。
0169デフォルトの名無しさん
NGNGキミの言いたいことがようわからん。
「メソッドの第一引数について解説するために適切なコード」ってのを出してくれよ。
0170161
NGNG「ほら、最初の引数として渡したオブジェクトが、呼ばれた側の最初の仮引数になってるよ」
って例をあげてもしょうがないだろ。
メソッドの第一引数にはインスタンスを渡さないとエラーになることを示すなら、例えばこー
>>> class Foo:
... def foo(a):
... a
...
>>> Foo.foo(0)
Traceback (most recent call last):
File "<interactive input>", line 1, in ?
TypeError: unbound method foo() must be called with Foo instance as first argument (got int instance instead)
>>>
0172名無しさん@Emacs
NGNGスクリプト言語なんであまり強力に型とか制限とかしない方針みたいです。
ちょっとめんどくさいよ。でもできる。。
って所がある。
ここの所が意見いろいろあるだろうけど、きがるに利用できる利点でもあると
おもいます。
0173デフォルトの名無しさん
NGNGうん。smalltalkでちょっといじったことがあるので、
その辺はある程度分かるつもり。
で、上のような前提にたった場合、
>>144
>Pythonのクラスとインスタンスがどんな仕組みの上に成り立っているのか、
について教えてほしいんだけど。
0174デフォルトの名無しさん
NGNGドラッグ&ドロップはどうすればいいんでしょうか。
TKにそれっぽいのが見当たらないし、API呼び出すんでしょうか?
0175デフォルトの名無しさん
NGNG0176174
NGNGTkinterは今のところないみたい。
デフォルトでTkdnd.pyが入っているが、これはTK内でのドラッグ&ドロップのみ対応。
wxPythonが対応しているのでそっちに乗り換えてみます。
0177デフォルトの名無しさん
NGNGage荒らし視ね。
0178171
NGNGそうそう、Pythonって柔軟で強力で、危険(w
間違いやすいところはサポートはするけど、制限はしない、ってのがいいなと思う。
漏れはどちらかというと、気軽に利用できる利点よりも、危険だけどちゃんと使えば強力なのが好き。
話それるけど
今、ネット対戦型のシミュレーションゲームのサーバをPythonで書いてるんだけど、
こーゆー事が出来たらいいのに、っておもうことがたいてい出来るのがいい。
だから、どうゆうふに実現するのか、じゃなくて、なにをするかに集中できるんだ。
最近、Assertコードをクラスのソースに書かずに、unittestクラスから与える
のをちょっと試してるんだけど、ちょっと面白いことが出来そう。
0179デフォルトの名無しさん
NGNG> だから、どうゆうふに実現するのか、じゃなくて、なにをするかに集中できるんだ。
はげしく同意。
頭の中の概念がすらすらコードに落ちるというか。
0180デフォルトの名無しさん
NGNG>頭の中の概念がすらすらコードに落ちるというか。
はぁ、´Д`
そんなレベルにたどり着けるのは、かなり先っぽい。
0181デフォルトの名無しさん
NGNG私もまだまだですが、Programming Python だったかに書いてあった、
executable psudo code っていう表現は、的確だと思う。
0182名無しさん@Emacs
NGNGwxPythonはUNICODE正式対応してないので日本語あつかい変だよ(T_T)
win版は対処されてるかもだけど。。他の環境だとあれかも。。。
>>178
> こーゆー事が出来たらいいのに、っておもうことがたいてい出来るのがいい。
さがせばたいていの事できてしまうんだよね。。
なくても作成簡単だったりするし。
考える速度で記述できる数少ない言語ではある。。。。
# 無関係だけどワタシskkツカイアルヨ。。。
0183デフォルトの名無しさん
NGNGRuby>>>>>>>>>>>Python
0184デフォルトの名無しさん
NGNG0185デフォルトの名無しさん
NGNGRubyはじめました。
0186デフォルトの名無しさん
NGNG0187デフォルトの名無しさん
NGNG0188デフォルトの名無しさん
NGNG0189デフォルトの名無しさん
NGNG>>> import math
>>> print math.pi.__doc__
float(x) -> floating point number
Convert a string or number to a floating point number, if possible.
0191デフォルトの名無しさん
NGNG>>> print math.pi
3.1415926535897931
>>> print 3.1415926535897931.__doc__
float(x) -> floating point number
Convert a string or number to a floating point number, if possible.
0192デフォルトの名無しさん
NGNGfloat(x) -> floating point number
Convert a string or number to a floating point number, if possible.
0193デフォルトの名無しさん
NGNGHelp on class float in module __builtin__
class float(object)
| float(x) -> floating point number
|
| Convert a string or number to a floating point number, if possible.
|
(略)
0194デフォルトの名無しさん
NGNGhelpにこんな使い方があるとはしらなかった。
piでやってみた。
>>> import math
>>> help(math.pi)
Help on float:
3.1415926535897931
0195デフォルトの名無しさん
NGNGsourceからのmakeはできたが、インストールができん。
日本語Solaris2.6, python2.2.1, Oracle8.1.5EE, WS5.0という環境だ。
REAME, INSTALLを読んでも分らん。
python install.py とするとbinaryをインストールしようとする。
make install もだめ。
install.py をpython2.2 対応にしてみたがだめそうだ。
教えてくれよ。
0196デフォルトの名無しさん
NGNG0197デフォルトの名無しさん
NGNGpygameでゲーム作れたらおもしろいかな。
0198デフォルトの名無しさん
NGNG1.Python 何に使ってるの?
2.プラットホームは?
3.使用暦
4.Python の好きなところは?
5.Python の不満点
6.コメント
よろしく。
0199デフォルトの名無しさん
NGNG何に使えるの?
2.プラットホームは?
全体的に高いですね。
いつも他の店で買っています。
3.使用暦
新品
4.Python の好きなところは?
PerlやRubyと違って6文字なところでしょうか?
5.Python の不満点
英語、日本語にかかわらず、書籍に恵まれていない。
6.コメント
#ではじめます。
”””でもOKです。
0200デフォルトの名無しさん
NGNG0201デフォルトの名無しさん
NGNG仕事ではテストプログラム作成に勝手に使うぐらい。
2. linux(debian), windows(2000/XP)
3. python-ml-jpが立ち上がる前ぐらいから。
4. インデント, 代入式が値を持たない。
5. self
6. stacklessキボンヌ
0203名無しさん@カラアゲうまうま
NGNGもう最近使ってないの
2.プラットホームは?
犬
3.使用暦
6ヶ月
4.Python の好きなところは?
Ruby のような汚さがない (いろんな意味で)
5.Python の不満点
self うざい
6.コメント
C++ マンセー
0204名無しさん@Emacs
NGNGPython2.1はPS2とGFで動作するようです。
http://mail.python.org/pipermail/python-dev/2002-June/025503.html
pygameは動作不明ですが、対応はいずれするのではないかな?
0205名無しさん@Emacs
NGNGs/GF/GC/
0206デフォルトの名無しさん
NGNG2. プラットホームは? : いろいろ、windowsとmacふくむ
3. 使用暦 : 3年ぐらい
4. Python の好きなところは? : インデント
5. Python の不満点 : バイナリでかい、起動遅い
0207デフォルトの名無しさん
NGNG仕事
2. プラットホームは?
Linux(serioware)
3. 使用暦
3年弱
4. Python の好きなところは?
ソースの見た目が感覚的に好き。あと拡張子の.pyってのがよい。
5. Python の不満点
2chにコピペしにくい。
6. コメント
モンティパイソンは見ない。
0208デフォルトの名無しさん
NGNG怪しげなアプリ作成。たまに仕事で。
2.プラットホームは?
Solaris
3.使用暦
4年目突入
4.Python の好きなところは?
LISP風味な部分が見え隠れするところ
5.Python の不満点
Native Code Compiler無い。JITでも(・∀・)イイ!!
6.コメント
上の答えで誰だかバレバレ(w
0209デフォルトの名無しさん
NGNGPsycoわ?
http://homepages.ulb.ac.be/~arigo/psyco/
0210デフォルトの名無しさん
NGNG0211デフォルトの名無しさん
NGNG0212デフォルトの名無しさん
NGNG0213デフォルトの名無しさん
NGNGhttp://sourceforge.net/tracker/?group_id=5470&atid=305470&aid=403029&func=detail
0214名無しさん@カラアゲうまうま
NGNG0215デフォルトの名無しさん
NGNG0216デフォルトの名無しさん
NGNGJISのままだと文字化けしまくりで^^;
0217デフォルトの名無しさん
NGNG↓ ↓
http://g-forum2.com/kakure.htm
2チャンネルが挑戦を受けてます!〔証拠〕
↓ ↓ ↓
http://ime.nu/g-forum2.com/bbs/ibo/ibo.cgi?mode=tp&digest=1&page=2&file=20020625013330
我々は田代神に誓い闘います!!
このスレッドで義勇兵を募集しています。
↓ ↓ ↓
http://live.2ch.net/test/read.cgi/festival/1024740193/l50
0218名無しさん@Emacs
NGNGhttp://www.gembook.jp/html/moin/moin.cgi/PyKf
とかです。
kanjilibどこいったかな??
0219デフォルトの名無しさん
NGNG面倒くさいかもしれないけど、JapaneseCodecs使ってもできますね。
0220_
NGNGPurePython版がインストが楽
0221デフォルトの名無しさん
NGNGありがとうございます。
ちゃんとこちらの思い通りに動いてくれています。
日付を見る限り、2002/03/02に初公開なんですか?
(´-`).。oO(かなり最近だなぁ)
0222デフォルトの名無しさん
NGNGos.chdir() を使ってディレクトリを移動するとき、移動先のディレクトリの名前が数字で始まっていると、
エラーメッセージが表示されます。
たとえば、"C:\10hoge"へ移動しようとすると、
>>> os.chdir("C:\10hoge")
Traceback (most recent call last):
os.chdir("C:\10hoge")
OSError: [Errno 22] Invalid argument: 'C:\x08hoge'
という具合です。
どう対処すればよいのでしょうか?
OSは Windows 2000です。
補足ですが、 C:\ をつけずに、
>>> os.chdir("5")
とかだとOKのようです。
0223デフォルトの名無しさん
NGNG0224デフォルトの名無しさん
NGNGこの中だけのスコープだと思ってたんだけど外の変数を使ってんのね。
なんか美しくないなあ。
>>> i=0
>>> [ 0 for i in range(10) ]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
>>> i
9
0225デフォルトの名無しさん
NGNG気持ちはわからないでもない、けど、関数の中でさらにローカルなスコープって、書けたっけ?
0226デフォルトの名無しさん
NGNGlambda 使えばできるじゃん。内包でもこうなってほしいわけよ。
>>> i=0
>>> map(lambda i:0, range(10))
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
>>> i
0
0227デフォルトの名無しさん
NGNGPythonを始めたとき、他人のソースを見ていて、lambdaの箇所が
読み取りにくかった思い出がある。
0228デフォルトの名無しさん
NGNGlambda式の返すのは無名の関数で、i は仮引数だろ。
>>224とは関係無いじゃん。
まぁ、気持ちはわからないでもないが…
0229デフォルトの名無しさん
NGNG0230デフォルトの名無しさん
NGNG0231デフォルトの名無しさん
NGNG0232デフォルトの名無しさん
NGNG>>> return x - y
>>>
>>> a = [5, 2, 3, 1, 4]
>>> a.sort(numeric_compare)
>>> print a
[1, 2, 3, 4, 5]
---------------------------
これって、どういう風にソートされているのですか?
0233デフォルトの名無しさん
NGNGど、ど、どういう風にソートされているかっていっても、
き、きみはなにがわからないのかなあ。
0234デフォルトの名無しさん
NGNGa = [5, 2, 3, 1, 4]
のなかから2個ずつ選んで、大小関係を比較しているのはわかるんですけど、
a = [] のなかから、どういう風に選んでいるのかと思って。
今はソートする対象が5つしかありませんけど、これが1万とかだと、
どんなかんじなのかと。
0235デフォルトの名無しさん
NGNGなんか欲しいものあるなら、自分で書けばいいだろ。
0236名無しさん@Emacs
NGNGhttp://www.python.jp/Zope/articles/tips/sorthowto
でも参考にしてください。
内容を深く追及するならソースおかけるとたのしいです。
0237名無しさん@Emacs
NGNG純粋にネームバリューのある人にPython使いになってほしいのではないかな。。
高林氏といえばけっこう有名ですから。
日本人は結構日本人の有名人によわいです。
外人の有名人はしらんからかもしれんが。。。
# RMSも、ESRもPythonつかい。。
# てかそういう系の人はほとんど利用してるねPython
0238デフォルトの名無しさん
NGNGよくわからん奴らだな。
有名人が使ったからって、テメーのウデが上がるじゃないだろ。
0239名無しさん@Emacs
NGNG237です
そうなんだよね。。。
自分ができないと結局無意味。。
てもよらば大樹のかげというか。。自分が利用してる物に
何かの後ろだてが欲しいとかって人は意外といるのです。
我関せずって人の方が少ない。
0240デフォルトの名無しさん
NGNG0241デフォルトの名無しさん
NGNGでもやっぱり高林のことが忘れられないのか>>230
0242名無しさん@Emacs
NGNGPangband がそうかと思ったのですが、違うようです。
教えて偉い人!
0243デフォルトの名無しさん
NGNGhttp://old.lwn.net/2001/0621/a/kernel-adventure.php3
0244名無しさん@Emacs
NGNGcurses module を使って rogue clone を作れないかと思ったのですが、
スレッドを使う必要がありそうで、サンプルコードがあれば良いなぁと
思って書きました。Packman clone でも良いのですが。
google で探してみたんだけど、どうも見当たらない。
0246デフォルトの名無しさん
NGNG0247ぴちょんくん
NGNG0248デフォルトの名無しさん
NGNGhttp://innerspace.sourceforge.net/
http://twistedmatrix.com/products/reality
0249デフォルトの名無しさん
NGNGcurses使ったのって見かけないなあ。こんなのは?
http://kuoi.asui.uidaho.edu/~kamikaze/Umbra/
0250デフォルトの名無しさん
NGNGソースフォージとかだと、言語でフィルターをかければ見つかるでしょうけど、、、
0251名無しさん@Meadow
NGNGいろいろ。
ググッテみつける場合もあるし。
偶然の場合もある。
0252デフォルトの名無しさん
NGNG■ このスレッドは過去ログ倉庫に格納されています