[表示 : 全て 最新50 1-99 101- 201- 2chのread.cgiへ]
Update time : 04/05 09:07 / Filesize : 54 KB / Number-of Response : 245
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

くだすれPython(超初心者用) その2



1 名前:デフォルトの名無しさん mailto:sage [2008/08/08(金) 09:24:54 ]
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、
お礼は Python の布教と初心者の救済をお願いします。

前スレ
くだすれPython(超初心者用)
pc11.2ch.net/test/read.cgi/tech/1207878910/

関連スレ
Pythonのお勉強 Part 28
pc11.2ch.net/test/read.cgi/tech/1217836194/

86 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 00:29:44 ]
そうだな
角電池くらい入れられるようにならないとな

87 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 00:35:14 ]
>>85
今回もキャバクラ行くんだろうな
今からキャバクラ芸を練習しておくことにするよ

88 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 00:39:38 ]
書籍が売れなかった件についても反省して欲しいな(ww

89 名前:デフォルトの名無しさん [2008/09/03(水) 00:47:18 ]
書籍は大量に売れたよ。品切れになるぐらい。

90 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 00:48:28 ]
>>86
勝手に疎外感を感じてしまいがちなボクチムは
寂しい気持ちを慰めるためにキャバクラに通います
最近はお金がないので,もっぱらイケメンのあの人を思い浮かべながら
単三電池や角電池で自分を慰めているかもしれません

そんな毎日なのでずっと万年厨房の日陰者です

91 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 01:26:07 ]
どんな負け犬合宿だよ(wwWwwWwwww

92 名前:デフォルトの名無しさん [2008/09/03(水) 13:45:31 ]
口だけ立派でたいしたこともできない上
すぐキレるような奴はいらないから今すぐ消えて欲しい

93 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 15:26:28 ]
optparseでdefault値を設定したとき、例えば

parser.add_option("-w", "--width", dest="width", default=100,
help = "Width of output image (default is 100)")

などとやることを考えます。
このときdefault=100と指定しているのにも関わらず、
helpの説明にdefaultが幾つかを手で書かないといけません。
これを自動化させるような方法はoptparseの標準機能では存在しないでしょうか。


94 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 15:28:48 ]
%default



95 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 17:46:07 ]
Windowsのコマンドプロンプトで実行する場合、
input(u"日本語文字列")ってすると文字化けします。
明示的にコマンドプロンプトの文字コード(cp932とか)にエンコードしないと駄目なんでしょうか?


96 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 17:49:06 ]
>>95
環境に合わせて自動的に決定されるようにできるよ

97 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 17:54:35 ]
>>96
ご回答ありがとうございます。
もうちょっと調べてみます。

98 名前:デフォルトの名無しさん mailto:sage [2008/09/03(水) 23:18:04 ]
>>89
>書籍は大量に売れたよ。品切れになるぐらい。

どの本だよ(wwWwwWwwwwwWWwwwWwwww

99 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 01:26:23 ]
grassで返答するのはやめろ

100 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 02:12:50 ]
売れない書籍の関係者乙(wwwWwwwWWwwWwwWwWwww

101 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 12:15:01 ]
>>84
>そういえば、日本のPythonコミュニティをどうこうするとか息巻いて玉砕してた人たちがいたよな
>>85
>python温泉はレベル高いから遠慮しておいたほうがいいな

どこの中二病だよ(wwwwwwwwwwwwwwwwwwwwwwwww
Pythonはじまったな(wwwwwwwwwww

102 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 16:53:38 ]
pylonsとTurboGearsとDjangoってどれが一番初心者向けですか?

103 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 22:52:49 ]
twisted

104 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 23:34:38 ]
pylonsとTurboGearsとDjangoとtwistedってどれが中二病っぽいですか?



105 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 23:49:01 ]
hpricot

106 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 01:36:48 ]
pylonsとTurboGearsとDjangoとtwistedとhpricotってどれが邪鬼眼っぽいですか?

107 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 02:03:20 ]
pylonsとTurboGearsとDjangoとtwistedとhpricotとGrokってどれが日本のPythonコミュニティをどうこうするとか息巻いて玉砕してた人たちっぽいですか?

108 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 05:43:51 ]
>>107

109 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 08:09:43 ]
>>107
>>107
>>107
>>107
>>107
>>107
>>107

110 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 09:04:57 ]
pylonsとTurboGearsとDjangoとtwistedとhpricotとGrokとweb.pyってどれが日本のPythonコミュニティをどうこうするとか息巻いて玉砕してたくせに結局できたのは傷をなめ合うだけの引きこもりオナニー集団だけだったのですねおまえらいらないからPHPでもやってろよ。


111 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 09:57:38 ]
PHPはないだろ
あるとすれば ocaml とか

112 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 10:10:15 ]
>>110
>>110
>>110
>>110
>>110
>>110
>>110
>>110
>>110
>>110
>>110


113 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 10:44:49 ]
boost.python つかったら std::vector<myclass> みたいなのが
さっくりと python から扱えるようになる?

114 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 12:28:04 ]
またPHP厨か



115 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 13:09:44 ]
>>110
以下の一文を適宜付け加えておいてくれ

自分の能力のなさを棚に上げて他人を逆恨みする

116 名前:デフォルトの名無しさん [2008/09/05(金) 22:08:05 ]
翻訳ドキュメントの読み方のコツを教えてください。
javaのドキュメントのようには、なかなかクラスとメソッドの関係とかが
分かりません。


117 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 22:36:14 ]
pydocと併用するとか、対話モードで動かしながら読むとか

118 名前:デフォルトの名無しさん [2008/09/05(金) 23:43:57 ]
これは便利ですね。はじめて知りましたpydoc
さすがに親クラスとかパッケージに含まれるクラスにリンクで飛ぶようなことは
出来ないですよね?それが出来れば最高なんですけど

119 名前:デフォルトの名無しさん [2008/09/05(金) 23:45:48 ]
i = 1

iに1加える場合

i = i + 1

よりも簡単な方法ってないですか?

120 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 23:47:53 ]
i+=1

121 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 00:11:32 ]
>>118
pydoc.org/2.5.1/
epydoc.sourceforge.net/stdlib/

122 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 00:50:29 ]
>>120
それ、あんま好きになれん。
結局iは+1した値を指しなおすわけで全くの構文糖てのが。

123 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 01:33:33 ]
>>122
pythonで数字は普遍性を持つので
CPUにとっての「簡単な方法」を追求するなら
CやPerlなどの「純粋」手続き型言語を選択すべき。

124 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 01:51:25 ]
>>122
pythonの場合はintがimmutableだから仕方が無いんだろう

__add__()と__iadd__()は別物だから、mutableなobjectに関しては、
C++と同じように+と+=は別物として定義できるし
一般には後者のほうが効率がいいわな



125 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 02:08:44 ]
>>124
__iadd__()って別個にあるんだな。しらんかった。

126 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 03:31:06 ]
immutableなくせにmutableのフリをしやがってプンプン

127 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 04:19:04 ]
いま PyDev 使っているんですがUSBメモリに入れて持ち歩ける開発環境を探しています。
エディタでおすすめはなんでしょうか??

128 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 04:22:51 ]
emacs

129 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 04:43:17 ]
>>128
Windows なんですけど、Meadow とかすか?
できれば 22 系の情報キボンヌ

130 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 05:22:03 ]
widowsならpyscripterでも入れとけよ

131 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 05:26:18 ]
そのままJRE+Eclipseでいいんじゃないの?
うまくcmdファイルを書けばいけるよたぶん。
ドライブレター固定もわざわざディスクの管理でせずに
substで回避するとかで。(ダブってるとダメだけど)

132 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 08:08:38 ]
pyscripterよさそう。
しかし!
よく考えたらそもそも Python 自体をどうやって持ち歩くんだ?
C:\Python25 以下をごそっとコピーしただけでいいんだろうか?
だけどたしかその位置(C:\Python25)ってレジストリに
登録されてるんだよなぁ。

133 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 09:44:10 ]
レジストリはsys.pathの初期化に使うだけ
なくても動く
C:\Python2Xをそのままコピーすればおk

134 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 15:35:04 ]
質問です。cat(引数はつけない)のつもりで以下のスクリプトを書きました。

import sys
for line in sys.stdin: print line,

コンソールから実行してみると、入力して改行しても出力されません。
そこでwhileとreadline()を使って、

import sys
line = sys.stdin..readline()
while line:
print line,
line = sys.stdin.readline()

のように書き直しました。これで望む結果は得られたものの、どうもいまひとつです。
もっとスマートな方法があれば教えてください。よろしくお願いします。



135 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 15:36:31 ]
すいません、インデント崩れました。

import sys
line = sys.stdin..readline()
while line:
 print line,
 line = sys.stdin.readline()

136 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 16:11:05 ]
forループは先読みバッファを使うらしいね
下のと同じ意味で
for line in iter(sys.stdin.readline, ""): print line,

137 名前:デフォルトの名無しさん mailto:sage [2008/09/07(日) 16:26:01 ]
レスありがとうございます。どうもそのようですね。
独自のバッファを使うことを意識しておかないと。

結局、whileループを

while True:
 line = sys.stdin.readline()
 if not line: break
 print line,

と書き直すことで解決しました。今後はこっちを使うことにします。

138 名前:今日の日記 mailto:sage [2008/09/08(月) 01:49:32 ]
__setattr__()メソッドが再帰的に呼び出されないように、
このメソッドの中では

object.__setattr__(self, name, value)

という形式で値を代入するらしいけど、この"object"ってなによ????( ;´Д`)

自分の参考書には

class MyClass(object):

ってクラスの()の中に1箇所だけ記述されてるんだけど、
これって"継承"してるってこと???objectは基底クラスってこと?
objectはどこに定義してあるのよ?おれはしてないよww

( ´Д`)

( ´Д`)

( ;´Д`)

寝る

139 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 01:52:48 ]
俺のPython勉強日記
pc11.2ch.net/test/read.cgi/tech/1220604777/

140 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 08:11:18 ]
>>138
まともな入門書嫁。

141 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 09:13:05 ]
class hoge(object):
  def __setattr__(self,method,value):
    self.__dict__[method] = value

self.method = value
とするとself.methodの時点で
__setattr__の条件を満たしてしまい
永久ループに突入してしまうので、
オブジェクトのディクショナリを参照し、
そこに代入する形を取る。

142 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 09:19:00 ]
うそを書くなよ。上のコードは動作しないぞ、気をつけろ!

143 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 09:57:31 ]
>>142
ありがとうございます
危うく嘘を覚えるところでした ( ;´Д`)

引き続き解説募集中です (^o^)

144 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 13:16:45 ]
とりあえず、object は基底クラスで、
class MyClass(object):...
は object を継承してる。



145 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 23:55:24 ]
def main():
 なにか
if __name__ == '__main__':
 main()

という形式を見かけたんですかなぜこのようにしているのでしょうか?

146 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 23:57:45 ]
スクリプト起動したときに
必ずmain関数が動いてほしい、という時の為のおまじない。

147 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 00:04:58 ]
>>145
docs.python.org/tut/node8.html#SECTION008110000000000000000

148 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 00:05:54 ]
知らん

149 名前:145 mailto:sage [2008/09/09(火) 00:10:05 ]
>>147
英語サイト貼ってんじゃねぇよ屑

150 名前:デフォルトの名無しさん [2008/09/09(火) 00:13:34 ]
>>147
ありがとうございます
よくわかりました

151 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 00:33:31 ]
やっぱりわかりません

152 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 00:56:48 ]
>>145
モジュールとしてして利用するとmainは実行されない。
単体で実行するとmainが実行される。
たいがいはテスト目的かな。

153 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 01:29:17 ]
importするとそのスクリプトが実行されるという基本的なことを
説明してあげないと

154 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 01:47:41 ]
__name__にはモジュール名が入る。
import sys
print(sys.__name__)
とやると'sys'が戻る。
でトップレベルで実行(自分自身を実行)
すると'__main__'になる。
そのため、__name__ = '__main__'が成りたつ場合
自分自身が実行された、ということがわかるため、
その後にmain関数だのを列挙しておけば実行される



155 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 02:00:07 ]
おいおい嘘教えるなよ。それはまったくのでたらめだろ
importの内容について語るかと思ったら嘘張られるとは

156 名前:デフォルトの名無しさん [2008/09/09(火) 03:43:02 ]
ひどいスレだ・・・

157 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 08:58:29 ]
でたらめが多すぎる・・・

158 名前:デフォルトの名無しさん [2008/09/09(火) 09:56:15 ]
そもそもPythonて言語自体が怪しくなってくる

159 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 10:19:00 ]
>>158
詳しく

160 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 10:42:59 ]
自己解決しました

161 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 13:22:27 ]
入門書嫁

162 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 23:34:57 ]
import urllib
print urllib.urlopen("http:example.com").info()

info()って一部のヘッダー情報しか出力しないよね?
httpステータス(200とか)をurllibで取得することってできますか?

163 名前:デフォルトの名無しさん mailto:sage [2008/09/13(土) 00:06:51 ]
HTTPでinfo()にHTTPステータスが含まれないのはそういう仕様なんだろう。
urllib2か直接httplibをつかうしかないと思う。

164 名前:デフォルトの名無しさん mailto:sage [2008/09/13(土) 07:58:24 ]
>>163
なるほど。了解です。



165 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 00:48:05 ]
>>164
urllib2.urlopenの返してくるオブジェクトには、なぜかcodeってプロパティがあって
そこに200とかそのものずばり入ってる

166 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 11:00:51 ]
Python3.0に向けて皆さんが勉強していることってなんですか?
ソースビルドして動きを確かめるぐらい?

167 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 12:00:59 ]
ML,PEP,NEWS.txt

168 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 13:49:16 ]
Rubyに乗り換える準備をしている

169 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 13:50:45 ]
>>166
本家にあるマニュアルを眺める

170 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 13:51:27 ]
>>168
参考までに理由を教えて

171 名前:162 mailto:sage [2008/09/15(月) 20:07:56 ]
>>165
まじっすかww自分urllibの方のコード必死に潜ってましたww

クラスURLOpenerのhttp_openメソッドでhttpステータスが入った変数errcodeが
if文の分岐に使われてるのを見つけたんですが、
どうやってアクセスするのが良いか悩んでたとこだったんです。。

助かります。ありがとうございました。



172 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 14:18:43 ]
def f( *arg ):
  print arg

p = None
f(p)

f()のargを空タプルにしたい場合、
変数pへはどんな値を代入すればいいでしょう??

ちなみに、上の場合は
(None,)
となってしまいます。。

173 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 14:29:52 ]
引数無しで f()

174 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 14:36:01 ]
p = ()
f(*p)



175 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 14:37:30 ]
f(*p)
と書くべきじゃないの

176 名前:シベリアよりのお手紙 mailto:sage [2008/09/21(日) 08:14:33 ]
今、windows xpでpython3000を勉強しています。

ハードディスクにあるファイルを、更新日の新しいものだけUSBメモリにコピーするという
スクリプトを書いたのですが、大きなファイルをコピーするとファイルの断片化がひどいです。
Explorerのコピーのように一旦連続した領域を確保してからそこにコピーというような処理は
書けないでしょうか?

ついでの質問ですが、比較関数を指定したlistのsortはどうやるんですか?
# Rubyでいうとこの、ary.sort{|a,b| a <=> b } みたいなやつです。
動作効率向上のために機能を削ったとかいうのは、メーリングリストで見かけましたが
全く方法がないと言うことはないと思うのですが。

177 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 09:01:19 ]
後半については

L = ['one', 'two', 'three', 'four']
L.sort(cmp = lambda a, b: len(a) - len(b)) # 文字数で昇順ソート

大抵の場合はkey指定で間に合うと思うけどね
(上の例の場合、L.sort(key = len)

178 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 09:25:32 ]
>>176
ファイルを扱う側からすれば領域が連続するかしないかなんてどうでもいい話だから
どうしてもやりたいならボリュームを直接開いてファイルシステムを直接いじることになるんじゃないの?
explorer云々が本当ならどんなことしてるかスパイツール使って調べてみればいい

179 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 09:41:09 ]
常套手段として前半は
低レベルI/Oでファイルサイズ分lseek()して空write()かな。
モダンなOS・FSならこれでヒントになるとおもう。
py3kで実現できるかは試してないから不明。

180 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 22:40:40 ]
xyzzyってエディタではTabによる空白を空ける事が出来ないんですが
解決方法もしくは他にオススメのエディタがあったら教えていただけませんか

181 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 22:49:54 ]
C-q TAB

182 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 23:11:52 ]
有難うございます!

183 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 07:16:22 ]
mod_python + publisher handler はじめて使った。
こんなに簡単に書けてしまっていいのだろうか…


184 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 23:07:38 ]
Pythonの問題集っぽいのが欲しいです
一度学習した事のチェックがしたいんです



185 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 23:17:11 ]
なにを求めてるんだか知らんけどな
www.pythonchallenge.com/
projecteuler.net/
ja.doukaku.org/

186 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 23:27:22 ]
他言語の宿題スレの問題をPythonでやるとか

187 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 01:51:04 ]
>>185
うおあありがとう

>>186
なるほど

188 名前:176 mailto:sage [2008/09/23(火) 08:48:59 ]
>>179
断片化に関してはだいぶよくなったような感じがします。
ですが、挙動が思ってたものと違うようで、lseekしてからwriteすると
パッとそのサイズのファイルができるのではなくて、ファイル先頭から
順次\x00を書き込んでいってるような感じでした。なので全体の書き込み速度は半分に。
178氏の言うように、近いうちにexplorerの挙動を調べてみたいと思います。
分かったとしても、Cで拡張ライブラリ書くことになるのかなぁ。

>>177
Python 3.0b3 (r30b3:66303, Sep 8 2008, 14:01:02) [MSC v.1500 32 bit (Intel)] on win32
>>> L = ['one', 'two', 'three', 'four']
>>> L.sort(cmp = lambda a, b: len(a) - len(b)) # 文字数で昇順ソート
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'cmp' is an invalid keyword argument for this function

cmpは動かないようです。L.sort(key = len) なら動きます。
python3000の啓蒙サイトでもcmpを使ったコードがあったんですけど動かないのはうちだけ?


189 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 09:37:08 ]
if id == 1: ... とかいうコードを書いてひどい目にあった
おまいらも気をつけろよ

というか組み込み関数だけでも色分けしてくれるエディタを使うべきか

190 名前:189 mailto:sage [2008/09/23(火) 09:58:03 ]
import __builtin__; print '\n'.join(dir(__builtin__)) で自己解決

191 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 10:03:43 ]
>188
Python3000ではcmpパラメータは撤去されたらしい。すまんかった。

ttp://www.python.org/dev/peps/pep-3100/
>list.sort() and builtin.sorted() methods: eliminate cmp parameter

192 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 12:37:43 ]
>>188
Windows上ではfile.truncateでファイルサイズ増やせる
後はctypesでCopyFileW,SHFileOperationWあたりを使ってみるとか

193 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 21:40:39 ]
ttp://www.python.jp/Zope/intro/
ここのpycgi.cgiの中にtest.cgiって書いてあるけどこれらは同じじゃないと
動きませんよね?

194 名前:デフォルトの名無しさん mailto:sage [2008/09/24(水) 22:18:25 ]
そうだね。
8年前の記事なんて誰も読まないから気付かなかったんだろう。



195 名前:193 mailto:sage [2008/09/24(水) 23:45:58 ]
>>194 やっぱりそうなんですね。1日悩みましたが解決して先へ進めそうです。
もし中の人がいたら修正お願いします、私みたいな初心者がつまずかないために。

196 名前:デフォルトの名無しさん [2008/09/27(土) 11:25:25 ]
Python で作ったデーモンっぽいツールに
(と言ってもログ監視とかその程度だけど)
ちょっとしたウェブインターフェイスを付けたいと思っています。
こういう目的で使える HTTP を扱うモジュールってありますか?

www.athana.org/
なんかは単体のウェブサーバだし・・

197 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 12:14:53 ]
>>196
www.python.jp/doc/release/lib/internet.html

198 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 19:32:50 ]
PyHP

199 名前:デフォルトの名無しさん [2008/09/28(日) 21:39:05 ]
urllib の pathname2url を使って
C:\cygwin\usr\local\bin\sandbox.py
を変換すると
/C|/cygwin/usr/local/bin/sandbox.py
になります。
ドライブレターの後続の : が | になっています。

実際にはこれを URL として使おうとすると
file:///C%7c/cygwin/usr/local/bin/sandbox.py
となります。たしかに IE も含めてこのURLで
ローカルファイルシステムのファイルを開くことができます。

: ではなく | を使う理由は、初期のNetscapeで : の
代替として | が使われていた(しかも RFC に反して
%エンコードの対象から外されていた)という以外に
何か理由があるのでしょうか?

また、
file:///C%7c/cygwin/usr/local/bin/sandbox.py

file:///C:/cygwin/usr/local/bin/sandbox.py
のいずれが正規形なのでしょうか?



200 名前:デフォルトの名無しさん mailto:sage [2008/09/28(日) 22:15:10 ]
スレ違いのような気もするが、Wikipediaによると次の理由があったのらしい。
the original URL syntax とやらの出典がないので真偽は不明。
en.wikipedia.org/wiki/File_URI_scheme
> On MS Windows systems, the normal colon (:) after a device letter has sometimes been
> replaced by a vertical bar (|) in file URLs. For example, to refer to file FOO.BAR in the
> top level directory of the C disk, the URL file:///C|/FOO.BAR was used. This reflected
> the original URL syntax, which made the colon a reserved character in a path part.

201 名前:デフォルトの名無しさん mailto:sage [2008/09/28(日) 22:23:13 ]
RFC1738を見る限りでは使えそうなんだがな

202 名前:デフォルトの名無しさん [2008/09/28(日) 22:23:45 ]
パスを構成する要素として使える文字 pchar の定義が
RFC2396 から RFC 3986 で増えているのもそれに関連しているのかも。

RFC2396 "-" / "_" / "." / "!" / "~" / "*" / "'" / "(" / ")"
RFC3986 ではそれに加えて /"&" / "$" / "+" / "," / ";" / "=" / ":" / "@"

ただ、RFC2396の時点でも既に | は含まれてないんだよな…
たとえ : の代わりに | を使ったとしても %エンコードしなきゃ
いけないことには変わりないんだけど、ネスケはそれを無視してたらしい。

「the URL file:///C|/FOO.BAR was used」ってことで今は
file:///C:/FOO.BAR でいいわけで、なんで urllib では
そうなってないんだろうな、と疑問に思った次第。

203 名前:デフォルトの名無しさん [2008/09/28(日) 22:59:54 ]
あ、いや、そういうことが言いたいんじゃなかった。

ドキュメントには「urllib.pathname2url() は urllib.quote()
処理された結果が返る」って書いてあるのに「|」が
urllib.quote() 処理されてないじゃん、ってことが言いたかった。
バグじゃねぇ?って思ったんだけど、仕様なのかね。

204 名前:デフォルトの名無しさん [2008/09/28(日) 23:02:04 ]
C:\cygwin\usr\local\bin\sand~box.py



///C|/cygwin/usr/local/bin/sand%7Ebox.py

に返還されるので ~ はエスケープ処理されるんだ。
まぁ昔のNetscapeに合わせた仕様ということなんだろう。
とはいえ RFC3986 に準拠したい自分にとっては気持ち悪い。
再度 urllib.quote() かけると % が二重にエンコードされちゃうし。



205 名前:デフォルトの名無しさん [2008/09/28(日) 23:20:04 ]
urllib のコードを読んでみた。
なんのことはない、urllib.quote() は RFC3986 ではなく
RFC2396 の reserved をエンコードしているだけ。
ただし "/" は引数 safe のデフォルト値なので除く。
で、そのreservedは何かというと

RFC2396 reserved = ;/?@&=+$,
RFC3986 reserved = :/?@&=+$,#[]!'()*;


206 名前:デフォルトの名無しさん [2008/09/29(月) 00:09:14 ]
www8.uploader.jp/user/vipprog/images/vipprog_uljp00555.txt

207 名前:デフォルトの名無しさん [2008/09/29(月) 11:39:14 ]
組込み関数property()と
メソッド__getattr__()、__setattr__()、__delattr__()って

どっちか一方があれば事足りるような気もするんですが、
何が違うんでしょう??






208 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 12:24:32 ]
>>207
__???attr__ は動的なプロパティに使えて柔軟。
propertyは用途が制限されている変わりに、単純にクラスにプロパティを追加したいだけなら楽に書ける。

209 名前:207 [2008/09/29(月) 13:04:42 ]
なるほどぉ〜。そういう亊ですね。
ありがとうございます。

210 名前:デフォルトの名無しさん [2008/09/30(火) 03:45:11 ]
winでscapy使ってる人います?
キャプチャしたパケットをpdf表示するのにTeXが必要なんだけど
MiKTeXだと上手くいくけど
pLaTeX2eだとdvi出力でタイムアウトしてしまいます。

ちょっとソースみてみたところ、PyXのtext.texrunnerでexpextのパターン指定がないせいで
TeXプロンプトが表示される前に入力を流し込んでるっぽい。

expextにどんなパターンを渡すかってとこで、なんだかわからずお手上げです。

まぁMiKTeX使えばいいんですけど
せっかくTeXなんていう巨大なシステム入れるなら
日本語も使えるようにしたいっす。

211 名前:デフォルトの名無しさん [2008/10/01(水) 15:21:52 ]
global b
a = 'a desu'
b = 'b desu'

def a_print():
 print a
 return

def b_print():
 print b
 return

class c(object):
 def a(self):
  print a
 def b(self):
  print b

print 'a printed!\n'
a_print()
print 'b printed!\n'
b_print()
x = c()
print 'class-a printed!\n'
x.a()
print 'class-b printed!\n'
x.b()
exit()


グローバル変数って何なの?意味ないの?

212 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 15:34:38 ]
def func1():
    x = 10
def func2():
    global x
    x = 20
x = 0
func1()
print "x =", x
func2()
print "x =", x

213 名前:デフォルトの名無しさん mailto:sage [2008/10/01(水) 15:48:34 ]
>>211
Pythonのglobal文は、global変数を定義するときじゃなくて
それを使うとき(正確には、global変数に代入するとき)に使うもんだぞ

global bってのは「bというグローバル変数を定義します」
じゃなくて
「このローカルスコープでbというグローバル変数に代入したいです」
という意味だ

なにもなしでローカルスコープで
b = 1
とか書いたら、単にローカルにbという変数が作られてしまうからな
Pythonでは

214 名前:デフォルトの名無しさん [2008/10/01(水) 23:43:37 ]
SimpleXMLRPCServerを使ってクライアントから送られたデータに
クライントのIPアドレスを付加して保存したいのですが,
アドレスはどのように得ればいいでしょうか?

class Server:
def __init__(self, port):
self.server=SimpleXMLRPCServer(('localhost', self.port))
self.server.register_instance(XMLRPCMethod)
self.server.servforever()

class XMLRPCMethod:
def __init__(self):
self.database=[]

def senddata(self, data): #引数が送るデータ
self.database.append((data, addr))
return True




215 名前:デフォルトの名無しさん mailto:sage [2008/10/02(木) 22:11:25 ]
>>214
普通に動かせばデフォルトでアクセスログがstderrに吐かれるみたい
あとハンドラにaddress_stringなるメンバもあるから使えるんじゃないかと

216 名前:デフォルトの名無しさん [2008/10/03(金) 00:01:56 ]
py2exe は VC7.1 でコンパイルされているようですが、
たとえば boost.python を使って VC9 でビルドした
DLL を使うような Python アプリケーションでも
py2exe が使えるものなのでしょうか?

異なるバージョンのランタイムを使うDLLが混在
していても問題ないものなのでしょうか?

boost.python をつかった Python アプリを
Linux から Windows に移植しようとしています。

217 名前:デフォルトの名無しさん [2008/10/03(金) 01:31:22 ]
configparser と optparse って、
こう、なんか、その、うまく連携してくれないものでしょうか?

218 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 04:53:11 ]
>>216
FILE*に触ってなければ異なるコンパイラでも動くはず
msvc7とmingw gccでは大丈夫だった

219 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 09:59:05 ]
GoogleのAndroidのアプリをPythonで作れませんよね?

220 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 14:15:17 ]
モジュールがあればなんでも出来る

221 名前:デフォルトの名無しさん [2008/10/03(金) 15:04:13 ]
2.6 ririisu

222 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 16:12:16 ]
ktkr?

223 名前:デフォルトの名無しさん [2008/10/03(金) 17:02:56 ]
CGIでクエリ文字列を参照したいんですが
環境変数「QUERY_STRING」にはどうやってアクセスすればいいんでしょ??

test.cgi?a=1&b2
の場合は
a=1&b2
を取得したいです。



224 名前:デフォルトの名無しさん [2008/10/03(金) 17:06:19 ]
>>223

import cgi
data = cgi.FieldStorage()
a = data.getfirst('a','')



225 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 17:07:34 ]
環境変数はos.environ

226 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 17:09:38 ]
WebProg板には、こんなスレッドもあるのだ
pc11.2ch.net/test/read.cgi/php/1163513344/

227 名前:223 mailto:sage [2008/10/04(土) 16:42:07 ]
>>224-226
ありがとうございます!助かりました!

>WebProg板には、こんなスレッドもあるのだ
>pc11.2ch.net/test/read.cgi/php/1163513344/
まさかこんなスレがあるとはw



228 名前:デフォルトの名無しさん [2008/10/05(日) 02:45:07 ]
デバッグってどうやってます?
emacsに慣れちゃってるんで,Meadowのgud-modeで
pdbを動かしたいんだけど,新規バッファに何も表示されず
"q"で終了するとした時に,今まで溜まってたのが表示される・・・
WinPdbは使いにくいんだよなぁ・・・


229 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 03:19:59 ]
PyScripter

230 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 04:00:09 ]
すいませんlinuxなんです

231 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 07:34:41 ]
eclipse + pyDevじゃだめ?

232 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 11:17:13 ]
すいませんlinuxなんです

233 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 11:41:00 ]
emacsじゃだめ?

234 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 11:47:01 ]
>>232
linuxでeclipse動くだろw



235 名前:デフォルトの名無しさん [2008/10/05(日) 12:03:50 ]
すいませんlinuxなんです

236 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 12:07:55 ]
あやしい部分で print すればいいよ。

237 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 12:20:29 ]
すいませんlinuxなんです

238 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 12:35:28 ]
すいませんほんとうはrubyなんです

239 名前:228 [2008/10/05(日) 13:25:39 ]
皆さんアドバイスありがとうございます!

>>229
これはすごいIDEですね!
こんなものがフリーで使えるとは・・・Python恐るべし!!
もう少し頑張ってみて,どうしようもなかったら乗り換えを検討します.

>>230
VMware上で試したんですけど,linuxのemacsだと問題ないんですよね〜

>>231
結構,定番っぽいですね

>>236
それならWinPDBの方がいいかなぁ

ちょっとググってみたら,NTEmacsで
同じ現象に陥っている人を発見!
ttp://mail.python.org/pipermail/python-mode/2005-January/000236.html
でも,特に情報なし・・・

バックグラウンドでpdbが動いていることは確かで
新規バッファに表示されないだけなので
もう少し調べてみようと思います.

240 名前:228 [2008/10/05(日) 13:33:09 ]
>>238
スレチですが,rubyも本家で配布しているelispでは
Meadowでrubydbが使えません.

ドライブ文字を含むパスを通すように,rubydb3x.elを修正する必要があります.

Meadowは少数派なのかなぁ・・・



241 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 14:18:08 ]
python 2.6 がリリースされていますが、 Psyco 1.6 は動作しますでしょうか?
本家にあるWindows用は2.5向けしかないようです。

242 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 14:22:06 ]
>>241
一般にCで実装されていてコンパイルが必要なライブラリのバイナリ配布物は
メジャーバージョンが違えば*全て*使えない

ソースからコンパイルすれば使える*可能性*はあるが、公式にサポートが
表明されていないなら、全て自己責任の世界

243 名前:241 mailto:sage [2008/10/05(日) 14:54:41 ]
>>242
ありがとうございます。
これから使ってみようと考えている初心者なんで、素直に2.6用のがでてくるのを待ちたいと思います。

244 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 17:37:40 ]
使ってみてエラー吐くか試すぐらいしてもいいんじゃね
でもpsycoで高速化される場面は限られるよ








[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<54KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef