[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 05/09 21:00 / Filesize : 205 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


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

Pythonのお勉強 Part23



1 名前:デフォルトの名無しさん mailto:sage [2008/01/23(水) 16:23:39 ]
Python オフィシャルサイト
www.python.org/
日本Pythonユーザ会
www.python.jp/Zope/
FrontPage - Pythonのお勉強
python.rdy.jp/
前スレ
pc11.2ch.net/test/read.cgi/tech/1196426978/

◆関連スレッド

Microsoft IronPython 1.0
pc11.2ch.net/test/read.cgi/tech/1157686822/
Python の宿題ここで答えます Part 1
pc11.2ch.net/test/read.cgi/tech/1153585095/
2ch検索: [python]
find.2ch.net/?BBS=ALL&TYPE=TITLE&STR=python

◆関連サイト

Python ドキュメント
www.python.jp/doc/release/
参考サイト - Pythonのお勉強
python.rdy.jp/wiki.cgi?page=%BB%B2%B9%CD%A5%B5%A5%A4%A5%C8

以上

164 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 22:16:25 ]
exportってVC++の方の話ですか?

165 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 22:21:04 ]
dumpbin.exe /exports test.dll で確認してみたら


166 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 22:29:42 ]
VC++でdll作るときはexportっての必要なんですね。
やってなかったので調べてみます。


167 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 23:59:26 ]
定時実行をスクリプト内でなんとかしたかったら
どんなのが楽ですか?

168 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 00:04:24 ]
>>159
うそーん。session管理くらい標準ライブラリで用意してほしいなあ。

>>160
>そういう用途ならRubyが向いてるよ
そういう用途ってどんな用途?PythonはCGIには向いてないってこと?

>>161
>その程度で躓くようなヤツはRubyを使った方がいいよ。
>絶対。断じて。
なんで逆切れしてんの?
その程度で逆切れするようなヤツは引きこもってた方がいいよ。
絶対。断じて。


169 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 00:04:55 ]
>167
「なんとか」をもーすこし具体的に頼む

170 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 00:05:53 ]
かんとか

171 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 00:13:39 ]
>>168
>その程度で逆切れするようなヤツは引きこもってた方がいいよ。
だからこのスレに引きこもってるんだろw
ヒッキー相手にマジレスカコワルイ

172 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 00:15:12 ]
おまら両方うるさいから、rubyスレでやれよ。
phpの件で荒れてるから、少しぐらい騒いでも大丈夫やろ。



173 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 00:41:48 ]
>>167
定時実行って時刻指定?インターバル指定?

import time, threading

def proc():
  while True:
    time.sleep(1)
    print 'aiueo'

threading.Thread(target=proc).start()


174 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 00:50:52 ]
>173

わかってると思うけど、
それだとprint文の実行時間により結果が不定になるので、
time.sleepの直前で次にwakeup timeを計算したほうがよい気がする。


175 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 09:21:25 ]
定時実行ってふつうは外部でcronを使うよね

176 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 10:18:26 ]
Timerとか使えばよくね?

177 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:00:51 ]
ctypesでCで作成した関数に構造体を渡す方法なんですが

struct user {
int id;
char name[20];
double average;
};
__declspec(dllexport) void __stdcall print_user(struct user u)
{
printf("id:%d\n", u.id);
printf("name:%s\n", u.name);
printf("average:%f\n", u.average);
}

print_userに構造体を渡すときにpython側で

from ctypes import *
lib = windll.LoadLibrary("test.dll")
class User(Structure):
_fields_ = [("no",c_int), ("name",c_char_p), ("average",c_double)]
u1 = User(10, "abcde", 83.5)
lib.print_user(u1)

とやると
ValueError: Procedure probably called with not enough arguments (16 bytes missing)
というエラーが出ます。
何が原因なのでしょうorz

178 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:21:54 ]
Cのuser構造体が計4+20+4=28バイトとかなのに
Pythonのu1は4+4+4=12バイト
なので16バイト足りないって怒られるということじゃない?
("name", c_char_p * 20) とかしたらどうだろう

179 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 11:24:00 ]
ああ間違えた。c_char * 20 かな

180 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 13:45:18 ]
>>168
161が本当にキレてるかどうかはわからないけど(俺は君の勘違いだと思う)、
逆ギレという言葉を選ぶということは、君は自分がキレてる自覚あるわけだよね。
要するに、君みたいにいきなりキレちゃう痛い人には、それなりに刺激のあるレスが返ってくるってことだよ。
あきらめな。

181 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 13:55:16 ]
煽るなw
半年ROMってろで済むだろw

182 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 14:33:40 ]
>>178
なるほど!ありがとう



183 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 15:23:28 ]
そういうとこが面倒なのでpyrexでラッパーを作ってしまう俺

184 名前:148 mailto:sage [2008/02/03(日) 17:42:02 ]
申し訳ございません
ぐぐってもみつかりません
教えていただけませんでしょうか
(´Д`;)、 コノトオリデス
   ノノZ乙

185 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 17:44:12 ]
ま、そんな時もあるさ
明日は違うさ

186 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 20:36:00 ]
pdb.doc pdb.py bdb.py あたりを読んでみれば?

187 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 04:14:52 ]
>>180
161本人乙
おまえの必死さは伝わった

188 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 08:51:32 ]
必死な人ほど必死の一語で切り抜けようとするらしいよ。

189 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 09:36:37 ]
オレ161だけど180とは別人だ。
オレとオマエの二人しかいない寂しい頭のキミに、
何を言っても無駄だろうけどね。

190 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 18:39:02 ]
つーかいつまでも反応する奴みんなうぜぇ

191 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 00:09:15 ]
>>161=180=188=189
1人4役乙
ひとりで4人分演じられる頭があれば、そりゃあ寂しくないだろうよ

192 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 00:19:38 ]
>>191

自分で証明してどうする(www
>オレとオマエの二人しかいない寂しい頭のキミに





193 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 05:54:06 ]
ここまで全部俺の自演

194 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 06:03:05 ]
>>192
その反応が君一人で頑張ってたことの証明になってるよ。

195 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 09:39:32 ]
>>194

>要するに、君みたいにいきなりキレちゃう痛い人には、それなりに刺激のあるレスが返ってくるってことだよ。

>オレとオマエの二人しかいない寂しい頭のキミに、
>何を言っても無駄だろうけどね。


196 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 10:12:19 ]
自分の脳内でしか意味を為さない引用は勘弁。
こじつけ設定くらい考えてから切り返してね。

197 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 10:27:53 ]
調子に乗って python でゲーム作ったけど、内容が肥大化するにつれ
実行速度がかなり厳しくなってきた俺が来ましたよ

参考までに
超基本的な事でRGBデータをどう持つのが一番早いか計測した結果。
早い順に
--------------
RGB = (R, G, B)
--------------
RGB = [R, G, B]
--------------
RGB = RGB_CLASS()
R, G, B = RGB.R, RGB.G, RGB.B
--------------
RGB = {"R":R, "G":G, "B":B}
R, G, B = RGB["R"], RGB["G"], RGB["B"]

クラスと辞書はどっちが早かったか覚えてないけど、ほとんど同じだった気がする

198 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 10:30:15 ]
>>197
つpsyco

199 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 10:30:36 ]
RGB = R << 16 | G << 8 | B
R, G, B = (RGB>>16)&255, (RGB>>8)&255, RGB&255
てのも考えたけど、各要素を取り出すのに必要な式なり関数なりを Python
で書いた時のコストを考えると、結局 RGB を独立して保持した方が早いという結論に。



200 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 10:51:09 ]
ゲームといえば
ttp://wiki.python.org/moin/OrganizationsUsingPython
BF2/Civ4プレイヤーがうらやましい・・・

201 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 11:43:04 ]
長い複数行にわたる文字列を定義したいと思って
str = """ hoge ""
見たくやりましたが
\v \bが含んでいると正しく出力されなくなります.

手作業で\\をつけてもいいですが,何かいい方法がありませんか?

202 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 11:51:02 ]
「正しく」ってのはどういう状態を考えてるの?



203 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 11:55:20 ]
>>201 raw文字列
>>> str=r"""hoge\nhoge"""
>>> print str
hoge\nhoge

204 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 12:04:49 ]
UnicodeのRaw文字列はどう書くんだったかといつも迷う。
urなのかruなのか。
良い覚え方はないものだろうか。。。

205 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 19:24:39 ]
unicode(r"hoge")

206 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 20:55:55 ]
Unicode文字列に対してlenを呼んだときに返す値は何?

207 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 20:58:59 ]
ユアストリングって覚えるといいよってGuidoかFredが言ってた


ごめん嘘いま俺が考えた

208 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 21:05:10 ]
>>206
>>> len(u'日本語')
3
>>> len('日本語')
9

209 名前:206 mailto:sage [2008/02/05(火) 21:52:59 ]
IPythonだけ変な値を返していました。
IPython以外で確認したら普通に文字数を返していました。

210 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 03:21:07 ]
unicodeのraw文字列はロシアじゃない。とか。

211 名前:デフォルトの名無しさん mailto:204 [2008/02/06(水) 11:06:21 ]
いろいろとアイデアをありがとう。覚えられそうな気がしてきた。

212 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 14:24:36 ]
>>> "bar" in "foobarbaz"
True

"foobarbaz".find("bar") != -1 とかやってた俺涙目



213 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 14:34:08 ]
uro覚え

214 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 14:40:53 ]
うru覚えは違うってことか

215 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 15:45:31 ]
>>214
誰が上手いこと言えと
(ちょっと感動した)

216 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 16:06:08 ]
>>214
urう覚えは違うの間違いだろ?

217 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 18:01:03 ]
うりゃー
URyaaaa


218 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 18:05:17 ]

hoge = [(1, 2), (3, 4), (5, 6), (7, 8)]

fuga = [(1, 3, 5, 7), (2, 4, 6, 8)]
に変換するにはどのような方法がスマートでしょうか?

hoge = [[1, 2], [3, 4], [5, 6], [7, 8]]
のときはやりかたは変わりますか?


219 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 18:34:51 ]
fuga = zip(*hoge)

220 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 18:56:14 ]
>219
それ、FAQの殿堂に入れようぜ!

221 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 19:01:44 ]
>>219
できました
ありがとうございました

222 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 20:21:02 ]
zip()ってあんまり使わないよね
Python Challenge以外で使った記憶がない



223 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 21:59:22 ]
a[len(a)] = xがダメなのに、a[len(a):] = xだとおkなのは、
そういうもんだと納得しなきゃいけないんでしょかね。

あと、a[len(a):] = [x] と a[len(a):] = x の書き間違いで、
いつかミスる悪寒を覚えた。

224 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 22:29:04 ]
チュートリアル
スライス演算には便利な不変式があります: s[:i] + s[i:] は s に等しくなります。
>>> word[:2] + word[2:]
’HelpA’
>>> word[:3] + word[3:]
’HelpA’
スライス表記に行儀の悪いインデクス指定をしても、値はたしなみよく処理されます: インデクスが大き
すぎる場合は文字列のサイズと置き換えられます。スライスの下境界 (文字列の左端) よりも小さいインデ
クス値を上境界 (文字列の右端) に指定すると、空文字列が返されます。
>>> word[1:100]
’elpA’
>>> word[10:]
’’
>>> word[2:1]
’’


225 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 23:15:28 ]
>>223
インタプリタで実行してみたら
当たり前だが前者がIndexError,
後者がTypeErrorになってしまうのだが
何がどうOKなんだ

226 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 23:29:08 ]
おれはいま恐ろしく頭の悪い奴を見た。
それは233だ。

227 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 23:32:44 ]
233に期待せざるえない

228 名前:223 mailto:sage [2008/02/06(水) 23:34:26 ]
このスレッドには馬鹿しかいないことが判明したようだ

229 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 23:35:20 ]
>>223

やりたいのはa.append(x)じゃないのか?
或いはa.extend(x)を期待してる?

230 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 01:06:04 ]
>>225
x がリストなら TypeError にならない

実際上は、229の言うように、append extend を使えば、
紛らわしい問題は起こらない。

231 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 01:11:04 ]
233はPythonにエスパー能力を求めているの?

232 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 01:13:14 ]
232

次どうぞ。



233 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 01:53:42 ]
233getttttt

234 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 02:14:49 ]
エスパー認定されました。おめでとう233。

235 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 02:44:08 ]
お前には失望した

236 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 03:04:44 ]
a = 1
b = 9
print a + b

237 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 06:34:25 ]
PythonなんかよりRubyつかうほうがいいと思うよ
>>223

238 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 10:14:55 ]
>253
寂しい奴め。
世界の果てでのたれ死ねこの低賃金ITドカタ。

239 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 10:28:44 ]
このスレはいつから未来人が跳梁跋扈するスレになったんだ?


240 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 11:22:47 ]
特定のビューアーで番号ずれてるだけじゃね?

241 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 15:50:40 ]
再読込み汁

242 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 16:13:51 ]
>>240
そんなのあるの?



243 名前:デフォルトの名無しさん [2008/02/07(木) 16:27:25 ]
twitterのapiを利用したサービスを作りたいんだ
サクラの鯖で運営したいんだけど
python以外にどんな知識が必要なの?
jsとかhtmlとか、もしかしてlinuxの知識もいるの?


244 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 16:29:27 ]
「あぼーん」が発生しても運が悪いと検出できない時があるからな。

245 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 17:32:07 ]
>>243
どれもこれも浅くて良いから一通り知っておく必要がある

どこから手をつけたらいいのかわからないんだったら
urllibでAPIを呼び出して結果をElementTreeで解析とかからやってみては
このあたりはHTTPとXMLの知識がすこし必要

そこから先はCGI作成設置とかだからスレ違い

246 名前:243 [2008/02/07(木) 17:51:25 ]
>>245
ありがとう
むっさがんばる
”このサイトについて”のありがとう欄に”>>245”って入れるよ。絶対。

247 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 18:24:16 ]
跳梁跋扈って、何て読むの?

248 名前:デフォルトの名無しさん [2008/02/07(木) 19:01:27 ]
>>247
このスレのどこに悪人が?


249 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 19:11:02 ]
>>247
いまの若いもんはおんぶに抱っこも知らんのか

250 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 20:29:35 ]
>>242
昔ゾヌ使ってた頃ズレた事があったな。
設定で回避したりバージョンで違うのかも知れんけど
ビューア次第で番号がズレることはある。

251 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 21:10:41 ]
>>252
一部レスが強制削除受けてるみたいだ

252 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 21:34:58 ]
ネタにしてもつまらん



253 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 22:55:00 ]
239はヤンキーだろ。
夜露死苦哀羅舞勇。

254 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 23:47:52 ]
記憶力が無い奴はextendだけ覚えりゃいい。
x.append(n)っぽいことをしたきゃ、x.extend([n])で済ま

255 名前:デフォルトの名無しさん mailto:sage [2008/02/08(金) 02:30:14 ]
無洗米に対してのような鬱屈を感じる

256 名前:デフォルトの名無しさん mailto:sage [2008/02/08(金) 02:46:19 ]
appendしか使ったことないや
extendは効率無視すりゃ+でいいしなぁ


257 名前:デフォルトの名無しさん mailto:sage [2008/02/08(金) 03:49:21 ]
extendならイテレータ受け取れるからたまに使う

258 名前:デフォルトの名無しさん mailto:sage [2008/02/08(金) 07:54:39 ]
>>255
日本語でOK。

259 名前:デフォルトの名無しさん [2008/02/08(金) 12:37:42 ]
>>212
すげー

これが欲しかったんだ。

re.searchとかfindとか、Noneを返すけどNoneかどうかを調べようがなくて困ってた。


260 名前:デフォルトの名無しさん mailto:sage [2008/02/08(金) 13:00:32 ]
>>259
value = None
print value is None

261 名前:デフォルトの名無しさん mailto:sage [2008/02/08(金) 13:01:48 ]
すいませんpython2.4をpythonwinでやっているのですが,
コンパイル済みの自作モジュールを再編集した際に,
一旦アプリを閉じないと再コンパイルしてくれません.

なにか良い方法ありませんでしょうか?

262 名前:デフォルトの名無しさん mailto:sage [2008/02/08(金) 13:03:40 ]
バカばっか。
Rubyでもやるか。



263 名前:デフォルトの名無しさん [2008/02/08(金) 13:03:57 ]
>>260
ああ、printしたらNoneって表示されるのにプログラムで「Noneですか?」を判定する方法が分からないって意味。
Noneとも'None'とも比較できなくて困る。


264 名前:デフォルトの名無しさん mailto:sage [2008/02/08(金) 13:07:42 ]
>>262
Rubyやるやつのほうがよっぽど馬鹿だろ。
Rubyを選択する最大の理由が日本語しかできないからだし。

まあ僕も日本語しか出来なくて英語の膨大な資料が読めなくて困ってるんだが。







[ 続きを読む ] / [ 携帯版 ]

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

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