【書き方は】Pythonのお勉強 Part19【一通り】
1 :
デフォルトの名無しさん :
2007/06/06(水) 02:36:20
♪なんかダるー なんかデるー
♪あいしテるー あれ
>>1 さん乙ってるんるー
♪なやみン坊ー 高鉄棒ー
♪おいしん簿ー いーかげんにシナサイ
3 :
デフォルトの名無しさん :2007/06/06(水) 02:49:40
4 :
デフォルトの名無しさん :2007/06/06(水) 03:00:33
なぜスレタイの前後をいちいち書き足すんだ
てのは置いといて
前スレ
>>1000 鯖によって勝手にiso-8859-1を付けたりするからContent-typeヘッダはあまりあてにならないと思うんだ
おっおっおっ
乙
しかし、一言言っておくと TOOWTDI の読みは there's only one way to do it と there's one obvious way to do it の2通りがあって どっちかって言うと後者の方が好まれる傾向にある気がする
おっPythonスレ
OP.py IP.py
OP→おっぱい IP→いっぱい って事か?
otu.py
確か四次関数の特異点がおっpyだったか備蓄だったか
乙.py
そういや、乙→巳のやつには感動した。
python workshop edge 申しこんだ。 お前ら会場で会おうぜ!
2byteかっこが厨な気が
はじめての厨〜
sage
Python クックブック 第2版
ttp://www.oreilly.co.jp/books/9784873112763/ 原書にあった以下の章はカット
Chapter 15: Distributed Programming
Chapter 16: Programs About Programs
Chapter 17: Extending and Embedding
Chapter 18: Algorithms
Chapter 19: Iterators and Generators
Chapter 20: Descriptors, Decorators,and Metaclasses
日本語版に追加された付録
A Pythonと日本語処理について
A.1 Pythonで日本語を使う
A.2 ソースコードに日本語が使いたい
ふーむ
訂正。Chapter 15: Distributed Programming は 日本語版にもChapter 15. 分散プログラミングとして収録される模様
日本語なんて # -*- coding: shift_jis -*- とか1行書けばいい話だけだよな
-*- って何なの?
>>26 そんなこと恥ずかしくって言えない(>。<)
(>*<)
原書から一部カットして販売ってよくあるのか?
Chapter 18〜20 は、本当にカットして大丈夫か??
その程度の価値しかないってことだよ。 原書嫁。
>>33 emacs使っていて??なら、それでもいいんでね。
大抵は間違えないし。
いや、Pythonインタプリタも見ているのでは? -*-
ほんとかよ
厳密な解釈方法をどっかでみた。結構賢く分析してた
あきらめて原書読むよ。
難しそうなところばっかりカットされてね? 翻訳やってる奴のレベルがアレなのかな。
1ページいくらで翻訳代もらってるから、 難しいところは割に合わない、となる。
工作員自らの手によって 駄本ということが証明されましたとさ。
翻訳本を読むときは、翻訳される前の英文を推測する力が試される
同意するが、 翻訳前の英文が目に浮かぶような直訳だと かえって疲れるぞ。
俺はパイドキュをもりもり意訳した。 1語が1行になったり、あるいは逆に1行が1語になったりしたが気にするな。 たいていは短くなったがなw
乙py
パイソン・クックブックだろ。 略して「パイクツ」かなあ。
Python Phrasebookの日本語版出ないかなあ 普及に一役も二役も買うと思うんだが どこかでそういう話出てない?
amazon.comで目次見たけど、ネットワークまわりに的を絞ってて、 その辺をやりたい人にはよさげだね。
おつパイソン
rubyってそういう本も全部日本語なの?違うよね?
Ruby作者のmatzは日本人だが 言語作るのはいいけどマニュアル書くの面倒いって人 結局マニュアルも本も他人任せ、精々監修がいいとこ それ考えるとあんま変わらんのじゃ?
Rubyが糞なのは日本人がつくったからなのかー やっと納得
>>55 そういう風に言うから荒れるのであって、
ま、穏健に行こうや。
大丈夫。スルースキル高いからね、ここ。不幸な歴史のおかげで…
>>55 の意見はpythonスレでは荒れないと思うよ。
なぜならrubyの人はみてないからね
スルーできない言い訳
Ruby使ってる人でも見てる人は結構いるでしょ あと荒らす人はRubyもPythonもロクに使ったことのない人
pythonはそろそろ中〜上級者向けの書籍がほしいな。 みんpyにしても、IronPy本にしても、半分以上が言語解説+標準ライブラリ入門記事で、 正直購入する気になれない。 GUI + DB+ネットワーク本とか出したら売れると思うのに。
そのレベルのひとはわざわざPy本でそんなの見なくても自分で出来てしまうからじゃないかな 必要なのは入門書までで充分なんぢゃ
>>63 ttp://wiki.python.org/moin/PythonBooks 邦訳されるの待ってないで洋書で読んじゃったほうがいいよ。
Tkinter, wxPython, Twisted, TurboGears, CherryPy,
ライブラリやフレームワークに特化した本もちゃんと出てる。
(DB本は出てなかったと思う)
ただ、Python界隈はマニュアルやドキュメントが充実してるから
わざわざ本を買うのは割りに合わないかもしれない。
>>63 ネットで十分なんじゃないかな。それに、ドキュメントなんか
基本的なことだけちょっと読んで、あとは自分で何か作って
覚えた方がいいと思う。
ここを参考に
http://python.matrix.jp/modules/py2exe.html py2exe でwindowsアプリを作って起動すると
「問題が発生したため、example.exe を終了します。 ご不便をおかけして申し訳ありません。」
というエラーダイアログが出て終了してしまうんですが、なにがまずいのかご教授ください。
バージョンは、
Python 2.5 (r25:51908, Sep 19 2006, 09:52:17) [MSC v.1310 32 bit (Intel)] on win32
py2exe-0.6.6.win32-py2.5
-- [ setup.py ] -----------------------
#!d:/bin/Python25/python.exe
from distutils.core import setup
import py2exe
py2exe_options = { "compressed" : 1,
"optimize" : 2,
"bundle_files" : 2}
setup(options = {"py2exe" : py2exe_options},
windows = [{"script" : "example.pyw", "icon_resources" : [(1,"d:/bin/Python25/DLLs/py.ico")]}],
zipfile = None)
-- [ example.pyw ] -------------------- #!d:/bin/Python25/python.exe #-*- coding: sjis -*- from Tkinter import * f = Frame(width=500, height=500) f.pack() f.mainloop() -------------------------------------- やってみたこと (1) python example.pyw でスクリプト実行すると問題なくTkのフレームが表示される。 (2) python setup.py py2exe でexe生成。makeエラーは特になし。 exe と同じディレクトリに、MSVCR71.dll, python25.dll, w3popen.exe あり。 (3) dist/example.exe を起動すると、前述のエラー終了。exeダブルクリックでも、コマンドライン起動でも同じ。 (4) example.pyw の拡張子は .pyでもだめ。 (5) coding をutf-8 にしてもだめ。一行目のインタプリタ指定を pythonw.exe にしてもだめ。 (6) setup.py の 10行目、パラメータ指定を windows から console にしてもだめ。 (7) console アプリで、Tkinter 以外のモジュール動作はOK(os, re で確認)。 (8) windows アプリとして (7)のスクリプトをexeにして、実行すると、何も表示されないで正常終了。 (9) Tkinter 以外のモジュールインポートのサンプルと次のようなプログラム まとめると、Tkinter を使った exe を作ると起動できない。ということみたいですが。 どうしたら解決できるんでしょうか・・・?
69 :
67 :2007/06/10(日) 21:36:42
70 :
68 :2007/06/10(日) 21:55:28
連投すみません。
>>68 の w3popen.exe は、 w9xpopen.exe の間違いでした。
age。
きょう‐じゅ【教授】 ケウ‥ (1)学術・技芸などを教えること。養護・訓練とならぶ教育上の基本的な作用とされる。 (2)大学・高等専門学校など高等教育の学校で、専門の学術・技芸を研究し教える人。 その官名または職名。「医学部―」→教諭。 きょう‐じ【教示】 ケウ‥ (キョウシとも)教え示すこと。「ご―を仰ぐ」 広辞苑 第五版 (C)1998,2004 株式会社岩波書店
よくある間違い
間違いじゃないよ。「教授する」はサ変動詞として辞書に載ってる。
74 :
67 :2007/06/10(日) 22:48:39
お騒がせしました。自己解決しました。
py2exe_options の、bundle_files の指定がまずかったようです。
値を0に変更したら、makeエラーで、1-3にしろとエラーが出て、3にしたら、
Tkinter 入り exe を正常起動できました。
このパラメータの意味を調べようと、help(py2exe)してみたけど、説明が見当たらない。
もっとも、シンプルにやるなら何も考えずに
setup(windows=["example.pyw"])
とすればいいようですね。余計なことして遠回りをしてしまった。
>>71 ご教示ありがとうございます。
>>73 その場合「教授する」のは教える側じゃなかったっけ。まあスレ違い。
>>67 Hello, worldは動く?
# hello.py
print 'Hello, world!'
# setup.py
from distutils.core import setup
import py2exe
setup(console=['hello.py'])
----
python setup.py py2exe
76 :
67 :2007/06/10(日) 23:22:39
ドキュメントは相変わらず見つかってませんが、いろいろ試したところ、
bundle_filesは、モジュールの物理的な分割レベルのようですね。
となると、3しか指定できないのは不便。
なんでモジュールをひとつに結合するだけで、実行できなくなるのか分からない。バグ?
bundle_files=1 (3ファイル+1ディレクトリ)
tcl/
example.exe 約 5K bytes
MSVCR71.dll
w9xpopen.exe
bundle_files=2 (4ファイル+1ディレクトリ)
tcl/
example.exe 約 3K bytes
MSVCR71.dll python25.dll w9xpopen.exe
bundle_files=3 (10ファイル+1ディレクトリ)
tcl/
example.exe 約 0.9K bytes
MSVCR71.dll python25.dll w9xpopen.exe
_tkinter.pyd bz2.pyd tcl84.dll tk84.dll unicodedata.pyd w9xpopen.exe
>>75 とりあえず、そのあたりはクリアしました。
ありがとうございます。
>>73 教示するでも教授するでも教えるには違いないけど、どう教えるのかが違う。
教授するってのは、師匠が弟子に教えるような、そんな教え方のこと。
こういうところでちょっと教えてくれってのに使うのは教示のほう。
スレ違いウザ
セッコさん出番です
pythonでnslookup相当のことを行うにはどのライブラリを使えばいいですか。
>>80 import socket
でした。
「python nslookup」で探しても見つからなかったけど「python gethostbyname」で見つかりました。
rubyのARGFに相当するものはPythonにありますか。
ARGF.each{|line| puts line } ---- import fileinput for line in fileinput.input(): print line, # 末尾に , が必要 改行文字の扱いが異なることに注意
print line, より sys.stdout.write(line) が好み # だって行末に余計なのがつくじゃん
つprint''.join(line for line in fileinput.input())
print line.strip('\n')
>87 タイプ数でいえばまあすっきりだけど 内容で考えると余計な手間って感じが否めない
あ、スペースか
日本語を格納した string を for ループで1文字ずつ回すことってできないの? str = "おっぱい" for s in str: print s 結果: 文字化け 環境は python2.5
>>91 ユニコード使えば楽にできる。
str = u"テスト"
for x in str:
print x
サロゲートペア(含むJIS第3水準、JIS第4水準)注意な。
strとかいう変数は定義するなよこのカスが死ね今すぐグローバル汚染して死ね。
定義できちゃうほうもほうだよな。 別の言語だけど、時刻を t に代入したらcore dumpして3時間ぐらい悩んだことある。 # t / nil の t だったらしい‥‥‥
予約語に加えて、組込みの変数や関数を全部色分け表示すれば ある程度防げるよ
もはやFAQだが、Pythonではstrという変数を定義してもグローバルに影響は 受けない。関数内なら関数ローカル、ファイル内ならファイルローカル。
>>96 無駄に予約後ふやしたりするより、普通に気をつけようぜ、という思想なんだよ。
スレッド内ではレスローカルだから、お前のstrは大丈夫安心しろ
>>95
なんにせよだ。 一字変数にstrとかintとかつけるアホとは一緒に仕事したくないな.
grepしてみればわかるんだけど 変数名にstrやintだの使ってるライブラリも結構ある 漏れは予約語覚えるだけで精一杯だから 小規模スクリプトや関数内部ではstr使っちゃってるよ (intはさすがに使えない。Cだったら予約語だし)
まあ str_ とか int_ の方が無難だろうね
自分のアホを否定するためにムキになってるのがかわいい♪
まとめwikiの問題集のQuineを直してくれてる人に質問
うちのpythonだと、
>>> x='x=%s\nprint x%%`x`'
>>> print x%`x`
x='x=%s\nprint s%%`x`'
print x%`x`
という風に実行されて、Quineに見えるんですが、
1行目8桁目を毎回 '?' に直してくれるのはなぜなんでしょうか?
ちなみに元ネタは
ttp://www.nyx.net/~gthompso/self_pyth.txt
ちなみに、1行目8桁目 '?' だと、 >>> x='x=%s?nprint x%%`x`' >>> print x%`x` x='x=%s?nprint x%%`x`'?nprint x%`x` と実行されて、Quineには見えない
>>> len('str') 3 >>> len('int') 3 どこが一字変数なのか。
あれは一時変数のtypoだよ。
にしても
>>106 の的外れっぷりにワロタ
dir(__builtins__) の内容くらいは使わないようにしたいところやね
墓穴を掘っている姿にあきれる♪
>>> len=len('str') >>> len2=len('int') Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'int' object is not callable こういうコードを書く奴はバカとしかいいようがないだろ。
エディタの支援もそうなんだけど 実行時に __builtin__ の定義が上書きされたら warning 出すって 機能はあると良さそうだね (cc -Wall みたいなイメージで無視してもいいけどなるべく直そうって奴)
複雑な機能を追加して自由度を失うより低脳を排除する方がよほどよい。
よっぽど現状でいいだろ。要は python -c "for w in dir(__builtins__): print w" > エディタの定義ファイル するだけ(環境に合わせて各自要アレンジ)。
よくわからんけどstrは何で使うと駄目なん?
世界の法則が乱れる
>>117 大きめのモジュールを作るとき。
トップレベルでテンポラリな変数としてstrとかlenを使うとハマったりするかもな。
>>119 アホさがバレるから。
避けるべきだという意見に賛成ではあるが、
> トップレベルでテンポラリな変数としてstrとかlenを使うとハマったりするかもな。
変数名としてみると str に代入するのは文字列、len に代入するのは数値であろう。
どちらも callable ではなく本来の str, len のつもりで使うと
>>113 のようにエラーになるからすぐ分かる。
むしろ避けるべきなのは関数名として使わないことであろう。
俺も変数名として使ったことはあるが、さすがに関数名として使ったことはない。
>>119 str がダメとかじゃなくて Python は関数名もクラス名も変数名も区別が無いから
そのスコープの中で str という関数を使う気があるのなら str という変数を
使ってはならない、というだけの話
でも str なんて短い名前の変数は普通、狭いスコープで一時操作用にしか使わないから
それではまるようなら変数の命名規則そのものに問題があると思う
変数でいいんじゃね? 本来的な意図じゃないだろう関数でも意味は通るけど 本人待ち
126 :
123 :2007/06/14(木) 18:56:00
>>124 「変数」です
なんで「関数」のtypoだと思われちゃったのか謎だけど
119の質問は話の流れから「strという変数名」についての話だと受け取ったので
それについて答えたつもり
別に「Guidoがstrという名前の関数を作った事」を批判するつもりははないです
127 :
119 :2007/06/14(木) 21:19:21
あ、strって関数があるのか。なるほど。
知らんかった。ていうか上書きできちゃうんだ。
それも知らんかった。どうもありがとう
>>123
関数でもクラスでもcallable objectはcallable(obj)で判別するからなんでもいいよ
いつも関数なのかクラスなのかファクトリなのか 呼ぶのに困るんだよ。 何かいい名前考えようぜ。
じゃ、徳川家康って命名しよう。
こらぶる 〜呼び出されるものたち〜 Windows用ゲームソフト 予価5,800円(税込) 9月31日発売予定
>>129 おまえこそ氏ね。氏ねじゃなくて、死ね。
137 :
デフォルトの名無しさん :2007/06/14(木) 23:28:45
>>137 残念でした。
>>> help(str)
Help on class str in module __builtin__:
class str(basestring)
実装上でも str は __builtin__ モジュールに関数ではなくて 型として追加されてる。(bltinmodule.c)
>>137 これはとんだ自殺予告ですね(wwwwwwwwwwwwwwwwwwwwwwwwwww
>>137 New Style Classを知らない窓際オヤジ乙(w
じゃあ、お前らはライブラリリファレンスをどういう風に読んでるわけ? "オフィシャルな文書で"、strはBuilt-in "Function"だっつってんだから、strは関数なんだよ それを単にcallableなclassとして実装してるだけだろ。 ドキュメントのどこにclassだったら関数じゃねーと書いてあるのか。 classがcallableになった時点でclassというクラスと関数というクラスが交差してんだよ馬鹿
ちょっと苦しいw 叩いてるほうもアホだが。 実装レベルと概念レベルではまた違ってくる話だわな。
じゃあ、お前らはソースコードをどういう風に読んでるわけ? "実働しているソースコードで"、strはclassとして定義されてるんだから、strはコンストラクタなんだよ それを単に歴史的経緯から関数としてライブラリリファレンスに記述しているだけだろ。 ソースのどこにstrが関数だと書いてあるのか。 classがcallableの一種だからってclassを関数と呼ぶのかよこのクソボケが氏ねRubyでもやってろ馬鹿
146 :
119 :2007/06/15(金) 01:28:54
うーん、なんか訳分からん。 とりあえず、死ぬのは嫌だが、 strを関数と言うとpython的には非常に マズイの?かな?
まずくは無いけど、外の機能もあることを知っておいた方がいいと思う たとえば、 >>> isinstance('abc', str) True とか >>> class ABC(str): ... ・・・いろいろ定義 とか、・・
>>146 細かく言うと「クラスを関数として呼ぶとそのクラスのインスタンスが返る」という事になる
str の場合で言うと、str はあくまで「変数」で、その変数strの中に文字列クラスが
入っていて、str([object]) するとそれのコンストラクタが呼ばれている
だから厳密に言うなら str を「関数」と言っている人も「クラス」と言っている人も間違い
str は変数
str という変数に入っているのが「文字列クラス」
str([object]) は関数
str([object]) を呼んで返ってくるのは「文字列オブジェクト」
>148 だから代入できるのか。少し納得した。 >>> a=str >>> str="hoge" >>> isinstance(str, a) True
>>148 >str はあくまで「変数」で
アホか。変数じゃねえよこのクソ馬鹿。
顔洗って出直してこいや。
>>149 数字も代入できるからPythonでは変数なんですね。納得した。
>>> a=123
>151 ???
もう、各人好きなように納得すればよくないか?
俺は諸葛孔明と呼ぶことにしたよ。
def aaaa(): #省略 この時aaaaは変数、変数aaaaによって示されるものは関数でおk?
「名前」に「束縛(bind)」するって表現が正しいのかな。 defは新たな関数オブジェクトを作って 指定された名前にbindするステートメントと。 そして名前に対して( )を付けると 名前にbindされた呼出可能なオブジェクトの機能を呼び出す、か。
今、酷い自演を見た
158 みたいに name も bind も分からないようなアホが str を変数と呼びたくなる気持ちはよく分かる. こういうクソ馬鹿に限って reference についてもよく理解できないで はまったりするのだろう.
これが永久凍土ってやつですか?
「アホ」や「馬鹿」もNGワードにしてみようかな・・・
少なくとも一人は生きてるだけで迷惑な卑しいのがいる 2chでしか憤懣を発散できないのかねー
166 :
119 :2007/06/15(金) 17:15:21
>>148 おー、分かりやすい説明!納得。
ありがとうございます。
168 :
デフォルトの名無しさん :2007/06/15(金) 18:06:03
目立つようにageておきます。 よろしくお願いします。
うぜえよ
119君は全然分かってないと思うよ(www
まあ深くて長い Python 使いへの道の第一歩という事で 最初から多くを求めるのは無理があるよ 「strはビルトイン関数と同じ名前だから変数名として使っちゃだめ」とかの Java 的緊縛調教世界から踏み出すきっかけというだけでも意義はあるさ
使わないに越したことはなかろう。 strじゃなきゃならない状況もあるめい。
任意のオブジェクトxについて >>> '%s'%x == str(x) True
正直に言おう。 も う s t r の 話 は 飽 き た ! !
じゃあおいしいうどんとPythonの関係について一つよろしく
len, min, max, chr 他にもいろいろあるぞ
なんか自作クラス作ってるときに 「あ、ソレ既出だから」 って教えてくれるアプリ(もちろんpython実装)ってないの?
それは標準のものだけじゃなくて、 色々公開されているライブラリも含めて、ということか? そういう検索ソフトは確かに便利そうだな。 いくつかのキーワードで検索してみて、 引っかからなければ無さそうだな、とか。 データベース作るの大変そうだけど。
>>117 もういいよ,みんな str と同じだろ。
この際 sum について語ろうぜ。
>>182 朝起きた時には既にアクセスできなかった
メーリングリストでDNSのIPアドレスが変わったからしばらく時間かかるってあったよ
ぶっちゃけ言ってPythonについて話すことないんだよね。
Take one down and pass it around.
ElementTreeって、UTF-8以外のXMLは食べられないの? <?xml version="1.0" encoding="UTF-8"?>だと読んでくれるのに、 <?xml version="1.0" encoding="SHIFT_JIS"?>だとcodecs通しても、 asciiとして読もうとしてこけるんだが。
190 :
デフォルトの名無しさん :2007/06/16(土) 10:03:25
python.jp今止まってないか?
>>189 とりあえず再現コードとエラーメッセージぐらいは欲しいところ。
で、ElementTreeはUTF-8、UTF-16、ASCIIなら問題なく読める。
ただShift_JISだと、ElementTreeが内部で使ってる
expatパーサに食わせる時点でエラーになるはず。
そもそも XML は UTF-8 と UTF-16 以外への対応はオプションなので 他人の作ったモジュール使ったりする気があるなら UTF-8 か UTF-16 にしておかないとまずいよ
>>191 >>192 サンクス。おとなしくutf-8にして読ませる事にする。
ちなみに再現は以下。
>>> import codecs
>>> from xml.etree import ElementTree
>>> f = codecs.open('test.xml','r','shiftjis')
>>> et = ElementTree.ElementTree(file=f)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "PYTHON_PATH/lib/xml/etree/ElementTree.py", line 546, in __init__
self.parse(file)
File "PYTHON_PATH/lib/xml/etree/ElementTree.py", line 586, in parse
parser.feed(data)
File "PYTHON_PATH/lib/xml/etree/ElementTree.py", line 1245, in feed
self._parser.Parse(data, 0)
UnicodeEncodeError: 'ascii' codec can't encode characters in position 58-60: ordinal not in range(128)
>>>
test.xml
<?xml version="1.0" encoding="SHIFT_JIS"?>
<python>
<hoge>日本語</hoge>
</python>
dict.get(key, default) とおなじように list.get(index, default) というのはありませんか。 if len(lst) > n: item = lst[n] else: item = deafult と書くのが面倒なので。
>>195 dict(enumerate(list)).get(key, default)
>>195 ない。
>>> class List(list):
def get(self, index, default=None):
try:
return self[index]
except IndexError:
return default
>>> lst = List(["foo","bar"])
>>> lst.get(0)
'foo'
>>> lst.get(2,"baz")
'baz'
>>>
最初から例外使えばよい気がする。
>foo bar baz 意味わかってつかってるのか? でなければ痛々しいだけだ
>>200 元々は中国明代の言葉で「風羽蓮」のこと。
清の時にはとっくに使われなくなってたんだけど、アロー戦争後の反清運動の気運のなかで、
明の文化への回帰運動が起こり、「永楽大典」に載ってたのが流布した。
意味は「疾風の如く進み、鳥羽のように繊細に、蓮花のように高潔に。」
(ちなみに、蓮は仏陀の象徴ね。)
その言葉に感銘を受けた宣教師が、一字ずつ英語の発音に直したのが「foo bar baz」
その宣教師の著書が欧州でウケて、この言葉はちょっとした流行語になった。
やがて意味が忘れられて、おもしろい語感のおかげで、単語だけが残ったってわけ。
参考:民明書房「この国を見よ!」
蓮の訓読みにワロタ
俺も
>>199 のご高説が聞きたいね
203 :
200 :2007/06/17(日) 17:19:47
えらぶりたいだけの厨房でしたとさ
痛々しいな
俺、Python3000が出たら識別子に風羽蓮使うんだ・・・
マジレスするとオランダ語だよ。hogeもそう。オランダや北ドイツでは 地名も学校名も看板もhogeだらけ。
マジレスすると、「Fubar」の変形。
昔大学の研究室に中国からの留学生の 付さんが来たので、メールアドレスを foo@〜にさせようとしたが失敗したことがある。
そりゃ迷惑メール大量に来そうだな。
来るかっつーの
python のコンストラクタは __init__ ですが デストラクタは何ですか?
-127〜127の数字を127と127の上位バイトと下位バイト分けるにはどうやりますか?
じぶんでできたのでいいです
小学校にまで普及してるなんてpythonもやるな
ぼくはようちえんかとおもったよ
10進数を2進数の文字のあつまりにかえるやりかたをおしえてください 12を1100とか7を111とかですおねがいします
>>219 "パルプンテ"を使うと1/100の確率で「あつまりにかわる」よ
2で割って余りを調べる、を元の数がゼロになるまで繰り返す もしくは hexした後に'0'〜'f'を'0000'〜'1111'に写像する
>>221 もとから関数があるとかんがえていました
ぐぐっても出てこないのでつくって解決しました
ありがとうございました
def jukarani(moto = 0):
kekka = []
while moto > 1:
kekka += str(moto % 2)
moto /= 2
else:
kekka += str(moto)
kekka.reverse()
kekka = ''.join(kekka)
return kekka
10進数とか2進数とかいうのは、 あくまで数の数え方でしかなくて、 数自身の持っている性質じゃないんだけどな。 その処理を「10進数を2進数の文字のあつまりにかえる」と表現してるうちは そのことが分かっていない。 「数を2進数の文字のあつまりにかえる」ならまあいい。
しかし、「n進数で表現された文字列を10進数に一発で変換する」方法は用意されてるんだから その逆を一発変換する簡単な方法も用意されていいと思うけどね。
10進数に変換する? 数値に変換するだけっしょ。
>>> int('1100', 2) 12
だからそれは >「n進数で表現された文字列を10進数に一発で変換する」 であってその逆が欲しいんじゃないの?
これが永久凍土ですか。
それは225を傍証する意味で書いたの? 反証する意味で書いてたらアホだね。12ってなんだか分かってる?
今回はワンライナーが出てこなかった。
ここは裁判所じゃねー
>>222 正の値しか想定してない場合はそれでいいけど
負の値も受け入れる必要があるときは
「2の補数」を求めてから jukarani() に渡す必要がある。
具体的には例えば jukarani(0x100000000+n) if n < 0 else jukarani(n) とする。
>>231 ワンライナーにしてみた。
正の値の場合:
> n = 15
> s = "".join(str(((0x100000000+n if n<0 else n)>>(31-i))&1) for i in range(32))
> s
'00000000000000000000000000001111'
> int(s, 2)-0x100000000 if s[0] == '1' else int(s, 2)
15
負の値の場合:
> n = -15
> s = "".join(str(((0x100000000+n if n<0 else n)>>(31-i))&1) for i in range(32))
> s
'11111111111111111111111111110001'
> int(s, 2)-0x100000000 if s[0] == '1' else int(s, 2)
-15L
ここはアテナイの学堂じゃねー
>>> hex(-7) '-0x7' >>> int('-7', 16) -7 >>> int('-111', 2) -7 これに習って2進文字列にする関数を書くなら、 >>> bin(-7) '-111' となるべき?
>>237 そうなるべきだろうね。
符号つき整数と符号なし整数の間の相互変換はN進表記とは別の問題だから。
(もっとも、符号つきでN進表記するとどういうときにうれしいのか俺には思いつかない。
実際、2.3.x 以前の hex() は常に符号なしの16進文字列を返していた。
俺の思いつく限りでは、hex() はバイト列(符号なし整数)に対してのみ使う関数なので
この仕様の方が直感に合ってる。)
ああ、そのbinは関数ですか。 str() は関数ではないらしいですが。
str()は関数じゃね? strはラベルとか変数とか名前とかいや関数だとか諸説こもごもだったが。
それなら関数呼び出しの式じゃね?
__call__すると文字列が返ってくる何かと呼べ。 str は「__call__すると文字列が返ってくる」何かだ。 わかったか。
いや、今str()の話だから。
AとZだけ入力してリストにA,B,C,D・・・Y,Zという感じに代入する方法ってありますかね? range命令みたいな便利な命令があるといいんですが・・・
245 :
デフォルトの名無しさん :2007/06/19(火) 04:59:52
>>244 ['A', 'B', 'C', ..., 'Z'] みたいな、要素が文字のリストがほしいの?
そうです。 文字列でそんな処理できますかね?
>>> map(chr,range(ord('A'),ord('Z')+1)) ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']
>>> (lambda st, en, skip=1: [chr(i) for i in range(ord(st), ord(en)+1)][::skip])('A', 'Z') ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'] >>>
ごめん。これでよかった。 >>> (lambda st, en, skip=1: [chr(i) for i in range(ord(st), ord(en)+1, skip)])('Z', 'A', -2) ['Z', 'X', 'V', 'T', 'R', 'P', 'N', 'L', 'J', 'H', 'F', 'D']
ありがとうございます。 はじめたばっかりで命令がよく把握できてないんですけどググりながら理解できるようにします。
じゃあ、
>>249 と等価な奴を貼っとくよ。
def chrange(start, end, skip=1):
return [chr(i) for i in range(ord(start), ord(end)+1, skip)]
print chrange('Z', 'A', -2)
すみませんもう一つお願いが。 整数のリストの値を全て二乗する方法と 同じく整数のリストの中から3の倍数だけを取り出す方法を教えてください。 リストの概念はわかってきたんですが、どうもその使い方がいまいち掴めなくて・・・
リスト内包でやるやり方 >>> a=range(8) >>> [x**2 for x in a] [0, 1, 4, 9, 16, 25, 36, 49] >>> [x for x in a if x%3==0] [0, 3, 6] for 文を使う >>> a=range(8) >>> for x in range(8): ... a[x] = a[x] ** 2 ... >>> a=range(8) >>> for x in range(8): ...
うは、書いてる途中で送ってしまった・・・orz
なるほど、内包で処理を行うにはfor in 命令を使うんですね。 ありがとうございました。
入門書嫁。
>>> list('ABCDEFGHIJKLMNOPQRSTUVWXYZ') ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']
質問の条件嫁
import re, string re.findall("[A-Z]", string.ascii_uppercase)
import string [x for x in string.printable if 'A' <= x <= 'Z']
Pythonを勉強中です。
ttp://www.python.jp/Zope/intro/instant_python_jpに 、
class Basket:
def __init__(self,contents=None):
self.contents = contents or []
def add(self,element):
self.contents.append(element)
というコードがあったのですが、なぜPythonでは次のように書くことを選択しなかったのでしょうか?
class Basket
def __init__(contents=None)
contents = contents or []
def add(element)
contents.append(element)
もちろん、':'を付けることやselfが必要なのは、Pythonのお約束なんだろうなということはわかるのですが、何か理由があるなら知りたいのです。
262 :
261 :2007/06/19(火) 16:12:48
あ、__init__のcontentsは、実引数名がメンバ名(というのでしょうか?)とかぶってますね・・・
defを極力一般化するためでは? self.
265 :
261 :2007/06/19(火) 16:23:04
>>262 仮引数名の間違いでした・・・
>>263 なるほど。でもC++のクラスのように、仮引数のselfはなくてもいいような気がします。
>>264 理解しました。メソッド内コードのselfには意味があるのですね。
「thisなんてどこから湧いてくるんだ?定義した覚えねーぞ。」
267 :
デフォルトの名無しさん :2007/06/19(火) 18:27:12
268 :
デフォルトの名無しさん :2007/06/19(火) 18:33:16
269 :
デフォルトの名無しさん :2007/06/19(火) 18:46:27
メンバの完全なカプセル化を実装しないのも、「あえて」なのかね。 これはスコープが足りない(増やしたくない)から、「やむなく」という気もしないでもない。
>>266 お前はtrueとかfalseとかnilとかでもそう思うのか?思わないだろ。
マナーによるカプセル化
そんなことより聞いてくれ
>>1 よ、おっぱいスレとあんまり関係n
低脳排除によるカプセル化。
>>274 そんなの関係無い。
「trueを定義していなくても使えるのは、グローバルで勝手に定義されてるから」
「selfが使えるのも、関数で勝手に定義されてるから」
それだけ。266みたいなことを言うアホはそれでOKじゃん。
勝手に定義? 名前は任意でしょ。中身は勝手にセットされるにしても
だよねえ。変数名はselfだろうがhogeだろうがオッケー。
ヒープに浮かんでるオブジェクトへのポインタを
第一引数(名前はなんでもいい)で受け取ってるだけでしょ。
少なくとも軽々しくアホとか言うのやめてほしいわ。
>>261 >>268 が挙げてくれたFAQ読むといいよ。
Pythonは変数使うのに宣言を必要としないから、
もしselfを使わないとローカル変数とインスタンス変数の区別が付かなくなる。
流れを読まずに言いたいことだけ言う。 Pythonはオブジェクト指向言語ではあるがクラス指向言語ではない。
いいえ、クラス指向ですけど。
>>280 へー
で、「クラス指向ではない」の論拠は?また妄想?
アホや低脳、文盲の排除。 それが俺たちが幸せになれる道である。
(´・ω・`)しらんがな
_ ∩ ( ゚∀゚)彡 おっぱい!おっぱい! ⊂彡
286 :
sage :2007/06/20(水) 01:14:58
c言語の/*〜*/みたいなコメントアウトってできないの? #打ち込むの疲れた。
ない
"""〜"""で囲む
KateとかKwriteだった、コメントアウトしたい部分を選択して ctrl+Dですむんだが。
trueとかfalseとかnilはスコープによって内容を変えるシンボルなの? 茶漬けをraiseするとStopIterationになる京言葉みたいだな。
>>286 IDLEならコメントアウトしたい行を選択して Alt-3 を押す。Alt-4 で # を消せる。
Emacs の Python モードにも同様の機能がある(キーバインドを忘れた)。
C-#
294 :
286 :2007/06/20(水) 11:18:37
>>287-289 ,291
みなさんレスありがとう
とりあえず"""〜"""でやるです。ハイ
295 :
261 :2007/06/20(水) 13:31:26
try: except: でいったんcatchした例外を再度raiseするときに、もとの行番号を保存したままraiseすることができますか。 例えば次のようなプログラムを実行すると、 1: def f1(): 2: try: 3: f2() 4: except Exception, ex: 5: if ex.message: 6: raise ex 7: 8: def f2(): 9: f3() 10: 11: def f3(): 12: raise Exception('*** error') 13: 14: f1() 以下のように「6行目で例外が発生」していると表示されます。 Traceback (most recent call last): File "hoge.py", line 14, in <module> f1() File "hoge.py", line 6, in f1 raise ex Exception: *** error これを、12行目で発生していることを知りたいわけです。 どうすればいいでしょうか。よい知恵をお貸しください。
>>297 ちょーさんくすです
回答が早いし正確だし、すばらしすぎです
英語の質問なんだけどいい? 「〜という名前で保存された」を英語にすると「saved as ~」?それとも「saved with ~」?どっちでしょうか。 メッセージを英語で書いてみてるんだけど、よくわからん。
個人的には"saved as"使うなぁ。 "saved with"は微妙。
saved toは?
that file is saved as "foo.txt" to "/home/bar/Desktop".
asだろ。withは手段をあらわす前置詞だ。
304 :
デフォルトの名無しさん :2007/06/22(金) 15:48:32
import socket socket.connect ・・・チョーダサいんですけど、どうにかなりません??
>>300-303 こんなにレスが。saved as を使うことにします。ありがとうございました。
>>304 from socket import connect as oppai
oppai()
これで満足かしら、うふふふふ。
_ _ ( ゚∀゚ ) ! し J | | し ⌒J
他人のモジュールにasで変なあだ名つけていじめるってプレイ 他人のモジュールにasで変なあだ名つけていじめるってプレイ 他人のモジュールにasで変なあだ名つけていじめるってプレイ 他人のモジュールにasで変なあだ名つけていじめるってプレイ 他人のモジュールにasで変なあだ名つけていじめるってプレイ 他人のモジュールにasで変なあだ名つけていじめるってプレイ 他人のモジュールにasで変なあだ名つけていじめるってプレイ
暗い,暗いなあ.
昔の人は import socket c = socket.connect del socket と書いていたらしい。 それがめんどくさいのでasくれという話になったらしい
IDEって何使ってる?
IDLE
PyScripter
たくさんのkterm
screen
xyzzy
copy con
ウワーンworkshop申し込みしようと思ったら締め切られてた…
>>320 ここだけの話、申し込み完了しましたメールには
メールを印刷したのもってこいとか受付番号とか書いてないし
いきなり行っても入れるんじゃね?
こういうイベントだと(有料ならともかく)無料なら受付自体しないことが多いし。
>>322 おまえの言っていることはゴミの不法投棄と同じだ。
見付からなければいいってことだろ。
大学とかそんな感じじゃん、
a[x].b ってやるとbの数が出るようにしたいんですけどどうやりますか? xを変えると別のbになるようにしたいです。 ほかにa[x].cもあって、xを変えると別のcになるようにするようにしたいです 試してみたのが、空のクラスを作って class d: pass if __name__ == '__main__': a=[] d=d() d.b=10 a[0].append(d) d.b=11 a[1].append(d) a[0].b a[1].b ってやると 全部11になるような気がします。 ソースはたぶん間違ってると思います。
午前の部なら潜れなくはないだろうが、運営に今から申し込んでも大丈夫か聞くのが先だろ。 それはともかく、クックブック買った。原著の後ろの章が無いのは残念だが、それを除けば良い出来だと思う。 4200円はという値段がちょっとネックかなあ。クックブックとしては、それほどでもないんだけど。
>>326 とりあえず解決法だけ言うと
e, f = d(), d()
e.b=10
f.b=11
という風に別々のインスタンスを作って、それぞれをaにappendすればよい。
>>328 インスタンスをどんどんつくっていくことってできるんですか?
そのほうほうだと始めに決めた数しかインスタンスが作れないようなきがするんですか
たとえば class d: pass a=[] for i in range(1000): a.append(d()) とすれば、aは異なるオブジェクトの配列になる。 さらに、各要素のb属性を弄りたいんだったら、コンストラクタに引数をつけて工夫する。
ありがとうございます。
>>330 読んでなかったので読んでみた。
著者紹介より訳者紹介の方がはっちゃけてるのは珍しいかもしれないが、
これくらいなら最近のオライリーでは普通レベル。
一個脱字発見。「はじめに」にあるASPNのPython CookbookのURLの最後の
「Python/」が「Pytho/」になっている。
この本の元ネタなんだし、2刷には直しておいて欲しいな。
334 :
333 :2007/06/24(日) 18:42:23
>>329 だった。
技術書一般に言える事だけど、誤字脱字が気になる人は、
正誤表出るか何刷か進んでから買った方が良い。
l = ['apple', 'monkey', 'Japanase'] リストの値をそれぞれ、超スマートに変数に代入したいんですけど、どんな 方法がありますか? オレはこんなのしか思いつかない。 fruit, animal, language = l[0], l[1], l[2]
fruit, animal, language = l
337 :
335 :2007/06/24(日) 21:41:44
>>336 おぉ、右側すっきりですね。今度からそっちを使います。
lという変数名が「超スマート」じゃない 1とまぎらわしいもん
339 :
335 :2007/06/24(日) 21:46:27
>>338 そこはゆるして。1は変数名にはなりえない(はず)だから。
>>339 んでも、右辺値として使われてると紛らわしいじゃん?
Pythonのlambdaの中で条件分岐をすることは出来ますか? if文使えないみたいなので…名前付きの関数作るしかないですか?
andとorがあれば条件分岐なんてなんとでもなるだろ常考 後で困るだけだから普通の関数作れ
Python2.5だが >>>f = lambda x:1 if x else 2 >>>f(True) 1 >>>f(False) 2 みたいなのはできる もちろん可読性を損ないかねない場合は普通に関数使うべきだと思う
fact = lambda x: x<=1 and 1 or x * fact( x-1 ) fact = lambda x: 1 if x<=1 else x * fact( x-1 )
>342 う〜ん、1回限りのfilterやmap、reduceの為だけに 1つ名前を汚すってどうも嫌な感じがするんですよね… とりあえず今のところは関数作っておきます
__lambdaって名前を使い回せばいい。
>346 なるほど…使い回すなんて方法もあったのか って、よく考えたら Python って 関数ローカルな関数が定義できるから あんまり名前汚すことに神経質にならなくていいのかな スレ汚し失礼しました
348 :
339 :2007/06/25(月) 07:05:27
>>340 ん、まぁ確かにそうなんだけどさぁ。。。
>>348 PEP8にエル一文字なら大文字のLを使えと書いてある
350 :
348 :2007/06/25(月) 08:28:12
>>349 こんなにいいガイドラインがあるとは知らなかった。参考にしよう。うん。
>>348 オマエは才能ないからRubyでもやってれば?
352 :
348 :2007/06/25(月) 11:28:48
>>351 え〜。オレ才能ないからRubyでも同じだと思うけど。
PHP, Perl, Ruby -> 全部気に入らない -> Python
の流れできた結果だから、どうしようもない。
ダメなやつは何をやってもダメ
>>> print 'abc','abc' abc abc 間にスペースが勝手にはいるんですけど、 どうしたらスペース無しにできますか?
このしつもんはわかったのでもういいです
ほんとうにわかったかどうかかくにんするため 追試 をおこないます。火曜日の 18:00 に集合のこと
そうですか。それはおめでとうございます。
358 :
348 :2007/06/25(月) 14:49:46
PythonでつくったCGIプログラムをサーバにuploadするとき、みなさんどんな方法でやってますか。 今はFTPつかって更新したファイルだけを手作業でuploadしているのですが、ファイルが増えてきたので面倒になりました。 できればUNIXでつかえる便利ツール教えてください。
360 :
デフォルトの名無しさん :2007/06/25(月) 14:57:36
>>359 見事にPythonに関する質問 ぽ く 見せかけてはいるがスレ違い。
>>359 ftp コマンドをシェルスクリプトで自動化すればいいのでは。
>>361 それでもいいのですが、できれば指定したディレクトリを同期化してくれたりするとうれしいのですが、
そんなツールないでしょうか。
いやきっとあると思うのですが、windows用のしか見つからなくて。
どうみてもスレ違いw
sitecopy
rsync
■ おすすめ2ちゃんねる 開発中。。。 by FOX ★ このスレを見ている人はこんなスレも見ています。(ver 0.20) AutoHotkey 3 [ソフトウェア] GoogleWebToolkit[GWT]について語ろう [WebProg] 【Python】TurboGearsスレ Part 1【Framework】 [WebProg] Vim Part14 [UNIX] Vim 使い多いんですかね
犯人探しには格好のツールだなwwwww
ちゃんと仕事しろよ○○○(wwwwwwwwwwwwww
小数点第a位を切捨てする命令か方法って無いですかね? 四捨五入は見つかったんですが。
>>370 何に使うのか分からんけどこんな感じ?
>>> def kirisute(f, a):
assert isinstance(f, float) and isinstance(a, int) and a > 0
m = 10 ** a
n = int(f * m)
return n / m, n % m
>>> kirisute(3.1415926, 3)
(3, 141)
>>> kirisute(3.1415926, 4)
(3, 1415)
>>> kirisute(3.1415926, 5)
(3, 14159)
>>>
math.floorを使えばもうちょっと綺麗に書けそうな
あえて切り捨てたい状況ってある? 普通桁が足りない場合の方が問題になるような・・・
374 :
371 :2007/06/26(火) 21:03:47
>>372 浮動小数点数のまま処理しても正確には切り捨てられないしなー、と思って泥臭く整数で処理してみた。
(例えば3.14159は浮動小数点数では3.1415899999999999になってしまう。)
>>373 俺も切り捨てたい状況というのがワカラン。
>>370 さん、良かったら何に使うのか教えて下さい。
decimal
>>375 に先を越されたが、
>>> def rdown(f,s):
import decimal
d=Decimal(f.__str__())
return (d*10**s).to_integral()/10**s
>>> rdown(3.1415,2)
Decimal("3.14")
377 :
376 :2007/06/26(火) 22:23:42
d = decimal.Decimal( f.__str__() ) だな。
378 :
c :2007/06/27(水) 00:34:14
>>375 切り捨てだから
to_integral(decimal.ROUND_DOWN)ですね。
個人的には
from decimal import Decimal, ROUND_DOWN
return d.quantize(Decimal('1e-%d'%s), rounding=ROUND_DOWN)
とか。
このさい文字列でいいだろ。 "%%.%df" % a % x
perl の module-starter のように、 egg のプロジェクトテンプレートを作ってくれるようなコマンドってないでしょうか?
381 :
デフォルトの名無しさん :2007/06/29(金) 00:10:05
聞いたほうが早そうなので聞いちゃうけど、dictのkeyとvalueを 逆転させるのってどうするのがはやいかな。まじめに |def kv_rev(d): | rD={} | for k in d: | rD[d[k]] = k | return rD とかするのでいいのかな。
>>381 dict([(y,x) for (x,y) in d.items()])
クックブック(今年買った英語版・・・)では dict([(v,k) for k,v in d.iteritems()])
>382, 383 danke!
py3からはitemsとiteritemsが統合されるらしいね。(名前はitemsで意味はiteritems こういうのって初心者フレンドリーでは無い気もするけど・・・
>逆転 keyとvalueが一対一対応でない時の振る舞いは不定ってことでOK?
>386 もちおk (ID:IDのdictなので)
>>381-383 なんという偶然…
いま欲しいコードが見つかってしまった
これは間違いなく奇跡
/ ̄\ | ^o^ | \_/
>>383 2.4以降なら dict((v, k) for k, v in d.iteritems()) の方が良いかと
391 :
デフォルトの名無しさん :2007/06/29(金) 21:15:12
皆IDEは何使ってる?
>312-319
393 :
デフォルトの名無しさん :2007/06/29(金) 23:41:09
クックブック第2版(邦訳)やっと出るんだな
dankogaiが絶賛してた
発売日に本屋でPerlクックブックと見比べてたら Perlのほうが欲しくなってしまった。とりあえずPython買ってきたけど。 全盛期の頃はPerlを忌み嫌ってたが、今になってみると視野狭窄だったと反省
これはキモい
IronPython は料理の鉄人からだったのか
macosx 2.3.5 for panther(10.4) 林檎使い多いのね。
kwrite使ってる。 メモ帳はさすがにネタだろう。
IDEでない、って言ってあげるのが優しさだったんではw
404 名前:デフォルトの名無しさん [↓] :2007/06/30(土) 19:30:31 IDEでない、って言ってあげるのが優しさだったんではw
優しさだけじゃだめなんだよ
sageを↓と表示する専ブラがあるとは知らなかった
xyzzyのpy-mode
いつもながらがきくせえなあ、もう
やっぱり漢字は必要だな
でも1バイト文字最強だよなぁ。いろんな意味で。
論点がシフトしたような コードで表してくれ
zipでくれ
414 :
デフォルトの名無しさん :2007/07/01(日) 06:13:45
#/usr/bin/env python # -*- coding:utf-8 -*- import re res = raw_input('ほらほらマジレスしてみろやw\n草でぶっ潰してやんよwww::::') res = re.sub('、','w',res) res = re.sub('。','wwww',res) res = re.sub('?','?w',res) print res やべえwスwクwリwプwトw作wっwたww すっげーwwwwマジでwwwwwwwwwww ほらほらマジレスしてみろやw 草でぶっ潰してやんよwww::::は?お前なんかどうでもいいし、失せろよ。 は?wお前なんかどうでもいいしw失せろよwwww
>>414 うはwwwwktkrwwww
Pythonハジマタwwwwwwwww
いつもながらがきくせえなあ、もう
論点が4ビットシフトしたような コードで表してくれ
zipでくれ
アホしかおらんだけに平和だw
こんにちは
質問なんだけど、 map関数って、filterみたいな抽出処理ってできるのかな? わかる方いましたら教えてください。
抽出処理をする関数をこさえればいいだけだろw
>>421 できるけど、普通にfilter使えばいいんじゃない?
な? わかる方いましたら教えてください。
もはや内包表記しか使っていない
map関数って、入力リストと出力リストの要素数は必ず同じになるんじゃないの?
>>426 できる限り好意的に解釈すれば、
関数内で抽出(?)すればできないこともない。
ムダだが。
もはや包茎表記しか使っていない
正規表現で*つかうのアナルサーチって呼んでマッスルwww
もはや陰茎表記しか使ってない
おまいら包茎だのアナルだの陰茎だの包皮だの下品だな もう少し典雅にやれよ ぷんすか
もはや貴族表記しか使ってない
高貴な香りのするスクリプトなんてあるなら晒してみろよ
map(func, filter(gunc, L))とかすれば? つっても[func(x) for x in L if gunc(x)]と書いた方が後で読みやすいと思うけど
おや、ここは基地外病院なのか? スレを間違えた様だ
mapはlistを返すんだよな。
>>435 vi使いのキチガイがスレを占拠しています(wwwwwwwwwwwwwww
>>421 です
みなさん、レスありがとうございます。
いただいたヒントを基に、解決しました。
ありがとうございました。
結局どうしたのか書いてくれよ
聞くだけ聞いて気も用も済みましたので、 わざわざ手間を掛けて還元する気はありません。 ごめんなさい。
ぱいそん入門者であるが、 この言語、どうも基本のデータ構造がリストっぽい気がするのだが 贅沢というか勿体ない気がして落ち着かない。 フラットな配列とハッシュだけでも大抵間に合うのに ことさらにリストを多用することについて皆様どう思われますか
たぽー使えばいいだろ
毒を食らわば皿まで
pythonのリストってa[n]って言うアクセス自体がnのサイズに対して線形時間かかってるのかなぁ? 要素数100万ぐらいだとぜんぜん実感できないんだけど、・・・ 逆にわざと実感しようとしても、うちのメモリだと要素数1億以上のリストが作れないので、実験すら出来ない・・・
タプルは書き換えられないので、配列の代わりにはならん。 本当に、計算時間が問題になる問題なんだったら、arrayモジュールインポートしてちゃんとやった方がいいかも?(使ったこと無いけど・・・
Pythonのリストは所謂双方向リストではない。他の言語で言うところの可変長配列。 C++ならstd::vector、JavaならArrayList。
これだね。 typedef struct { PyObject_VAR_HEAD PyObject **ob_item; Py_ssize_t allocated; } PyListObject;
どうしても速度が気になるようになってきたら ボトルネックを捜してコード書き換えたり そこだけC言語で外部ライブラリ書いたり。 そこまで速度に神経質にはならないなぁ俺は。 スクリプト言語ってそんな感覚じゃね?大体。
def func(a=None, b=None): に対応するようなC/API は PyArg_ParseTupleAndKeywords を使えば良いと思うんだけど、 def func(a=None, b=None, **kwags): こういうPython関数を含むモジュールをCで書き直したい場合ってどうすればいいの? 一度クッション挟んで、 def func(a=None, b=None, **kwargs): import c_api c_api.func(a=None, b=None, more=kwargs) って呼び出しをするしか無い?
452 :
デフォルトの名無しさん :2007/07/03(火) 17:05:11
皆さんはどんなエディタでスクリプト書いてるんですか? スクリプト言語は始めてなので、ぜひ参考にしたいです
ループ警報
吉本の子会社。
ここでメタクラスですよ。
使い慣れたエディタにPython用のシンタックスハイライトとコード補完が付いてるならそれ使え そうじゃないならIDLE使っとけ
メタクラスは面白いな。
みんな pydocとか使ってる? >>> import pydoc >>> pydoc.writedoc('web.py') no Python documentation found for 'web.py' とか出て来てバーヤバーヤヽ(`Д´)ノ orz
>>459 そんなぶっきらぼうな web.py さんが好き ... (*^ 。^*)
pydoc -pでWeb鯖モードにして使ってる。
>>459 みたいな使い方はしたことない。
462 :
デフォルトの名無しさん :2007/07/03(火) 20:14:17
pythonで、こういうことがしたいのです 教えてください 例 XXXX('hoge.txt') →txtが関連付けられたアプリが起動して、そのファイルが読み込まれる
わかりました import os os.startfile('hoge.txt') ですね
>txtが関連付けられたアプリ こういう概念って windows 以外にあるんだっけ?
MacOSXはそうだったような違ったような
466 :
465 :2007/07/03(火) 22:22:00
今ライブラリリファレンス見たら 利用できる環境:Windows ってちゃんと断ってた
次善策: webbrowser.open(ファイル名)
os.system("hoge.txt")
PythonでGUI=Tkinterでおk?
wxPython!
>>469 >PythonでGUI=Tkinterでおk?
WindowsならIronPython使え。
MacOSXならwxPythonだ。
LinuxならPyQt。
どれでもとりあえず動けばいいならPyQt。
Guidoと心中したいならTkinterだ。
>>471 >Guidoと心中したいならTkinterだ。
Tkinterに決めた。
これは愛ね
PyGTKがよくね
477 :
デフォルトの名無しさん :2007/07/04(水) 17:34:13
でもIronPythonは参考文献少ないから× wxPythonにするか
478 :
デフォルトの名無しさん :2007/07/04(水) 18:08:18
じゃ俺も
Tkinterは >>> from Tkinter import * >>> root = Tk() >>> b = Button(root, text='hello, world') >>> b.pack() >>> root.mainloop() みたいにするとウィジェットが生成される様子を 視覚的に把握できて楽しいよ。 他のツールキットでもできるかもしれないけど。
とりあえずIronPythonも同じ事が出来る。
IronPythonならマルーンを操ることもできる。
ヨミならロプロスを操ることもできる。
ヨミって何?
虹裏で「無職って楽しいな」とか叫んでる人の事じゃないの?
ヨミ様はヨミ様だよ
オーンブロドォー
ヨミ=元祖ヒキコモリ?
>>487 完全にメルヘン系のヒキコモリだな.
今時世界征服だなんてありえない.
いや、最近の漫画じゃないから
あれは誰だ 誰だ 誰だ デビルマーン デビルマーン(泣)
492 :
デフォルトの名無しさん :2007/07/05(木) 20:05:27
もうおまいらがPythonのドキュつくればいいんじゃね? Wikiあるんだし
PyJUGのじゃ足りない? やるにして、スレまとめの有り様から言って微妙だ
どの辺が「有り様」なのか?
Python自体のドキュメントが欲しいという要望は無いだろ。 定番開発環境とか定番フレームワークはよく話題に出るけど。
時々ドキュメントのドキュメントが欲しいと思うことがある
皆さん、コマンドラインで動く簡単なpythonプログラムでリアルタイムで キー入力を読みたい時はどうしてますでしょうか(raw_inputなんかは入力 待ちで止まっちゃいますよね)? ちなみにpygameのページは会社からはアクセスが禁止されていて 試せませんでした…
UNIX系のOSならcursesモジュール Windowsは知らない
>496 キーワードを思いつければ索引を検索でいけるんだけど そうでない場合に xxをやりたい => こんなのあるでー っていうのが欲しいと思うことはある まあそれがcookbook とかなんだろうけど
>497 既にでてるけど curses が大げさなら termios もっとも termios がややこしいから 簡単に使えるラッパーとして curses があるはずなので...
怠惰はプログラマの美徳
つまりメタボリックなのが良いプログラマ
時々コメントのコメントが欲しいことがある
>>505 精神上の怠惰と生活上のだらしなさは違います
肉体がだらしない奴はたいてい精神もだらしないがな。 デブは氏ね。または健康保険料10倍払え。
>kbhit()も有るよ。 msvcrtつーWindows版Python標準のモジュールに入ってるんですね。 ありがとうございます。
俺は怠慢で短気で傲慢だから最高のプログラマーだ
と、海原雄山が申しております。
至高のプログラマ vs 究極のプログラマ
あれ? もしかして切れやすいニートが最強のプログラマ?
至高なのか最高なのか最強なのか究極なのか ハッキリしろー、はっきり
孤高です
Pythonの連中こういう流れ好きよね
怠慢、短期、傲慢って、perlの話だろ
Perl は変態
>>518 perlの作者が言ったというだけで、perlに限った話ではない。
久々にPython本来の話題に戻ろうか。 ブックマークのPython関連全部晒してくれ。
おれIE使ってるからブックマークはないんだよ
cookbookと、pyjugしかないな。 cookbookはたまに漁って、自分のコードと比べると楽しい。
ない。 強いて言えばここぐらいか。 del.icio.us/tag/python はLDRで見てる。
公式その他で28個、サードパーティ関連、コラム等含むともっとあるな。
>>529 これは良Blog
ワークショップのまとめ記事もイイ
OOoのマクロにPythonが使えるようですが、使ってる人います?
利用者はばりばり使ってるよ。
>>531 だけだよ、使ってない人は。
俺は533なわけだけど使ってないな。
OOo って何かと思ったよ。 以前、Calc を Excel と同じように使えるかなー?と思って調べてみたら、 思いのほか面倒だったからそれ以来使ってないな。
OOoは表形式での入力とかネットでExcel形式で公開されているデータ読むのには使うな 速攻 CSV に変換してあとは素の Python で処理するけど
bismil lahir rahmanir rahim
もはや馬鹿しか書き込まないスレになったな
539 :
デフォルトの名無しさん :2007/07/12(木) 17:56:42
文字列で日本語を使いたいのですが、エラーが出てしまいます。 色々調べて八方手を尽くしましたがなぜかダメでした。 どれどころか、コメントアウトした日本語でさえも拒否されます。 なぜなのでしょうか? Python2.5とコンパイラはeclipseを使っています。 ひょっとしてeclipseのせいなんでしょうか?
542 :
デフォルトの名無しさん :2007/07/12(木) 18:19:45
>>540 その辺のことは全て試しました。
あとJapanese Codecsが必要なのかとも思い、インストールしようと思ったのですが
Python2.5に対応しているJapanese Codecsのバージョンはありませんでした。
>>541 すいません。eclipseでコンパイルした場合
File "C:\Documents and Settings\あ\workspace\test\rensyu\rensyu4.py", line 7
SyntaxError: Non-ASCII character '\x82' in file C:\Documents and Settings\あ\workspace\test\rensyu\rensyu4.py on line 7,
but no encoding declared; see
http://www.python.org/peps/pep-0263.html for details
こういうエラーメッセージが出ました。
>>540 のリンク先にある「ソースコードのエンコーディング指定」をきちんとしてあったら
そういうエラーは出るはずがないのだが・・・。
Python 2.5 には JapaneseCodecs は要らん。
> その辺のことは全て試しました じゃあ、ソースのエンコーディングの設定はどうしてるのか書いてくれ
545 :
デフォルトの名無しさん :2007/07/12(木) 18:41:35
>>544 すいません。
>ソースコードの一行目か二行目に次のように書きます。
というところを、いい加減に見ていて3行目に記述していました。
たったこれだけ直しただけで上手くいきました。
細かいところをちゃんと確かめなかったのが悪かったです。
お騒がせして本当にすいません。
ありがとうございました。
解決してよかったね。
>>545 #!/usr/bin/python
# -*- coding: utf-8 -*-
スクリプト系の言語の場合、
一行目 shebang と呼ばれる行に必ずインタプリンタのPathある場所を
書いてあげないといけないのだけど、
ex)
perl の shebang #!/usr/bin/perl
ruby の shebang #!/usr/bin/ruby
python では2バイト文字を使いたいときは 2行目に文字コードの
種類を # -*- coding: utf-8 -*- みたいに書かないといけない。
ちなみに pythonで cgiプログラムを組む場合 Windowsだと shebangを
#!c:\Python25\python.exe と指定しないと上手くゆかないので要注意。
追記: cgiプログラム でなければ shebang #!/usr/bin/python を書か
なくても特に何も問題は起らないので python だと一行目はあってもなくても別に良いらしい(^^;)
そんなルールないお。 shebangを使うのは % python hoge.py の代わりに % chmod +x hoge.py % ./hoge.py とかしたい場合。 Windowsの場合はレジストリにおいてインタプリタとスクリプトが 関連付けられるので、基本的にshebangは不要。 あとWindowsでCGIをやる場合にshebangが必要だというのは Webサーバの種類や設定によるから一概に言えることじゃないと思うよ。
2.5ではutf-8をdefaultにしてほしかったな‥‥‥。
JISとかcp932とかEUC-jpとかレガシーと言い切ってやるよ
>>548 unix や macだと ./ で実行できるんですね。いつも実行するときは
python hoge.pyとか打ってました。3文字多い罠 orz
実行環境のほうで、レジストリ(環境変数?)を見て、実行時に良しなに
やってくれてたんですね。 また環境変数かっ!!
というか、もうちょい鯖側のスクリプトも追いかけないと知識が片寄って
しまって駄目ぽですね自分。どうもありがとうございました m(_ _)m
入門書嫁。
>>547 知識が断片的でキメラみたいになってるな。
552じゃないが Unix/Linux の入門書で基礎を勉強すると
すっきり整理できると思うよ。
個人的には坂本文さんの「たのしいUNIX」で勉強したが
今となっては古いかな。最近だと何がいいんだろう。
>>549 RFC 3629 にあるとおりにBOM付ければ自動認識するので
実質、default だと思うぞ
BOMがあれば UTF-8、BOMが無ければ ASCII なわけだし
BOMのような目に見えないゴミを頼りにする神経が信じられない。 ファイルの先頭についているゴミのせいで、テキスト処理がどれだけ面倒になっていることか。
>>553 10年以上前の本だが、基本的な部分はまったく錆びれていない。
UTF-8にBOMは不要。
BOMには学生時代にお世話になりました。
>556 俺もそう思うんだけど 一方で微妙に文化が変わっているとか 微妙に今風じゃないとか 発行年月日をみてなんでこんな古臭い本っておもう人がいる のもまた事実 それなりに新しくてそれなりにいいものがあれば それはそれでいいのだが
>>557 UTF-8Nのことだよ(BOMありUTF-8)
UTF-8のBOMはUTF-16みたいにビッグエンディアンと
リトルエンディアンの区別をつけるためのものじゃないけど、
慣例上BOMって呼んでたはず。
>>559 自分も『たのしいUNIX』でいいと思うけど、
あえて最近のを挙げれば、『シェルの基本テクニック』とか。
さすがに「続・たのしいUNIX」のほうは厳しいと思うけど、 「たのしいUNIX」は今でもいい本じゃないかな。
たのしいモジッ(ry
>>561 >UTF-8Nのことだよ(BOMありUTF-8)
逆だ
UTF-8のBOMについてはRFC3629に既定してあるから参考にするといいよ
>>555 今更 UTF-8 の仕様や Guido の決定に文句つけても仕方ないと思うぞ
策定段階で文句つけないと
566 :
561 :2007/07/13(金) 16:33:05
>>564 うわ、間違えて覚えてた。指摘してくれてありがとう。
RFC読んでくる。
>>560 なんでわかるんだよ(wwwwwwwwwwwwwwww
俺はUTB派だな
シンボルに代入したらその環境の束縛が、あらかじめ追加されるんだな あせった
>>559 そういう人にはオライリーの「入門 Unixオペレーティングシステム」がいいかも。
ただし第5版。
それより前のは、やっぱりちょっと古いので。
571 :
デフォルトの名無しさん :2007/07/14(土) 22:11:43
そこだけコピって実行させようとしてるなら起きるだろ
そりゃあ定義されてないものを使おうとすれば。
575 :
デフォルトの名無しさん :2007/07/15(日) 14:51:38
>>572-574 もちろん次のページのもコピペして別ファイルにしてある。
Pygameも入れた。
その自分が作ったファイルに import pygame って書いてあるか確かめてみろ
577 :
デフォルトの名無しさん :2007/07/15(日) 15:28:15
>>571 のコードは抜粋されたものだろ。
そのサイトのトップページの gameutil.py を使ってみたら?
579 :
デフォルトの名無しさん :2007/07/15(日) 15:39:20
>>578 ありがとうございます。
気づかなかった
サイトの制作者に質問しろよ
入門書読めよこの低脳がクソ氏ねボケカス。
フランス書院読めよこの低脳がクソ氏ねボケカス。
586 :
デフォルトの名無しさん :2007/07/16(月) 19:17:02
RUBY最強だからないと思うよ
Pythonistaは正規表現みたいなバッドノウハウは最小限度にしか使わないよ
そうか?
Rubyを見ると吐き気がする
RUBYなんてつかってるの日本人だけだろwww
PerlerはヘッダやHTMLのパースにすら正規表現を使うよ。 RubistはPerlerの直系の子孫だよ。 彼らに長期的な生産性や可読性の話をしてもたいたい無駄だよ。
どうせ皆、昔はperlで書いてたくせに
593 :
デフォルトの名無しさん :2007/07/16(月) 20:17:44
>>592 PerlはRubyより後に始めてすぐ辞めた
Pythonは色々と使う Javaは型付き言語が欲しい時使う Rubyはワンライナーで使う C言語はライブラリ書いたりする VBはなんだかんだでメンテしてる だがPerlだけは何故か身体が拒否反応を起こすんだ 何故だろうな
坊やだからさ... >585 503 Service Unavailable なのでよくわからんが、reじゃだめなの? lex/yaccみたいないわゆる「ちゃんとした」パーサ/スキャナなら、 サードパーティでいくつか出てたと思うけど、本家にはなかったと 思うよ。
HTML/XMLパーサって入力がかっちりしてないと使い物にならなかったりしない?
速度的に問題があったりメモリ馬鹿食いだったり、
正規表現使えば数行なコードが数倍に膨れ上がったり。
>>585 strscan相当のライブラリは知らないけど、字句解析の例なら
ttp://effbot.org/zone/xml-scanner.htm 個人的には正規表現使いたい場合はRubyで書いてる。
正直Pythonの正規表現はいつまで経っても覚えられないわ・・・。
599 :
デフォルトの名無しさん :2007/07/16(月) 21:01:56
結論としてはRUBY最強ということでFA?
>>597 のページを見て知ったのだが、
なんか re.compile してできるオブジェクト(_sre.SRE_Match object)のmatch()には、
第2引数でマッチ開始場所を指定できるみたい。
>>> pattern = re.compile(r'¥d+')
>>> pattern.match(r'foo123bar') # not matched
>>> pattern.match(r'foo123bar', 3) # matched
<_sre.SRE_Match object at 0x742100>
re.match()とはちがうんだな。
re.match(rexp, string)とre.compile(rexp).match(string)は同じものだと思ってたけど
実は仕様が微妙に違うのね。
とりあえずこれで strscan.rb 相当のものがかけそうです。
>>597 さんくすです。
>>598 やりたい事がよくわからんが、reとスライスで何とかなりそうな予感。
>>600 >re.compile してできるオブジェクト(_sre.SRE_Match object)
_sre.SRE_Patternの間違いでした。
それにしてもRubyの名前がでると過剰反応する人多いですね。
単に、こういうライブラリがありませんかと聞くときに、説明のために出しただけなのに。
>>602 最後の2行のような火種をまき散らす人が嫌われているだけで、
Ruby使いを敵視しているわけじゃない。
フツーはスライス使うんじゃネーノ説にもう一票追加
reモジュールにScannerとかいう謎のクラスがあるようだが"experimental"らすい
606 :
デフォルトの名無しさん :2007/07/16(月) 23:08:57
pygameってまさかPython最新版に非対応?
>>603 勝手に火種扱いにして騒ぎ立ててる603が嫌われるだけじゃね?
>>606 少しは自分で考えような
小学生じゃないんだから
PythonではCGIとCookieのライブラリは付属していますか、session関係のライブラリが見つかりません。 なんかよさげなの知りませんか。 みなさんDjangoとかフレームワークを使うから気にしてないのかな。素のCGI書こうとして詰まりました。
標準ではないんじゃないの?
Pythonのreって、pure python? /usr/lib/python2.5/re*.pyやsre*.pyはあるのだけど、*.soはなさそうでした。
>>612 $ python -v
....
>>> import re
....
import _sre # builtin ← こんなのが
....
_sreだけスタティックリンクと思われる。
>>613 Cの_sre.cを_sre.oにしてスタティックリンクしている模様なので
pure pythonではないらしいという意味ね。
インスタント・ハッキングの練習1って x=input() y=0 while x<100: タブy=input() タブx=x+y print x-y と a=1 b=input() while a<100: タブb=b+input() タブa=a+1 print b でいい?
いいよ
617 :
デフォルトの名無しさん :2007/07/17(火) 18:44:46
なんか エラーあって、 一時間悩んで、 いったんやめて、 また起動してやったら、 ちゃんと動く。 これだけはやめて。 なんかこんなバグPythonにあんの?
ないです
>>613 _sreはstatic linkだったのか。さがしてもないわけだ。
さんくす
620 :
デフォルトの名無しさん :2007/07/17(火) 18:55:52
そうですか
>>617 処理系のバグを疑っている自分を見つけたら、それは思考停止に陥っている証拠。
経験者談。
それはコンパイラのバグです。
>>617 python はエラー出力が (UnicodeError:とか) 見易いのが
唯一の美点と言ってもいいくらいなのに、それを貼らずにエスパー
大募集とか、どんだけ〜
とか、ついさっき SocketErrorとか喰らって再起動させてる漏れが
言ってみる。うちのXP子は、無線LANカードの調子がおかしかったり、
DivX6コーデック入れたらサウンドボードがさっくりお亡くなりになって
くれてたりするYo! Tukumo の eMashinesはどんだけ〜 orz
eMachinesのことかー(AA略
低賃金労働者のITドカタはRubyをやれば儲かるよ。
日本国内で、python使えてさえいれば飯が食えるような仕事ありますか
>>627 無いと思うよ。
PHPとかの方がずっとましだと思う。
穴掘りしかできない奴がどういう扱いを受けるか考えてみろ。 PHPでもJavaでも同じ結果だよ。
>>627 Pythonで飯食えるところは幾つかある。
ググればそれなりに見つかるが、Python*だけ*で飯が食える場所はごくわずかかと。
>>630 ふーん、Python*だけ*で食える場所なんてあるんだ。
それってゴイスー。教えてプリーズ。
>>631 自宅警備員のメルヘン君をいじめるなよ(WWWWWWWWW
>>631 俺のいるところはソフト開発屋ではないけど、メインの言語としてPython使って飯食ってる。
もちろん、SQL、シェルスクリプト、拡張モジュールのためのCとかは併用しとるが。
そういう意味では *だけ* ってわけではないけど。
>>633 結局Pythonだけでなく,DBとかシステム構築なんかの知識がないとダメってことだろ。
>>634 ま、そーいうこってす。
もっともどんな言語でも同じかとおもうけどな。
>>631 うちも
>>631 と同じ感じ。フランスの研究所が出してくる研究レポートが
Python + SWIG + C++で書かれているので、それを発展させる研究・開発を
行っているので、言語はPython+SWIG+C++, SQL, シェルスクリプトになる。
……レポートの翻訳と特許申請に時間を取られてるけど、プログラミングは
Pythonが主体。
誰か627の夢と630の妄想を叶えてあげて〜。
google行けばもしかしてPython*だけ*で飯食えるのかな。
Guido*でさえ*Pythonだけで食えてないのにこのゴミ共はどんだけ身の程知らずなんだよ。
Pythonだけ -> ダメ PHP, RoRだけ -> 食える? これが成り立つとしたらJythonやIronPythonは鳴かず飛ばずで 以外にJRubyやIronRubyはそこそこ伸びるのかも、なんて妄想した。
>>638 基礎とちょっとした応用ぐらいしかできる人がいないからなぁ
それを考えたらpythonだけっていうのは無理だろうな
642 :
641 :2007/07/18(水) 00:33:24
安価ついてるが 間違い 本当は安価なし スマン ミスった
協調性のないジャイアンはどこの世界でもハブンチョなんだぜ。
>>617 処理系のバグかあ。Rubyでは日常茶飯事だけどPythonにはあんまりないんじゃ
ないかなあ。全く無い、とは言わないけど。
645 :
デフォルトの名無しさん :2007/07/18(水) 01:16:46
まつもとゆきひろはRuby*だけ*で食えてるんだろうか
CとRubyだから、Ruby*だけ*ではないわね。
まつもとゆきひろのいる会社がうちの会社のプロジェクトのRuby on Rail周りの 技術コンサルに入ってる。たしか Ruby on Rail とその周辺(RDBMS、負荷分散、 運用設計の、主に機能外要件の設計のコンサル)が範囲なので、Rubyだけでは 無理そうではある。
>>644 最近特にひどいよね。数値演算とか。どんだけバグってんだよっていう。
Pythonの知識*だけ*で食えると思っている自宅警備員とお話しができるスレはここですか?
アナルが多いスレだな
>>621 まじっすか。おすすめのライブラリがあれば教えてください。CGIでも使えるやつ限定で。
ここで閉鎖的なDjangoコミュの住人が一言。
>>638 やる気のないひとをGoogleが採用するとは思えない。
まあ、Pythonだけを使ってる、じゃなくてPythonだけを「作っている」
とかなら可能性はないとは言い切れないけど・・・
普通に複数言語使える人ばっかじゃない?
というか、そうでなければ俺でもGoogle社員になってるはずだ。
Googleで使ってる言語はC++, Java, Python, JavaScriptだけ
Sawzall
多分ばれなきゃいいんだろうけど、共有リポジトリは4言語で統一されてるらしいよ > 657 まぁ、CみたいなC++も多いだろうけど。
オライリーの「PYTHON クイックリファレンス」って、今買う価値はありますか? やたら高いのと、表紙の「Python2.3対応」の文字でちょっと二の足を踏んでいます。 特に仕事に使うわけではないので、オンラインマニュアルに毛の生えた程度ならやめようかと思っています。 一応、同社刊の「初めてのPython」は既に持っています。
リファレンスならオンラインで役目十分じゃないの?
そう、情報が古いので、止めたほうがいいです。 むしろクックブックとか。
Head Firstシリーズで出てほしいなあ。
本は要らんよ。毎週のように「これは使える」って新モジュールも出てくるし。 勉強の為の勉強ならそれらのソースをよく読めば良い。
そうそう。 本なんて無くてもPythonはできるようになる。余裕。 PythonだけできればGoogleに就職できて、使い切れないくらいのお金を手にできる。
Google、平均すると給料はそんなに高くないって聞いたが... (上が青天井なのはそうだろうけどね)
給与はともかく得られる人脈と切磋琢磨によるスキルアップは相当なものじゃないかと思う。
>>667 そんなのGoogleに入らなくてもできるよ。余裕。
自宅警備員が一番だよ。
先輩がGoogleから内定貰ってたな 面接は2日で合計6時間くらいらしい
日本のgoogle?
次のようなエラーがでました。 $wine-doors Started logging session Traceback (most recent call last): File "/usr/bin/wine-doors", line 92, in ? import gtk, ui File "/usr/share/wine-doors/src/ui.py", line 7, in ? from ctile import Tile File "/usr/share/wine-doors/src/ctile.py", line 1, in ? import cairo, rsvg, math ImportError: No module named rsvg 環境はDebian etch です。 ”rsvg python” で検索しても解決策はみつかりませんでした。 誰かわかる人いたらおしえてください。
Tkinterであるツールを作っていて、画像をモーダレスな別窓に表示したいと思い、以下のような感じ でやろうとしました。 from Tkinter import * import Image import ImageTk def view(): t=Toplevel() img=Image.open("test.bmp") #何かImageで読めるファイル tkimg=ImageTk.PhotoImage(img) l = Label(t, image=tkimg) l.pack() t.pack() ##1 f=Frame() b=Button(f,text="view",command=view) b.pack() f.pack() f.mainloop() 「view」ボタンによって画像がToplevelによる別窓で表示されます。 とりあえず意図どおりに動作するのですが、 ##1 の行で AttributeError: Toplevel instance has no attribute 'pack' といわれます。たしかに >>>'pack' in dir(Toplevel) False だったのですが、この行をはずすと別窓には画像のサイズのみ反映されて画像自体の 表示が行われません。ならば t.pack() では何が実際に呼び出された結果画像が 表示されていたのか、packを呼ぶ以外に方法があるのか、何か情報お持ちの方いましたら 教えてください。
python-gnome2-desktop
キロ、メガ、ギガ、ミリなどの接頭辞を付す関数って既存のものがありますか? 例えば func(15000) で "15K" を返す、など
先日このようなものを作った。まだ使ってない from __future__ import division import math import bisect import locale prefix = ( (2 ** +10, 'Ki', 'kibi', ), (2 ** +20, 'Mi', 'mebi', ), (2 ** +30, 'Gi', 'gibi', ), (2 ** +40, 'Ti', 'tebi', ), (2 ** +50, 'Pi', 'pebi', ), (2 ** +60, 'Ei', 'exbi', ), (2 ** +70, 'Zi', 'zebi', ), (2 ** +80, 'Yi', 'yobi', ), )
class Byte(long): """Human readable byte unit.""" threshold = 1000 / 1024 precision = 2 unit = 'B' def __str__(self): value = int(self) if value < 0: raise ValueError, 'Value must be greater than 0.' i = bisect.bisect([factor for factor, symbol, name in prefix], value / self.threshold) - 1 if 0 <= i < len(prefix): factor, symbol, name = prefix[i] else: factor, symbol, name = 1, '', '',
value /= factor value_str = locale.format('%d', value, True) if symbol and self.precision > 0: d, i = math.modf(value) if d != 0.0: d = str(d).split('.', 2)[1] d = d[:self.precision] if len(d) < self.precision: d += '0' * (self.precision - len(d)) value_str += '.' + d return '%s %s%s' % (value_str, symbol, self.unit, )
すごいな。 みんなぐーぐるにしゅうしょくできるよ。
683 :
660 :2007/07/20(金) 21:23:12
>661-664 遅くなりましたが回答ありがとうございました。 クイックリファレンスの購入は見送りたいと思います。
684 :
674 :2007/07/20(金) 22:01:53
>>677 出来ました。
ウィジェットのimageプロパティに渡しても表示までは保持されていないってことですか。
実際に作ってるツールの場合、Toplevelを継承したクラスにしているのでそちらに
ImageTk変換後を保持させることで対処できました。
ありがとうございました。リンク先も参考にさせていただきます。
685 :
デフォルトの名無しさん :2007/07/21(土) 03:06:38
「>>000」などの書き方を教えてください(アンカー付け)
>>671 すまない、どちらかは知らない。
話す機会があれば聞いてみる。
matplotlibっていうグラフ描画のライブラリ使ってんですが日本語をグラフ上に描画する方法知りませんか?
話はずれるが、Googleの"平均"年俸は3万ドル程度だそうだ。
カレントディレクトリ以下のディレクトリを巡回して 各ディレクトリごとに dir /s /b *.mp3;*.wma;*.flac > index.m3u を実行して回るスクリプトの書き方がわかりません。 環境はWindowsXPSP2です。
Rubyを使えば一発で解決!
>>689 import os, os.path, re
f = file("index.m3u", "w")
for root, dirs, files in os.walk(os.getcwd()):
for fn in files:
if re.search("\.(mp3|wma|flac)$", fn, re.I):
print >>f, os.path.join(root, fn)
>688 メディアンでおながいしまつ
日本とおなじで奴隷が多いってことか
694 :
デフォルトの名無しさん :2007/07/22(日) 20:22:15
Cookieが保持されません。 サイトにログインできるスクリプトを書いています。 ログインには成功するものの、クッキーが期限切れのメッセージが返ってきます。 params = urllib.urlencode(query) cj = cookielib.CookieJar() opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj)) r = opener.open(url, params) スクリプトでは、これでいけると思うのですが Cookieの値が保持できていないようです。 python自身の設定とか、やるべきことってありますか?
695 :
694 :2007/07/22(日) 21:51:06
環境を書き忘れました mixiで試したらいけました。 が、目的のページへは無理です。 POSTでログインに成功した際に、 GETのパラメタを含むURLにリダイレクトがかかるようです。 これって関係ありますか?
696 :
694 :2007/07/22(日) 21:52:33
更に環境を書き忘れました Win XP ProでPython2.5を使用しています
697 :
デフォルトの名無しさん :2007/07/22(日) 22:03:29
sprite = pygame.sprite.RenderPlain() このspriteはGroupというデータ型らしいのですが、 これを初期化するにはどうすればいいですか?
>>694 リファラとかはちゃんと設定してる?
ブラウザのバージョンで蹴られているかも(目的のページが使用ブラウザを限定していれば当然そうなる)
700 :
デフォルトの名無しさん :2007/07/22(日) 23:19:12
>>699 言い方が悪かったかも
つまりはspriteの内容を読みたい。
sprite.add(class)みたいに、sprite.delete()といったかんじでできないですか
どうしてもよく分からないのですが、クラスは単純な関数のセットと比べてどのような利点があるのでしょうか? 変数名がかぶりづらいとか、見た目が分かりやすいとかその程度なのでしょうか?
関数がクラスに属していることを明示できる、とか
>>701 インスタンス毎に別の値を保持できる
「単純な関数のセット」が欲しいだけならモジュールで済ます方がいいよ
python、 オンラインではクラスに関する情報 詳しい 見つからないんだが、良いホームページ 知っちゅきゃ?
python のクラス、というより、一般的なオブジェクト指向の話になると思うから、 一般的な話のサイトとか見た方がいいんじゃね
>>688 >話はずれるが、Googleの"平均"年俸は3万ドル程度だそうだ。
鯖要員に高度なプログラミング技術はいらないだろうからな。
あるいは,そもそも開発者の給料も低いのかもしれないな。
頑張った社員にはインセンティブとして株が配られるとか。
毎日大量のHDD交換要員も居るだろう? 彼等の給料がそんなに高いはずがない。
>>701 例えば、単純な図形の面積を計算する関数を作るとしたとき、
関数を独立させるなら、三角形、四角形、円・・・とかで場合分けか、それぞれの図形ごとの関数が必要。
三角形、四角形、円・・というクラスを先に作って、その中に面積を計算する関数を作れば、
それぞれの関数を作る手間はかかるけど、細かく正確に場合分けする手間や
「この図形には、どの関数つかうんだっけ」と迷ったりすることが無くなる。
すべてのクラスで同じ関数名にしておけば、どの図形クラスのオブジェクトか考えずに一括処理できるから楽。
図形の面積じゃなくても、例えばゲーム作ってキャラごとにパワーアップバージョンとかあって、
パワーアップ関数でキャラがどう変化するのかを個別に設定するのも、上と同じ考えでできる。
>>709 三角,四角,円についてはよく分かりました。 五角形に場合はどうすればいいのですか? おしえてください。
711 :
デフォルトの名無しさん :2007/07/23(月) 16:35:43
六角形、七角形についてもお願いします。 ほんとうに困っています。
713 :
デフォルトの名無しさん :2007/07/23(月) 17:00:11
>>712 プログラミングが何かわかってないだろ。
あとお前夏厨だろ
714 :
デフォルトの名無しさん :2007/07/23(月) 17:17:26
明らかに「全然困ってない感」に満ち溢れてるよな
>>713 omaeは人生勉強が足りなさそうだなwwwwwwwwwwwwwwww
717 :
デフォルトの名無しさん :2007/07/23(月) 18:05:56
IDがないとだれがだれだかワカンネ
俺には分かるよ。全員同一人物だと。
719 :
デフォルトの名無しさん :2007/07/23(月) 19:11:46
だって >718 も含めて全部同一人物だからな
721 :
デフォルトの名無しさん :2007/07/23(月) 21:07:09
統一意識体の端末供乙 おれもか
誰彼と 夏厨涌き出し 夏を知りNull
Haiku OS スレにポストしとけばよかったといまさらにおもた。
みなさんpycheckerって使ってますか? Python2.4.4 で pychecker0.8.17を試したのですが、うまく動きませんでした (なぜかチェック対象のスクリプト自体が実行されてしまう)。 Webに"PyChecker works with Python 2.0 through 2.3."などと書いてあるので やっぱり未対応? とすると皆さん構文チェッカーは何を使ってます?
>>725 構文チェッカなんて使ったことないなあ。。。
ここは自作自演のひどいイターネットですね。
某ワークショップが終わったら急に煽りが元気になった件
pylintつーチェッカもあるみたいだけど サイトが重すぎてつながらん
チェッカーでワンライナー厨を排除
>>> print (lambda ss: '¥n'.join([''.join((x, y, z, u, v, t)) for x in ss[:5] for y in ss for z in ss for u in ss for v in ss for t in ss if len(set((x, y, z, u, v, t)))==len(ss)]))(unicode('ワンライナー', 'utf-8'))
>>728 煽りの好例ですね。
まあITドカタは辛いだろうけど頑張って。
すごく陰湿で後ろ向きな奴がいるな〜 PHPでもやってればいいんじゃね?wwwww
コンピューターの前で一日中いたら誰たでっていかれるさ
× コンピュータの前で ○ コンピュータの前に × 誰たでって ○ 誰だって
Pythonの回りにも変な奴が増えたなあ. 日本語もできないゆとり君とか. 閉鎖的なやつとか.ジャイアニズム全開のアホとか. キチガイのZOPE関係者とか.後ろ向きな窓際PC警備員とか. PythonができればGoogleに就職できると信じているメルヘン君とか. Pythonが広まった証拠か?
737 :
デフォルトの名無しさん :2007/07/25(水) 16:38:14
確かにいかれてるな
まあ日本全体がいかれてるからな。
民主党に投票しないとな。 阿部晋三みたいなこけおどし政治家にはすぐにでも辞めてもらわないと。
>>725 pylintを使ってる。EclipseのPyDev経由でしか使った事が無いけど。
PyDevはコードフォーマッタが気持ちいいけど、重いのが難点。
コードフォーマッタ単体でどっかに転がってないか探しているけど見つからない。
自作するしか無いか?
>>725 python2.5.1でpychecker0.8.17使ってるけど、ちゃんと動いてるよ。
>(なぜかチェック対象のスクリプト自体が実行されてしまう)。
なんでだろうね。pycheckerの1行目がおかしいとか?
MacOS X 10.4 iTerm上でipythonを実行すると、カラーで表示されるのはいいのですが、 そのせいで表示されない文字があります。 どなたか同じ環境でうまく表示されている方はいませんか。 あるいはカラー表示をやめさせる方法があれば教えてください。
>>743 自己レスですが、背景色と同じ色(白)で出力されていたようです。
背景色を変えたら見えました。
とりあえずこれでしのぎます。
Pythonとmysqlでunicodeのやりとりを解説してるHPとか書籍ってない?
1. Pythonとunicode型とエンコーディングの解説 2. エンコーディングとmysqlの解説 に分けるとすぐ見つかるだろ。
直接や他のPHPとかの言語からは出来ています。
http://www.mail-archive.com/[email protected] /msg00098.html のページの
>>>> con = MySQLdb.connect(db="bookrental", charset="utf8")
>>>> con.character_set_name()
>'latin1'
この部分のように、データベース側がどう設定されているかにかかわらずlatin1が帰ってきてしまうのです。
ググった感じでは各ソフトウエアのバージョンの組み合わせによっては上手くいくらしいのですが、組み合わせもよく分からないのです。
中にはインチキで動かしている人もいるようですが・・・・・
上手く動いている組み合わせだけでもなんとか分からないでしょうか?
mysql -u username -p dbnameでログインしてutf-8でためしてみれ
それは大丈夫だよ。
それは大丈夫だよ。
頼むから何か解説してる本とかあったら教えて!
use the source, luke.
_mysql.c に #if MYSQL_VERSION_ID >= 50007 [...] mysql_ConnectionObject_set_character_set( [...] err = mysql_set_character_set(&(self->connection), s); [...] #endif なんて行があるから、MySQL を新しいのにできるのなら それで解決しそうな気がする。 (mysql_set_character_set() は MySQL 4.1.13 かららしいから MYSQL_VERSION_ID >= 50007 である必要はないと思うけど、バグ?)
759 :
名無しさん@そうだ選挙に行こう :2007/07/29(日) 01:06:46
プラグイン機能を持ったソフトウェアを開発しています。 プラグイン周りはこんな感じで、特定のフォルダ以下のファイルをロードして使っています。 def load_module(module_name,basepath): f,n,d = imp.find_module(module_name,[basepath]) return imp.load_module(module_name,f,n,d) このソフトをpy2exeでビルドすると、プラグインは動的ロードなので、 プラグインが依存しているライブラリは取り込まれません。 現在はプラグインが依存しているライブラリを手で列挙して、py2exeのオプションで指定しています。 しかしこれだと、自分がサンプルで作った既知のプラグインはいいのですが、 第三者が作ったプラグインで、が他のモジュールに依存していた場合、エラーが発生してしまいます。 py2exeでPythonの標準モジュールをすべて取り込みたいのですが、どうしたらいいんでしょうか。 まぁ、列挙するプログラムを書いてもいいんですが……。
760 :
759 :2007/07/29(日) 09:07:49
結局どうしようもなさそうだと判断して、インストーラーにPythonを入れてしまいました。
違う型のデータに対して共通な処理(インクリメントとか文字列化とか)があるような場合に、 関数だと対応する型毎に名前分け(int_to_string()とかdouble_to_string()とか)したうえに、 使用時にも型毎に判断して呼びわけしなきゃならなくなるじゃん。 クラスのメソッドになってれば、型にかかわらず、 >>> animals=(inu(),neko(),kuma(),usi()) >>> for i in animals: ... i.talk() ... 'わん' 'にゃー' 'くまー' 'うしー'
うしー はどうかと思う
くまーが普通に見える時点で2ch脳
クマってなんて鳴くんだろ。
環境はslax5.18 バージョンはpython2.4.3 >python test.py とすると、raw_input()の日本語入力時に大量の^Hやらなんやらが出力されるんだが、 同じ症状の人いる? ただし >python >>>str=raw_input() とすると普通に入力できるのが謎。
>>765 人間には、地響きとしか感じ取れないような
低周波音を出す。耳骨が揺れるというのか。
python→C コンバータとかねーのかな〜 最近なんでもPythonで済ませがちになってきて、 いざ必要に迫られて重い処理をCで書こうとすると 面倒くさくてしょうがない。
Pyrexを拡張しる
期待するほど早くならないよ 動的型付け言語をなめるな
性的言語は面倒くさいなんて電車内で口走るなよ
セックス面倒くさい
Stacklessを検討しる
スルー力が足りない
高3の秋。両親と妹が親戚のとこに行って夜まで帰ってこないので、家には俺ひとりきり。 そこで俺は最高にゴージャスなオナニーをしようと思いついた。 居間のテレビでお気に入りのAVを再生。洗濯機から妹のパンティを取り出し、全裸になって頭からそれをかぶり、立ったまま息子を激しくシゴいた。 誰もいない家で、しかも真昼間にやるその行為はとても刺激的だった。 俺はだんだん興奮してきて、「ワーオ、最高!イエース!グレート!」と叫びながらエアギターを弾くように部屋中を動き回ってオナニーをした。 テーブルに飛び乗り、鏡に自分の姿を映し、「ジョジョ」を髣髴とさせる奇妙なポーズでチンポをこすってみた。 すさまじい快感で汗とヨダレが流れるのも気にならなかった。 「ヨッシャーいくぞー!! ボラボラボラボラボラボラボラボラ ボラーレヴィーア!!」 俺はゴミ箱の中に直接ザーメンをぶちまけようと後ろを振り返る。 そこには両親と妹が呆然と立ち尽くしていた。怒りとも悲しみともつかない不思議な表情を浮かべながら…。 「な、なんなんだよ!お前ら!!」 俺は叫んだ。今思えば「なんなんだ」と叫びたかったのは父のほうだったに違いない。 あの瞬間、俺は世界一不幸な男だった。それは断言できる。その後の数週間いや数ヶ月も辛かった。家族から向けられる蔑みの視線…。 しかしそんな俺も今こうして生きている。もしなにかに悩んでて「死にたい」って思ってる人がいたらどうか考えなおしてほしい。人間というのは、君が考えているよりはるかに強い生き物だから。人間はどんなことでも乗り越えていけるのだから。
スルー力が足りない
ああ「するーちから」なのか。やっと解った。thx!
スルッとカンサイ
print "スルットちゃん可愛い"
スノレーヵ
DQNの関西人は氏ね
直訳すると、素通りパワー
おまえら、意味分かってるなら「スルーカ」くらいスルーしろよ
785 :
デフォルトの名無しさん :2007/08/01(水) 05:55:33
なんでFreeBSDを語れ Part 16スレとコピペ荒し連動してるんだろ
パターン1:荒らしがFreeBSDでPythonを使っている パターン2:とりあえずFreeBSDを入れたもののPythonの入れ方が解らずイライラしている
787 :
デフォルトの名無しさん :2007/08/01(水) 09:49:28
パイソンってウインドウ開ける?
パターン3: ports の python のデフォルトバージョンが 2.4 から 2.5 にあがったけど UPDATING 見忘れてはまった
パターンX:いずれにしてもアホ
どうでもいい。黙れ。、
>787 wxPythonを使ってみよー
>>787 import Tkinter
root = Tkinter.Tk()
root.mainloop()
lambdaの例で f = lambda x:(x and f(x-1)*x)or 1 ってのがあったのだけど f = lambda x: x and f(x-1)*x or 1 じゃだめなの?
>>796 上の例は括弧大好き人間が書いたんじゃないの?
>>796 Lisperとしては上の書き方を推奨したい
なんでpythonはlambdaの本体に式しかかけないの?
というかかけるようにしたい
ローカル関数でいいじゃまいか
ワンライナー厨は氏ね。即刻氏ね。
いちいち名前付けるのメンドイっす
>805 そんなあなたに foo bar baz
俺はhoge派
俺は f みたいな一文字派
>>801 Python 以外でも大抵は式しか書けないと思うが
Pythonスレにあるまじき鬱陶しいスレタイが云っている。 名前付き関数で達成可能なことを、 lambdaでも出来るようにする必要があるのかと。
JavaScriptでAjax処理とか書いていると たまにlambdaになんでもつっこみたくなる時があることは認める
lambdaは式なんだって
式以外があるのが許せない人は LISP でも使えばいいよ
>>811 カリー化しる。
ほとんど似たようなことができる。
そういえばpythonのlambdaってカレー化できないよね。なんか扱いが適当な気がする・・・
何か根本からおかしいような気もしなくも無いのですが、エラーを一切無視してほしい場合、どのように書けばよいのでしょうか? (printの前にチェックすればいいのでしょうが・・・・) for 番号 in 学生番号(): try: print 番号['好きな食べ物'] #無いとキーエラーになる except KeyError: #特にここに書くことがないが、何も書かないと構文エラーになるし・・・・
pass
has_keyとかで事前に調べて分岐するか,getでキーがなかったら''とかを返すようにする
try: 番号.index('好きな食べ物') except ValueError: pass print 番号['好きな食べ物'] とかかな…意味ないか
if '好きな食べ物' in 番号: print 番号['好きな食べ物']
except:pass
4文字打つの面倒いから、1 でいいじゃん。
子供は書かなくてよろしい。
825 :
816 :2007/08/04(土) 17:46:14
おおおお!みんなありがとう!!!!
まだhas_key使っても怒られない?シーケンスメンバーテストより見やすいんだ…。
なに、将来は怒られるようになるの?
Python3000 では has_key がなくなって in 演算子のみになる予定。
それに伴って2.6から警告が出るようになる予定。
a,b = [1,2,3]
Traceback (most recent call last):
File "<input>", line 1, in <module>
ValueError: too many values to unpack
a,b = 1,2,3
Traceback (most recent call last):
File "<input>", line 1, in <module>
ValueError: too many values to unpack
a,b = [1,[2,3]]
b
[2, 3]
pythonって、右辺が多値の場合の扱いが厳格なの?
切り落したりすると何か問題とかあるのかな。FAQっぽい
のでML(英語でも可)のポインタきぼん!というかぐぐる
キーワードが思い付かない orz
新言語 Xtalを作る日記
http://d.hatena.ne.jp/xtalco/20070619#1182225425
エラーメッセージでググッて自己解決。
L = [1,2,3,4,5]
L
[1, 2, 3, 4, 5]
a,b,c = L[:3]
a,b,c
(1, 2, 3) #上記の記法はタプルと同等なものとして解釈される?!
a
1
b
2
c
3
ValueError: too many values to unpack - comp.lang.python | Google グループ
http://groups.google.com/group/comp.lang.python/browse_thread/thread/306b9866125cdec2/763d5c93a82f67d2%23763d5c93a82f67d2
a,b,c = L[:2] Traceback (most recent call last): File "<input>", line 1, in <module> ValueError: need more than 2 values to unpack 右辺の値が3つじゃねーと駄目ですよ(2つ以上じゃない) a,b,c,d = L[:3] Traceback (most recent call last): File "<input>", line 1, in <module> ValueError: need more than 3 values to unpack 右辺の値が4つじゃねーと駄目ですよ(3つ以上じゃないと) Laszloさんありがとー。というかじぶん入門書読め。
右辺が多かったら、 ValueError: too many values to unpack (展開するにあたって右辺の値が多すぎ蓮だぞゴラァーえらー) 右辺が足りなかったら、ValueError: need more than 2 values to unpack (展開するには右辺は○○以上必要だよエラー) --- 多くても怒られる、少なくても怒られるw
エラーになるのは当たり前だろ 多すぎる分が勝手にシーケンスになって放り込まれたり 少なすぎる分が補填されるような言語はキモすぎてつかえねえよ
Win XP SP2 に Python 2.5 をインストールしました。 Python スクリプトのアイコンを右クリックすると出てくるメニューの「プログラムから開く」に pyhtonw.exe (コンソールなしのインタプリタ) を追加したいんだけどどうすればいいですか? 「プログラムから開く」→「プログラムの選択」で C:\Python25\pythonw.exe を選んでも なぜか C:\Pyhton25\python.exe を選んだのと同じになってしまう・・・。 Python 2.3 のころは「プログラムから開く」に pythonw.exe が入っていたんだけど アップグレードしたら消えてしまいました・・・。
>831 幻覚っていうか... エラーにしないという発想がでてくるだけでも驚嘆に値するヨ
エラーにしない選択肢がありえないとまでは言わないけど、 Explicit is better than implicit. に反するとかそんな感じだと思う。 いまrubyで試してみたら $ irb irb(main):001:0> a,b=1,2,3 => [1, 2, 3] irb(main):002:0> a => 1 irb(main):003:0> b => 2 となってる
未定義変数を0扱いすべきだとかいう perl 病と同じ匂いを感じるなぁ
840 :
デフォルトの名無しさん :2007/08/06(月) 10:37:22
すんごい初心者質問なのですみませんが、pythonの 正規表現で質問です。 文字列「ssLLLLssLLsLLL」から、正規表現で「LL」、 「LLL」、「LLLL」を抽出するのに、文字の 連続回数「a」をfor文でインクリメントしながら 逐次的に抽出するコードを以下の様に書きました。 ところが、re.compile('[^L]L{a}[^L]')の中の 「a」をfor文で回せてないみたいで、findallした 結果をprintすると、空欄「[]」になってしまいます。 for a in range(2,5): restring = re.compile('[^L]L{a}[^L]') count = restring.findall(kekka) print count print "large",a,":", len(count) 正規表現のcompile()の括弧内に記述した 正規表現をfor文で回す事ってできないので しょうか?なんか良い方法無いでしょうかね・・・。
841 :
デフォルトの名無しさん :2007/08/06(月) 10:38:26
>>840 ですが、for文以下は全てtabでインデント
されています。書き込んだらtab消されてもうた・・・。
re.compile('[^L]L{%d}[^L]' % a)
>>840 > import re
> print re.findall(r'L+', 'ssLLLLssLLsLLL')
['LLLL', 'LL', 'LLL']
とかじゃだめなん?
844 :
デフォルトの名無しさん :2007/08/06(月) 15:17:48
"1"を数字の1にしたいのですが,どうすればいいですか?
845 :
844 :2007/08/06(月) 15:19:36
ごめんなさい,解決しました
a="1" a=1
「数字」だと、文字なのか数値なのかあいまいだな
a='1' b=eval(a)
849 :
デフォルトの名無しさん :2007/08/06(月) 16:55:58
pygameでSTG作ってる。 例えばプレイヤークラスだと、その内部で移動とか弾だしとかやるよな? そしたら敵弾との当り判定とか、クラス外でプレイヤの位置がほしくなる。 でどうしろと?
>>849 でどうしろと?
つーかあたり判定が必要なオブジェクト用の基底クラスを作るんじゃね?
質問があいまいすぎて正しい答えになっているかどうか不安だよ。 1) 当たり判定を行うマスタークラスを作る 多分シングルトン。 2の当たり判定が必要なオブジェクト用クラスのリストを持っている。 そのリストをもとに,当たり判定を行うメソッドを作る。 2) 当たり判定が必要な必要なオブジェクト用クラスを作る 当たり判定を行う範囲なんかの情報を持っている。 他のオブジェクトに当たったときに呼ばれるコールバックメソッドを持っている。 生成時に1に対して自分を登録する。 1の当たり判定実行メソッドを定期的に呼ぶ。 結果,範囲が交差していたら2のコールバックメソッドを呼ぶ。 コールバックメソッドでは,相手を爆発させるなり HPを減らすなりエンカウント処理を行うなど,オブジェクトごとの振る舞いを定義する。
いわゆる一つのダブルディスパッチ?
853 :
デフォルトの名無しさん :2007/08/06(月) 17:59:16
>>851 たぶんそういうことだが、
シングルトンとかわからんからで直す
>>853 シングルトンというか、ゲーム世界を表わす World クラスを作って
存在する全ての物体の位置をそこに記録しておけばいいよ
その World クラス w でオブジェクト o に対して
w.hit(o)
すると o に衝突している物体のリストが返る、というようなメソッドを作る
855 :
デフォルトの名無しさん :2007/08/06(月) 23:25:39
皆スッゲー、俺には全く理解出来ないよ。 でも1年位頑張れば俺も………どうなんだろう…
躓いてもなんでもいいから、とにかく動くプログラムを作ってみなよ。 試しながら学べるところが,Pythonみたいなスクリプト言語のいいところじゃないか。 みんなそうやって学んだんだよ。 設計うんぬん言うよりも,すぐにでも始めたほうがいいよ。
これを見て俺も、オブジェクト指向ってぜんぜん分かってなかったなあと思い知らされた。
オブジェクト指向機能の理解と設計は別だよ。 ここに書かれていることはむしろ設計に属するようなタイプの話題だよ。 設計は師匠について学ぶとか、自分で躓きながら学ぶとか 他人のソースを読んで学ぶしかない。 くソースを読んで、租借して、沢山書くことが上達の秘訣だよ。
>クラス外でプレイヤの位置がほしくなる という文を読んで、 プレイヤの位置を返すgetter書けばいいんじゃね? と思った俺は浅すぎたことを知ったorz
もちろんプレイヤーの位置を返すgetterは必要だけど 位置を必要とするような手続きを抽象化し、メソッドとしていかにうまく実装するかが オブジェクト指向設計のキモだ
俺も立派なpython使いになると決心した午後10時です
862 :
デフォルトの名無しさん :2007/08/07(火) 22:12:04
最近Pygameにちょうせんしまして Playerクラスの中に関数を作ってある。 そのとき playersprite = pygame.sprite.Sprite(Player()) ってしたら関数呼べないから、 classplayer = Player() playersprite = pygame.sprite.Sprite(classplayer) にしなきゃいけないよな、
俺は最近pygameでエロゲーを作っている。 せっかくなのでキャラクターを喋らせようと、 俺が声を当てている。 何か文句あるか。
864 :
デフォルトの名無しさん :2007/08/07(火) 22:31:03
どうせなら答えてくれよう
思ったように動けば、それが正解です
2chは広いから、素人声優を募集するスレッドなんかありそうだ
867 :
デフォルトの名無しさん :2007/08/07(火) 23:38:41
男優役は俺でいいじゃない
キミタチゴイスー ドンダケー グーグルニニュウシャシテクダチイ
869 :
デフォルトの名無しさん :2007/08/08(水) 09:33:09
sqliteで多対多にデーターを入力できないんだけどどうしてだろう。。。 いろいろ試したのですがだめでした from sqlobject import * connection_string = 'sqlite:/:memory:' connection = connectionForURI(connection_string) sqlhub.processConnection = connection class goods(SQLObject): name = StringCol() price = IntCol() shops = RelatedJoin('shops') class shops(SQLObject): name = StringCol() goods = RelatedJoin('goods') goods.createTable() shops.createTable() apple = goods(name="apple", price=100) yaoya = shops(name="yaoya") super = shops(name="su-pa-") print goods.get(1) print shops.get(1) print shops.get(2) apple.shops.append(yaoya) apple.shops.append(super.id) apple.shops.append(shops(name="7-11")) print goods.get(1) print goods.get(1).shops
870 :
869 :2007/08/08(水) 14:46:33
apple.addShops(yaoya) でできました
871 :
デフォルトの名無しさん :2007/08/09(木) 12:30:15
2ch に書くなら空白→ への変換くらいはやって欲しいところだな
全角空白だと潰されないから、2chスレの中で見るだけの分にはいいんだけど、 コピペ起動するとエラーだし面倒くさい FOX氏はpython嫌いなのかと邪推w
だーから文頭のspace連打が無視されるのは大昔からHTMLの仕様
夏っぽい展開だ。
<pre>にしときゃよかったのにな
<pre>だとAA文化が消滅する。pythonista見識狭すぎ
>>877 逆、逆。
2chが<pre>でなかったために、特定のフォントのメトリックスに著しく
依存する、非等幅フォントによるAAなどという珍奇な代物がはびこってしまったと
考えるべき
それより pure python な専ブラを作ればいいんじゃね?
すでにあるよボケがwwwwwwwwwwww
かちゅ〜しゃだとアンカでポップアップするレス表示がなぜかplaintextになるので
ひそかに活用してる (
>>326 、とか
navi2chも ふ: つ: う: pass に見えるよ?
print ネームバリューや実力の割に、こう言っちゃなんだがお安く使えるしね…,
ブラウザによっては見えるとかはあるかも知れんが 一通りPythonやってりゃ空白→ くらい余裕で書けるだろ? …つーか、wiki行けば載ってるし。
あのwikiは微妙。
open('target.txt', 'w').write(open('source.txt').read().replace(' ', ' '))
sed 's/ / /g' source.txt > target.txt
889 :
デフォルトの名無しさん :2007/08/10(金) 08:17:26
pythonのIDLEを起動しようとすると起動前にpythonが外部通信しようとするが、これはなに? FWで止めるとサブプロセス云々と怒られて起動さえしないのだけれど。
IDLE がなんか言ってるんだからきちんと読め
891 :
デフォルトの名無しさん :2007/08/10(金) 16:31:14
画像の一部を読み込むってできる?
>>891 PythonでということならPILを使えばできるよ。
(標準添付じゃないので別途インストール必要)
from PIL import Image
img = Image.open('src.bmp')
region = img.crop((100, 100, 200, 200))
region.save('target.bmp')
あのwikiって誰が運営してる? あんまり管理されてないっぽいが。
pythonって何でもできてしまうんだな、 空を飛べてしまうのかと思ってしまう勢いだ
Pythonじゃ空は飛べんだろ C言語なら鼻から悪魔が出るかも知れんが
まあ Flying Circus だからな
オフィシャルサイト見ると宇宙まで行けるようだ
898 :
デフォルトの名無しさん :2007/08/11(土) 13:01:19
PILインストールできね site-packagesに入れるだけじゃだめなのか
(玄関のドアを開ける) python:「はい、どうぞ」 perl:「!!!」 python:「perlさん!!」 perl:「ビックリした!!」 python:「うん…」 perl:「ラ、ラリーには言わないでね…」 python:「うん…」 …… (沈黙) …… perl:「どうする?」 python:「…お、俺、別にしなくてもいいよ…」 perl:「でも、一応、仕事だから…それとも私じゃイヤ?」 python:「そ、そんなことないよ…!!」 perl:「じゃあ、シャ、シャワーいこっか?」 python:「…うん」 perl:「でも、なんか、恥ずかしいな…」 python:「俺もだよw」 …… perl:「じゃ、じゃあ服脱いだら行くから、先にどうぞ」 python:「うん…でも、ホントにいいの?」 perl:「いいの…」 perlの細い腰から、スカートが床に落ちる――。
ワッフルワッフル
ツマンネ
どういう設定だ
903 :
デフォルトの名無しさん :2007/08/11(土) 18:09:09
金で女の子呼んだら昔の同級生だったというせてい
何をしている
905 :
デフォルトの名無しさん :2007/08/11(土) 18:18:42
907 :
デフォルトの名無しさん :2007/08/11(土) 18:37:08
zipを解凍しただけ
setup.pyとかついてなかった?
909 :
デフォルトの名無しさん :2007/08/11(土) 18:39:12
ある
じゃあ、それを動かせばいいべ。
911 :
デフォルトの名無しさん :2007/08/11(土) 18:42:35
うほっ
912 :
デフォルトの名無しさん :2007/08/11(土) 18:46:08
だがうごかない
>>907 Win32環境だったらインストーラのほうダウンロードしてそっち使おう。
UNIXだったらREADME読む。
914 :
デフォルトの名無しさん :2007/08/11(土) 18:51:15
ありがとう
pychallengeのレベル5で行き詰まったっす。 こりゃもしかして英語ネイティブな人じゃないと 解けないのでは…
pythonの使い方、ちゅーよりpythonを使う問題を見つけるまでの ナゾナゾがおもろいなコレ。
横槍すみません、 Pythonで定数の定義はどうやるのでしょう。 C言語の #define COUNT_MAX 5000 みたいな
count_max = 5000
定数の件、ありがとうございます。・・・初心者には難しいですね。 if cnt <= 5000: と書いた時、5000は一旦見えない変数になっているのでしょうか。 if 変数 <= リテラル: として処理されるなら if cnt <= count_max: とは違うコードができるんですよね。
文字列はあるていど共有されるけど、数値はバイトコードのその場に埋め込まれるんじゃなかったっけ? まあ変数に数値を定義すると書き換えが可能だとはいえ、分かるようにしておいて性善説的運用をするのがPythonの流儀だ。 たとえばCOUNT_MAX = 50000みたいに大文字とかにしておけば、怖がってだれも触らないだろ。
Guido van Rossum: >It's official! The second annual Python Sprint @ Google is happening >again: August 22-25 (Wed-Sat). We're sprinting at two locations, this >time Google headquarters in Mountain View and the Google office in >Chicago (thanks to Brian Fitzpatrick). We'll connect the two sprints >with full-screen videoconferencing. The event is *free* and includes >Google's *free gourmet food*.
>>923 そういう定数レベルの最適化がしたいならpythonを使わないのが正解
if command == CMD_A: ... 中略 elif command == CMD_Z: みたいに switch文的な分岐をしようとすると1回しか使われない変数をたくさん作るので ムダが多そうなんですが、気にするなということですね。 数値で直接比較しておいて、 # CMD_A とコメントに書く方がPython的なのでしょうか
いくらPythonでもマジックナンバー直書きはどうだろう
>switch文的な分岐をしようとすると1回しか使われない変数をたくさん作るので >ムダが多そうなんですが、気にするなということですね。 だから >926 ...
>>925 そのスプリントのあと,Python 3.0のα1が出てくるらしいな。
sprint? fを付け忘れてるぞ…と思った俺の脳は旧式
裕美子といいます。大都会の片隅で×いちのOLをしています。 使用OS WinXPsp2 使用Python2.5 IDLEやpythonコマンドライン上で日本語を入力すると、たとえば >>>print "裕美子" 裕美子 と表示されたり、 なにも弄っていないのに、ある時には >>>print "裕美子" (なにやら文字化け) になったりします。文字コードの設定に問題があるはずなんですが、 原因がわかりません。 IDLEのコンフィグでも日本語フォントが選べない(反映しない) みたいだし、どなたかご存知の方がおられましたら、 きちんと常時、日本語の表示が出来る設定を教えてください。
print u"ゆみこ"
>>933 いま、コンソールから入力したら
>>>print "裕美子"
裕美子
>>>print u"裕美子"
裕美子
になりました。 う〜んう〜ん 規則性がわかりません。
うにこーどやろ
すみません、自己解決しました。 おかしな認識があったら 訂正お願いします。 IDELもpythonコンソールも、printを使えばきちんと表示できる。 >>> print "裕美子" 裕美子 しかし、printを使わないと文字化けが生じる >>> "裕美子" '\x97T\x94\xfc\x8eq' 変数に入れて、変数名を直接入力してもだめ >>> str = "裕美子" >>> str '\x97T\x94\xfc\x8eq' でも、printを使えばOK >>> print str 裕美子
×・・・IDEL ○・・・IDLE 実はRuby/SDLでサクッと暇つぶしにゲームを作っていたのですが、 PygameもいいかなとおもってPythonを「今日から」勉強してます。 もっともRubyの学習も2日めですが・・・。
ネカマ氏ね
チュートリアルすら読めない奴は人間辞めろよwww
ネカマだと文字化けする仕様になっている.
ほんと女には弱いんだから おまえら…
_ ∩ ( ゚∀゚)彡 おっぱい!おっぱい! ⊂彡
───アタシの名前はアイ。心に傷を負った女子高生。モテカワスリムで恋愛体質の愛されガール♪ アタシがつるんでる友達は援助交際をやってるミキ、学校にナイショで キャバクラで働いてるユウカ。訳あって不良グループの一員になってるアキナ。 友達がいてもやっぱり学校はタイクツ。今日もミキとちょっとしたことで口喧嘩になった。 女のコ同士だとこんなこともあるからストレスが溜まるよね☆そんな時アタシは一人で繁華街を歩くことにしている。 がんばった自分へのご褒美ってやつ?自分らしさの演出とも言うかな! 「あームカツク」・・。そんなことをつぶやきながらしつこいキャッチを軽くあしらう。 「カノジョー、ちょっと話聞いてくれない?」どいつもこいつも同じようなセリフしか言わない。 キャッチの男はカッコイイけどなんか薄っぺらくてキライだ。もっと等身大のアタシを見て欲しい。 「すいません・・。」・・・またか、とセレブなアタシは思った。シカトするつもりだったけど、 チラっとキャッチの男の顔を見た。 「・・!!」 ・・・チガウ・・・今までの男とはなにかが決定的に違う。スピリチュアルな感覚がアタシのカラダを 駆け巡った・・。「・・(カッコイイ・・!!・・これって運命・・?)」 男はホストだった。連れていかれてレイプされた。「キャーやめて!」ドラッグをきめた。 「ガッシ!ボカッ!」アタシは死んだ。スイーツ(笑)
>>927 >switch文的な分岐をしようとすると
それが間違っているかもしれない。
ウザい。氏ね。、
夏ですな
>>948 有名な話だけど恒星で炭素12が存在できるのはベリリウム8とヘリウム4の合計エネルギーレベルが
ほんのわずかに炭素12より下回っているおかげで、しかも恒星中心部ではそれよりわずかに高い温度の状態。
このおかげで炭素12は形成され存在できる。
でもできた炭素12はすぐにヘリウム4と衝突し酸素16が形成されるがその反応速度が速すぎれば
すべての炭素12は酸素16になってしまう。しかしここでも炭素12とヘリウム4の合計エネルギーレベルが
酸素16よりもほんのわずかに上回っており、結果、酸素16を作りつつ炭素12も生き残ることができる。
この奇跡的な偶然のおかげで生命の素である重要な元素が宇宙に存在している。
KY
951 :
デフォルトの名無しさん :2007/08/15(水) 12:32:23
教えてください。 現在solaris10でPlone、MySQLを使おうとしています。 Plone-2.5.2バイナリ版付属のPython-2.4.4でMySQL-python-1.2.2を build、installしたのですが、 # python >>> import _mysql とすると、 ImportError: ld.so/1: python: 重大なエラー: 再配置エラー: ファイル /home/zope/.python-eggs/MySQL_python-1.2.2-py2.4-solaris-2.10-i86pc.egg -tmp/_mysql.so: シンボル mysql_autocommit: 参照シンボルが見つかりません。 といわれます。何が問題なのでしょうか?
日本のPloneコミュニティが一番の問題.
python って = 演算子のオーバーロードできないんですか?
>>952 DjangoとかTGとか、Web関係全般だろ
>>954 他を巻き込まないでよ、Ploneコミュニティの中の人。
>953 できないんじゃないかな。==じゃないよね?
アトリビュートへの代入ならオーバーライドできる。
959 :
デフォルトの名無しさん :2007/08/15(水) 17:05:24
パイソンチャレンジのレベル一を見て、 何をすればいいかわからない俺は無能ですか?
960 :
デフォルトの名無しさん :2007/08/15(水) 17:31:03
>>959 です
ちょっと調べてきたが、
Python使わずにとこうとしている奴らがいるな
ばかだなあ
Pythonの高速化ツールって、今のところPsycoぐらいなの? ソースコードに手を加えずに速くなれば一番理想的なんだけど・・・・exeなりなんなりの実行ファイルにしてくれるやつって、あれは速くなるの?
>>956 やっぱダメですかー
文字列クラスのサブクラスをつくりたいんだけど、
class enhancedString(...):
... に string って書いてもモチロンダメだし、
みなさんどうやってるんだろう。
まぁメンバに文字列持たせてやればある程度できた
んですが、
es = enhancedString()
es = "a"
ってのができない。。。(文字列型 'a' になっちゃう)
ルパンは963から大切なものを奪ってゆきました。
わざわざサブクラスにしなくてもいいんでないの
ふつー classの先頭は大文字じゃないか、という問題はさておき es = enhancedString("a") じゃね?
んなことわかってる。真面目な回答を希望する。
>>962 Pythonのコードを高速化する方法
1. 効率のよいコードを書く
2. psyco で最適化しやすいコードを書く
3. C で書く
まず、静的型付け言語と動的型付け言語について学んではどうかな。
>>954 >
>>952 >DjangoとかTGとか、Web関係全般だろ
ZOPE/PLONE国内コミュの香ばしさは別格wwwwwwwwwwwwwwwwwwwww
>>963 よくわからんが、strを継承したいんなら
class mystr(str):
でいいんでないの。そういう話じゃない?
古いPythonなら、strから直接継承できなくて、UserStringとかをつかう
必要があるかも知れん
あと、= はPythonではoperatorではないし代入は式ではない
なんか意味が良くわからんので、見当違いなレスになってたらスマソ
>>967 >んなことわかってる。真面目な回答を希望する。
こんなクソみたいな態度取る夏厨に真面目な解答する奴なんていないだろ、常識的に考えて。
>958 graphvizは? pythonから使えるのかしらないけど
>>963 es = "a"
pythonではこの文の意味は、esを文字列"a"にする以外の意味には絶対にならない。
>>966 の言うように
es = enhancedString("a")
とかするのが普通のデザインと思われ
あとは、まあ、
es = enhancedString()
es.setStr("a")
とか、・・・
みなさんいろいろどうもありがとう。 enhancedString は class EnhStr(object): def __init__(self, arg): self.__str = arg def __add__(self, v): return self.__str + v def sets(self,v): ... def gets(self): return self.__str def dels(self): del self.__str ... __slots__ = ('__str', '__fsenc') string = property(gets, sets, dels, "string property.") な感じで使ってみることに。(__add__だけオーバーロードしてもアレですが・・・) これで e = EnhStr("a") e.string = "b" とかできるようですね。 1.5.2以来あまりつかってなかったので new-style class はいろいろできて楽しいです。
>>971 > あと、= はPythonではoperatorではないし代入は式ではない
なるほど・・・lambda やリスト内包に書けないのも確かそういう理由だったっけ。
>>976 にも書きましたが
C++ あがりなのでつい = を再定義したくなりましたが止めます。
継承万歳時代のOOPを勉強したので最近のがあまり理解できてません。
978 :
958 :2007/08/16(木) 11:29:02
アドバイスありがとございます。
>>973 graphvizはpydocってのでラッパーすると使えるみたいですので調べてみます。
>>974 まさしく見た目がこんなの探してました。
知らないライブラリだったので調べてみます。
for x in lines: のようなループで、x を処理後なんらかのリトライをしたくなり、 つぎのループ開始で同じ x を処理するためにイテレータに値を 押し戻すような処理ってできますか? (意味不明・・・?) ループカウンタ使えば for (int i=0; i < 10; i++) { if (a[i] == 1) { i--; continue; } } のような感じなのですが・・・・。 Itertool というライブラリが死ぬほど便利だと聞いたので見てみた のですが、そういうのはないようで・・・。
980 :
デフォルトの名無しさん :2007/08/16(木) 18:32:26
ところでPIL+Pygameで作ったときは PILで画像表示とか読み込みするよね PILのshow()だと効率が悪いらしい 代替策おしえてください
>979 自分でイテレータ(のラッパ)を作ればできるよ。 化けたらごめん↓ class PushableIteratorWrapper: def __init__(self, ii): self._ii = iter(ii) self._pushBuf = [] return def __iter__(self): return self def next(self): if self._pushBuf: return self._pushBuf.pop(0) return self._ii.next() def push(self, x): self._pushBuf.insert(0, x)
私のおじいさんがくれた初めての木馬 . (・ω・`) それは三角木馬で、私は4才でした。 (・ω・) (====) 突き刺さるような刺激のなかにも、高級木材の暖かみがあり、 ___(===) ( ⌒) ) . . こんな素晴らしい木馬をもらえる私は、きっと特別な存在なのだと感じました。 /\ `J  ̄`J ̄\ 今では、私がおじいちゃん。孫にあげるのはもちろん三角木馬。  ̄ ̄ ̄ ̄| | ̄ ̄ ̄ ̄ . なぜなら、 | | / \ 彼もまた特別な存在だからです。
>>981 ありがとうございます!
__iter__ かなるほど・・・。
>> 985 くだらね。
決まったファイルをバックアップしたいだけだから、わざわざプログラムにせんでも、 バッチファイルでいいじゃんと思ったら、今ではbatkeyすらないのね。 いつかはpythonで、GUIスキンでオプション設定できるのを書けるようになりたい。
>987 Windowsのバッチファイルでユーザ入力が欲しいってことなら SET /P 変数名=プロンプト文字列 で文字列が入力出来るが。
代替あるの知らなかった、指摘ありがとう。 HELP見たらいろいろ詰め込みすぎで、すごい難しくてdosの面影無くて驚いた。 変数受け取れるなら、バッチじゃなく普通のプログラム的に考えて使えそう。
新スレが自演臭いクソオタに占拠されている件。
Wii
Wii
iiW
WiiW
Weei
wWw
?
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。