Pythonのお勉強 Part15
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2006/11/12(日) 22:51:44http://www.python.jp/Zope/
Python オフィシャルサイト
http://www.python.org/
Python 2.5
http://www.python.org/download/releases/2.5/
IronPython
http://www.codeplex.com/Wiki/View.aspx?ProjectName=IronPython
まとめ wiki
http://www7a.biglobe.ne.jp/~yasozumi/python/wiki/
Pythonの入門書「みんなの Python」
http://www.amazon.co.jp/gp/product/479733665X/
Pythonのお勉強 Part14
http://pc8.2ch.net/test/read.cgi/tech/1161272096/
0352デフォルトの名無しさん
2006/11/23(木) 21:16:52愛の入力方法がわかりません。
とりあえず漢字・英語・平仮名・片仮名は試したんですが・・・
どうすればいいでしょうか?
0353デフォルトの名無しさん
2006/11/23(木) 21:19:10勉強して出直してらっしゃい。
0354デフォルトの名無しさん
2006/11/23(木) 21:29:13そういうときはコピペが基本だと思う
0355デフォルトの名無しさん
2006/11/23(木) 21:39:090356デフォルトの名無しさん
2006/11/24(金) 07:47:27どれをどう使えばいいんですか?
0357デフォルトの名無しさん
2006/11/24(金) 07:52:34チンコを使え
0358デフォルトの名無しさん
2006/11/24(金) 08:11:130359デフォルトの名無しさん
2006/11/24(金) 12:37:14ファイルオブジェクトと同様の write() メソッドがあるオブジェクトなら何でも可だと思われ。
0360Python初心者(復活)
2006/11/24(金) 12:41:25>冗談だったんだよ。
遅まきながら…wwwwwwwww
0361デフォルトの名無しさん
2006/11/24(金) 13:00:230362デフォルトの名無しさん
2006/11/24(金) 13:03:01・人に情けをかけておくと,巡り巡って結局は自分のためになる
・人に情けをかけて助けてやることは,結局はその人のためにならない
選ぶのは君だw
0363デフォルトの名無しさん
2006/11/24(金) 14:48:20勉強して出直してらっしゃい。
ふふふ。
0364デフォルトの名無しさん
2006/11/24(金) 14:56:030365デフォルトの名無しさん
2006/11/24(金) 15:09:550366デフォルトの名無しさん
2006/11/24(金) 15:15:57http://blog.livedoor.jp/dankogai/archives/50696206.html
この問題、もっとスマートに解決することはできないもんでしょうか?
0367デフォルトの名無しさん
2006/11/24(金) 15:25:46そもそも0x10000を超えるUnicode(滅多に使わないけど)の扱いが不完全なのが原因
おそらくPython 3000で解決する
0368デフォルトの名無しさん
2006/11/24(金) 15:27:060369デフォルトの名無しさん
2006/11/24(金) 15:30:06ちゃんとサポートされれば素晴らしいと思うが、今のところ必要としているのは
言語学者と京極夏彦くらいだろう。w
0370デフォルトの名無しさん
2006/11/24(金) 15:36:48ここは Perl に合わせるならこうだろうなあ。
import codecs, sys; sys.stdout = codecs.getwriter("utf-8")(sys.__stdout__)
0371デフォルトの名無しさん
2006/11/24(金) 16:17:07・site.pyに encoding = "utf-8" って書け
・unichr()でBMP外の文字使いたけりゃ--enable-unicode=ucs4 でconfigureしろ
って教えてあげたほうがいいのかな。
0372デフォルトの名無しさん
2006/11/24(金) 16:22:04>・site.pyに encoding = "utf-8" って書け
あわわわわ。
0373デフォルトの名無しさん
2006/11/24(金) 16:23:36>>> utf32chr(0x2A6B2)
u'¥U0002a6b2'
0374デフォルトの名無しさん
2006/11/24(金) 16:50:50http://www.python.jp/Zope/PyLog/PyLog/1164123776/1164341843/ [python.jp]
ここは、Lightweight Language(Perl,Python,Ruby,PHP)ユーザーを巻き込んで開催したいと思います。
0375デフォルトの名無しさん
2006/11/24(金) 18:46:24pythonのCGIHTTPServerのCGIの処理ってどうしてるんだろう?
同じCGIを複数の人がリクエスト出した場合内部でマルチスレッドで処理してるの?
それともキュー?
どこを見ればわかるの。
0376デフォルトの名無しさん
2006/11/24(金) 18:47:46ソースコード。
0377375
2006/11/24(金) 19:00:48% cat -n /usr/local/lib/python2.4/CGIHTTPServer.py | grep fork
6 If the os.fork() function is not present (e.g. on Windows),
43 have_fork = hasattr(os, 'fork')
128 if not (self.have_fork or self.have_popen2 or self.have_popen3):
204 if self.have_fork:
205 # Unix -- fork as we should
210 self.wfile.flush() # Always flush before forking
211 pid = os.fork()
0378デフォルトの名無しさん
2006/11/24(金) 19:03:260379デフォルトの名無しさん
2006/11/24(金) 21:13:490380デフォルトの名無しさん
2006/11/24(金) 22:39:38fctrl.flock()とfctrl.lockf()はファイルオブジェクトではなくファイル記述子を使うものであり、Unixでは使えるけどWindowsで使えるかは不明。
os.open()も第2引数でオプションフラグを指定できるみたいだけど、そのオプションフラグについてはマニュアルにも詳しいことは書いてないし、Windowsでは使えないみたい。
結局、どうすればいいんでしょうか。
0381デフォルトの名無しさん
2006/11/24(金) 22:42:120382デフォルトの名無しさん
2006/11/24(金) 22:56:21ちょうどdictのgetと同じようなものが、listにも欲しい。
>>> lst = [1,2,3]
>>> lst.get(4)
None
0383デフォルトの名無しさん
2006/11/24(金) 23:57:38悩みどころ。
あの領域の漢字は滅多に出会わないから
無駄な領域喰うのもあれだし、コンパイルし直すのも面倒だし。
さりとて使われるとうまくいかない。
0384デフォルトの名無しさん
2006/11/25(土) 01:12:37こんなことしたいの?
http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/65203
別に止めはしないが時間の無駄だと思うぞ。
0385デフォルトの名無しさん
2006/11/25(土) 01:17:34ないんじゃね?
必要ならlistを継承して作れるけど、可読性が下がる。
0386デフォルトの名無しさん
2006/11/25(土) 01:21:59みたいなことをPython入門(Pythonプログラミング)に書いてあった気がする
0387デフォルトの名無しさん
2006/11/25(土) 06:32:480388デフォルトの名無しさん
2006/11/25(土) 07:20:400389デフォルトの名無しさん
2006/11/25(土) 10:14:41MeCabの最新版とMeCab python bindingを落としてきて、MeCabをインストールして、
MeCab python bindingのsetup.pyは↓のページを参考に書き換えました。
http://www.atransia.co.jp/home/fukamachi/Diary/2006/01/15/
またpythonのバイナリは↓を利用しています。
http://www.python.jp/Zope/download/pythonjpdist
しかし、次のような出力が出てインストールできませんでした。
----ここから
running install
running build
running build_py
running build_ext
error: Python was built with version 6 of Visual Studio, and extensions need to
be built with the same version of the compiler, but it isn't installed.
-----ここまで
普段はVC++を使っているので、VS2003は入っているのですが、VC6は持っていません。
VC6無しにインストールすることってできるのでしょうか。
0390デフォルトの名無しさん
2006/11/25(土) 10:46:45かな?
試してないから分からんけど
マニュアル読んでみて
0391デフォルトの名無しさん
2006/11/25(土) 10:49:54MinGW 使えば本体が VC6 でも大丈夫だと思われ。
0392デフォルトの名無しさん
2006/11/25(土) 11:22:01あくまで一般論だが、プログラムとそれが依存するDLL
の両者がCランタイム(libc)に依存している場合、そのバージョン/変種は
一致していなければならない。
VC6のDLL版のCランタイムはMSVCRT.DLL、VC7.1(VS2003)ではMSVCR71.DLL
なので、当然まずいわけだ。
Pythonを自分でVS2003でビルドするか、いっそCygwin環境でも使うんだね。
0393389
2006/11/25(土) 12:28:30リンクがうまくいってない感じなんですが、コレはもうMecabのスレで聞いたほうがいいかな。
MeCab_wrap.cxxはコンパイル時にキャストミスしてたんで、無理やりキャストした。
0394389
2006/11/25(土) 12:33:43リンクがうまくいってない感じなんですが、コレはもうMecabのスレで聞いたほうがいいかな。
MeCab_wrap.cxxはコンパイル時にキャストミスしてたんで、無理やりキャストした。
0395デフォルトの名無しさん
2006/11/25(土) 17:37:44ctypes使ったやり方のほうが簡単だと思うよ。
ttp://kugutsushi.s12.xrea.com/blog/index.cgi?id=10
俺が試した環境はWinXp, ActivePython2.4+ctypesモジュール
0396デフォルトの名無しさん
2006/11/25(土) 21:08:29ZOPE関係者ってイタいな(wwww
0397デフォルトの名無しさん
2006/11/25(土) 22:29:260398デフォルトの名無しさん
2006/11/25(土) 22:43:240399デフォルトの名無しさん
2006/11/26(日) 00:00:09すぐにT-Shirtsを作るのはどうしてですか?
0400デフォルトの名無しさん
2006/11/26(日) 00:15:220401デフォルトの名無しさん
2006/11/26(日) 00:17:450402デフォルトの名無しさん
2006/11/26(日) 00:18:350403デフォルトの名無しさん
2006/11/26(日) 00:22:590404デフォルトの名無しさん
2006/11/26(日) 00:34:380405デフォルトの名無しさん
2006/11/26(日) 00:55:470406デフォルトの名無しさん
2006/11/26(日) 01:06:000407デフォルトの名無しさん
2006/11/26(日) 02:25:00dict.get()ではなくあくまでdict[]でアクセスしたうえで、KeyErrorのかわりにNoneが返されるようにしたいです。
d = {}
d.__getitem__ = d.get
としてみましたが
AttributeError: 'dict' object attribute '__getitem__' is read-only
とのことで、dictのメソッドは変更できないみたいです。
0408デフォルトの名無しさん
2006/11/26(日) 02:27:030409デフォルトの名無しさん
2006/11/26(日) 03:09:100410デフォルトの名無しさん
2006/11/26(日) 03:39:000411デフォルトの名無しさん
2006/11/26(日) 03:57:22def __getitem__(self,a):
return self.get(a)
でそれっぽい動きしてる気がする。けど、あまりお勧めしたくない感じ・・・
0412デフォルトの名無しさん
2006/11/26(日) 03:58:31dictを継承したクラスを作って使うことはできる。
分かりやすく書くなら、
class MyDict(dict):
def __getitem__(self, k):
return self.get(k)
もしくは、↓でも同様。
class MyDict2(dict):
__getitem__ = dict.get
dictのデフォルトの動作そのものを変えられるわけではないので、
ご期待には添えないかもしれませんが、
使うときは、こんな感じになるでしょう。
>>> MyDict({'x':2})
{'x': 2}
>>> x = MyDict(a=1, b=2)
>>> x
{'a': 1, 'b': 2}
>>> print x["a"], x["b"], x["c"]
1 2 None
こんなんでどうでしょうか。
0413デフォルトの名無しさん
2006/11/26(日) 07:10:59のでしょうか?
https://www.livly.com/login.php
http://d.hatena.ne.jp/kenkitii/20060216/p1 を見ながら色々試して
みたのですがうまくいきません。ご教示お願いできないでしょうか。
よろしくお願いします。
0414デフォルトの名無しさん
2006/11/26(日) 09:45:500415デフォルトの名無しさん
2006/11/26(日) 09:50:04data = urlencode((("nname","名前"),("password","パスワード"),("login","true")))
print urlopen("https://www.livly.com/login.php",data).read()
*名前を全角で登録してる場合文字コード注意
0416デフォルトの名無しさん
2006/11/26(日) 10:06:41この手のビジネスとしては極端に成功した例らしいと言う記事をどこかで読んだ・・・
0417デフォルトの名無しさん
2006/11/26(日) 17:26:58ttp://okwave.jp/qa2201618.html
このページの通り設定したのですがプロントが
C:\DOCUME~1\USER\MYDOCU~1>
見たいな感じでおかしなままです。
対話形式(>>>ってでるやつ)にもなりません
pythonのフルパスから実行すると普通に実行できるのですが
直せるものなら直したいです ><
0418デフォルトの名無しさん
2006/11/26(日) 17:40:10edlinを起動しても、そうなるな。
0419デフォルトの名無しさん
2006/11/26(日) 18:52:42command.com じゃなくて cmd.exe 使えば?
98とかそれ以前はシラネ
0421デフォルトの名無しさん
2006/11/26(日) 20:10:400422417
2006/11/26(日) 21:12:07しかもexeなのに24バイトでブツブツ.......
お騒がせしました(^ ^;)ゞ
0423413
2006/11/26(日) 23:05:33ありがとうございました。ただ、教えて頂いた方法でPythonからログインする
事はできたのですが、根本的な問題は解決できませんでした(泣 もしよろし
ければなのですが、ソースをアップしたら、見ていただけますでしょうか?
48KB・2000行弱なんですけど・・・どうかお願いしますです。
0424デフォルトの名無しさん
2006/11/27(月) 00:55:300425413
2006/11/27(月) 02:07:03を開くと販売しているアイテム・島が表示されたのですが、先日からログイン
していないと「ログインしてください」と表示されるようになってしまい、
パースしてアイテム・島を拾う事ができなくなってしまいました。更に、
ブラウザからlivlyにログインしても、Pythonからだと「ログインしてください」
になってしまいます。
そこで、Pythonからログインしておけば回避できるかな?と思い、こちらで
教えて頂きログインしてみたのですが結果は同じでした。cookieの管理が
云々ってサイトを見てPython2.3から2.5に変更しcookielibを操作しようと
思ったのですが、やり方がイマイチわからなくて・・・
0426デフォルトの名無しさん
2006/11/27(月) 02:26:05アカウント持ってないとテストできないようなプログラムをアップされても見てくれる
奇特な人は少ないと思う。
0427413
2006/11/27(月) 02:50:142週間程度cookieの管理と格闘していながら理解できないヘタレです。すみません。
一応、テスト用のアカウントは作成してあります。テストできる環境の準備は
整えてありますので、見て頂ける方おりますでしょうかm(_ _;)m
0428デフォルトの名無しさん
2006/11/27(月) 04:03:41氏ねばいいと思うよ
0429デフォルトの名無しさん
2006/11/27(月) 06:57:590430デフォルトの名無しさん
2006/11/27(月) 07:39:45import urllib, urllib2, cookielib
j = cookielib.CookieJar()
opener = urllib2.build_opener(HTTPCookieProcessor(j))
opener.open("https://www.livly.com/login.php",data=urllib.urlencode((("nname","名前"),("password","パスワード"),("login","true"))))
#ここでjにcookieが入る。print jで確認可能
req = urllib2.Request("http://www.livly.com/myshop?rid=3dKu")
j.add_cookie_header(req)
#これでreqのヘッダーに必要なクッキーが書き込まれる。req.header_items()で確認可能
print opener.open(req).read()
#毎回本家からクッキーを取ってくるのがアホくさいと思うなら、FileCookieJarという選択肢も可能
0431413
2006/11/27(月) 08:34:11多少書き換えてしまいましたけどできました。ありがとうございました。
これでこのまま寝ずに仕事してもへこたれません。感謝ですm(_ _)m
0432デフォルトの名無しさん
2006/11/27(月) 11:13:43どうしてここに引け目を感じているような書き方なのか理解出来ない。
0433デフォルトの名無しさん
2006/11/27(月) 11:49:31多少書き換えたものを晒しておけば、誰かの肥やしになるかもしれん。
0434デフォルトの名無しさん
2006/11/27(月) 14:10:03数値A":" リストの内容 "文字列="数値B "文字列="数値C
っていう風に出力したいんだけど、どうすればいいの?
0435デフォルトの名無しさん
2006/11/27(月) 14:36:260436434
2006/11/27(月) 14:39:40print str(strA) + ": " + str(array[0:4]) + " aaa=" + str(strB) + "ccc=" + str(strC)
としました。※len(array) = 4
0437434
2006/11/27(月) 14:41:48print str(intA) + ": " + str(array[0:4]) + " aaa=" + str(intB) + "ccc=" + str(intC)
0438デフォルトの名無しさん
2006/11/27(月) 14:42:09%s数値やリストも勝手に文字列表記に変換してくれます。
http://www.python.jp/doc/release/lib/typesseq-strings.html
0441デフォルトの名無しさん
2006/11/27(月) 15:03:050442デフォルトの名無しさん
2006/11/27(月) 15:06:59後ろの変数リストを指で数えたりすることない?
0443デフォルトの名無しさん
2006/11/27(月) 15:19:41"%(変数名)s" % locals() はどうだろう
0444デフォルトの名無しさん
2006/11/27(月) 15:21:07安すぎ。もらわない方がマシ。
>>442
そういうときは辞書を渡す。
http://www.python.jp/doc/release/lib/typesseq-strings.html
のまんなからへん。
>>> print '%(language)s has %(#)03d quote types.' % {'language': "Python", "#": 2}
Python has 002 quote types.
0445デフォルトの名無しさん
2006/11/27(月) 15:43:24つ●○○
0446デフォルトの名無しさん
2006/11/27(月) 17:04:050447デフォルトの名無しさん
2006/11/27(月) 17:30:26ドカタ価格。
0448413
2006/11/27(月) 20:10:49-中略-
urllib._urlopener = ShopURLopener()
j = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(j))
data = urllib.urlencode((("nname","名前"),("password","パス"),("login","true")))
opener.open("https://www.livly.com/login.php",data)
#リクエストurlは他defで指定
req = urllib2.Request(url)
try:
data = opener.open(req)
except:
print "失敗"
return 0
教えて頂いたソースが最初動かなくて、こんな感じで動きました。その後、
脱字に気が付いて教えて頂いたソースでもちゃんと動きました。書き換える
必要は全くなかったです。ありがとうございました。
0449デフォルトの名無しさん
2006/11/28(火) 01:26:07a=u'ちんちん'
b=u'おっき'
print a+b*2
0450デフォルトの名無しさん
2006/11/28(火) 02:19:16結果は!
0451デフォルトの名無しさん
2006/11/28(火) 02:20:50■ このスレッドは過去ログ倉庫に格納されています