Pythonのお勉強 Part34
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん
2009/07/01(水) 22:23:19http://www.python.org/
日本Pythonユーザ会
http://www.python.jp/Zope/
まとめWiki
http://python.rdy.jp/
関連スレ
http://find.2ch.net/?BBS=ALL&TYPE=TITLE&STR=python
前スレ
http://pc12.2ch.net/test/read.cgi/tech/1240678081/
0002デフォルトの名無しさん
2009/07/01(水) 22:26:33│●│
└─┤
_ ∩
( ゚∀゚)彡
┌─┬⊂彡
│●│ おっぱい!おっぱい!
└─┘ おっぱい!おっぱい!
0003デフォルトの名無しさん
2009/07/01(水) 22:26:460004デフォルトの名無しさん
2009/07/01(水) 22:33:07nとn^2+2がともに素数となるnを求めてください
素数テーブル
ビッグエンディアン ttp://www.opendogs.org/pub/pn_be.dat.gz
リトルエンディアン ttp://www.opendogs.org/pub/pn_le.dat.gz
0005デフォルトの名無しさん
2009/07/01(水) 23:05:030006デフォルトの名無しさん
2009/07/02(木) 00:03:270007デフォルトの名無しさん
2009/07/02(木) 09:39:490008デフォルトの名無しさん
2009/07/04(土) 01:45:36乙.py
0009デフォルトの名無しさん
2009/07/04(土) 01:47:51http://pc11.2ch.net/test/read.cgi/pcnews/1246584319/
1 (^o^)ノ<進めーψ ★ [] Date:2009/07/03(金) 10:25:19 ID:??? Be:90679695-2BP(1200)
1日(米国時間)、Spring Pythonの最新安定版にして初のメジャーリリースとなるSpring Python 1.0.0 GAが
発表された。Spring PythonはSpring Frameworkで実装されたコンセプトをPythonで実現するというもの。
Javaで開発されているSpring Frameworkの機能やフレームワークをPythonに提供する。
すでにオーバービューやコンセプト、実装内容などをまとめた参照ドキュメントがSpring Python -
Reference Documentationとして公開されているほか、開発に使えるAPIマニュアルがPython: package
springpythonにおいて公開されている。
PythonはGoogle App Engineの対応言語として最初に対応されるなど、活躍の場を広げている。
Spring Pythonを使うことでIoCやアスペクト指向プログラミング、トランザクション管理などが可能に
なる。またデータアクセス機能の強化やセキュリティの強化、リモート操作の強化なども実現されると
説明されている。
http://journal.mycom.co.jp/news/2009/07/03/007/images/001.jpg
http://journal.mycom.co.jp/news/2009/07/03/007/index.html
0010デフォルトの名無しさん
2009/07/04(土) 20:05:03Z
0011デフォルトの名無しさん
2009/07/05(日) 03:43:09しかしあんなレスでとるなんて...なんかごめん...
0012デフォルトの名無しさん
2009/07/05(日) 03:47:390013デフォルトの名無しさん
2009/07/05(日) 03:58:02ADO.NETでも、自分ユーティリティでmyDataSet as DataSet=mySQLLib.GetDS(クエリー文字列)
とか1行で取れるようにはしているけど。
こういう、実務的?なもののお勉強をもっとしたいものですわ。
Windows2003のイベントログとか、タスクスケジューラとかをPythonで扱えるのか見てみようかな。
0014デフォルトの名無しさん
2009/07/05(日) 06:07:52それはIronPythonなのですか?
0015デフォルトの名無しさん
2009/07/05(日) 12:28:450016デフォルトの名無しさん
2009/07/05(日) 13:06:07なるほど。
.NETが関係してるものと勘違いしてました。
0017デフォルトの名無しさん
2009/07/05(日) 20:58:49wscript/cscriptでイベントログ読むと
ログが頻繁に出力されるときは
取りこぼしが発生するんだよな
EventLogAPI叩けば大丈夫らしいんだけど
Pythonはどうなってるのかな
0018デフォルトの名無しさん
2009/07/05(日) 21:31:02それはMSDNのフォーラムで聞くべき内容だな。
0019デフォルトの名無しさん
2009/07/07(火) 22:43:36みんなのPython
0020デフォルトの名無しさん
2009/07/07(火) 22:51:230021デフォルトの名無しさん
2009/07/07(火) 23:14:070022デフォルトの名無しさん
2009/07/08(水) 03:54:43元気にしてるのかな?
0023デフォルトの名無しさん
2009/07/08(水) 03:58:560024デフォルトの名無しさん
2009/07/08(水) 08:25:520025デフォルトの名無しさん
2009/07/08(水) 09:06:470026デフォルトの名無しさん
2009/07/08(水) 23:18:15どんなことがあったの?
0027デフォルトの名無しさん
2009/07/08(水) 23:23:43回りにPythonはじめるのにいい本ないかって聞かれて、本屋にあったしアマゾンでも前の版は結構評判いいみたいなんでその名前出しておいたんだけど。
その後責任感じて自分でもちゃんと目を通してみたら、なんだかなぁって感じ。
細かい間違いやページ稼ぎの埋め草かと思えるような部分結構多いよね。
0028デフォルトの名無しさん
2009/07/08(水) 23:27:580029デフォルトの名無しさん
2009/07/08(水) 23:28:53前スレで散々間違いとか指摘されてたはず
0030デフォルトの名無しさん
2009/07/08(水) 23:46:35やっぱここの評判は良くないんだ。
ひとにすすめる(ってほどじゃないけど)前にここ見ればよかった。
アマゾンのレビューって結構あてにならないよね。
0031デフォルトの名無しさん
2009/07/09(木) 00:18:32入門としてはあのくらいでしょうがないんじゃないかなぁ
0032デフォルトの名無しさん
2009/07/09(木) 00:26:51みんなのPython
0033デフォルトの名無しさん
2009/07/09(木) 00:39:41恥ぱいより100倍マシだから安心していいよ
不満なら自分で書いてみれば?
0034デフォルトの名無しさん
2009/07/09(木) 00:40:38最近は代替になりそうなのが他にあるんだけどね
既に使ってる人はわざわざ初心者本を読まないので
お勧めされるまでは至らない状況
0035デフォルトの名無しさん
2009/07/09(木) 00:51:33>最近は代替になりそうなのが他にあるんだけどね
たとえば?
0036デフォルトの名無しさん
2009/07/09(木) 00:52:04もしくは
恥じらいのおっぱい、
か。
0037デフォルトの名無しさん
2009/07/09(木) 00:55:19AmazonでPythonで検索して出てくるようなやつ
どれもこれもダメっていうのなら話は別だけど
0038デフォルトの名無しさん
2009/07/09(木) 00:56:01python.jp/Zope/
なサイトには
恥ぱいも
みんぱいも
載ってるんだよなぁ
0039デフォルトの名無しさん
2009/07/09(木) 00:57:11みんなのPython改訂版というのが先頭に来ましたです。
0040デフォルトの名無しさん
2009/07/09(木) 00:58:082つめは初めての〜だしw
0041デフォルトの名無しさん
2009/07/09(木) 00:59:01そうなの。クスクス。
0042デフォルトの名無しさん
2009/07/09(木) 01:21:08http://pc12.2ch.net/test/read.cgi/tech/1244882261/
0043デフォルトの名無しさん
2009/07/09(木) 01:24:29三番目はないわ(wwwwwwwwWwwWwwwWwwwwWWwww
勧めるの著者くらいだろ(wwWwWWwwwwwwWWWwwWwWwWWW
0044デフォルトの名無しさん
2009/07/09(木) 02:16:080045デフォルトの名無しさん
2009/07/09(木) 02:39:100046デフォルトの名無しさん
2009/07/09(木) 02:56:18良いと思われる>いきなりクックブック
0047デフォルトの名無しさん
2009/07/09(木) 08:59:32三番目は、絶対ない(W
0048デフォルトの名無しさん
2009/07/09(木) 09:25:39勉強用に読んだけどそんなに悪いとは思わなかったけどなあ。
10日で覚えるとかはちょっと。。
0049デフォルトの名無しさん
2009/07/09(木) 09:34:15これ読んだ人いる?
0050デフォルトの名無しさん
2009/07/09(木) 09:35:1210日で覚える〜は鈍器としてすらありえない。
0051デフォルトの名無しさん
2009/07/09(木) 09:44:21はじめてのPython と初めてのPython は別のもの
0052デフォルトの名無しさん
2009/07/09(木) 09:44:460053デフォルトの名無しさん
2009/07/09(木) 12:10:37ttp://python.is-a-geek.org/wiki/index.cgi?Whats3onLP
を読みたいんだけど、Wikiが改竄されている。(´・ω・`)
0054デフォルトの名無しさん
2009/07/09(木) 16:53:530055デフォルトの名無しさん
2009/07/09(木) 18:21:400056デフォルトの名無しさん
2009/07/09(木) 18:28:320057デフォルトの名無しさん
2009/07/09(木) 19:14:440058デフォルトの名無しさん
2009/07/09(木) 20:38:150059デフォルトの名無しさん
2009/07/09(木) 20:53:050060デフォルトの名無しさん
2009/07/09(木) 21:06:37| .,.:/"" ゙‐,. ` /
` .,-''ヽ"` ヽ,,,、 !
、,、‐'゙l‐、 .丿 : ':、
、/ヽヽ‐ヽ、;,,,,,,,,,-.ッ:''` .,"-、
,r"ツぃ丶 `````` ../ `i、
,.イ:、ヽ/ー`-、-ヽヽヽ、−´ .l゙`-、
_,,l゙-:ヽ,;、、 、、丶 ゙i、,,、
,<_ l_ヽ冫`'`-、;,,,、、、、.............,,,,、.-`": │ `i、
、、::|、、、ヽ,、、. ```: : : ``` 、.、'` .|丶、
.l","ヽ、,"、,"'、ぃ、、,、、、、.、、、.、、、_、.,,.ヽ´ l゙ ゙).._
,、':゙l:、、`:ヽ、`:、 : `"```¬——'''"`゙^` : ..、丶 .l゙ `ヽ
,i´.、ヽ".、".、"'ヽヽ;,:、........、 、、...,,,、−‘` 、‐ |゙゙:‐,
,.-l,i´.、".`ヽ,,,.".` `゙゙'"`'-ー"``"``r-ー`'": _.‐′ 丿 ,!
j".、'ヽ,".、".、"`''`ー、._、、、 、._,、..-‐:'''′ .、,:" 丿
゙l,"`"`''ヽヽ"`"` ```゙'''"ヽ∠、、、、ぃ-`''''": ` 、._./` ._/`
`'i`ヽヽヽ`''ーi、、、: : 、.,-‐'` 、/`
``ヽン'`"` : `~``—ヽ::,,,,,,,,,,.....................,,,,.ー'``^ ,、‐'"`
`"'゙—-、,,,,..、、 : ..,、ー'"'`
: `‘"`—---------‐ヽ``"''''''""
0061デフォルトの名無しさん
2009/07/09(木) 22:44:250062デフォルトの名無しさん
2009/07/10(金) 03:26:27foo[m.group(1)] = m.group(2)
これを m を介さずに一行で書くにはどうすれば良いですか?
0063デフォルトの名無しさん
2009/07/10(金) 03:31:120064デフォルトの名無しさん
2009/07/10(金) 03:32:19難読化して何が楽しいんだか
0065デフォルトの名無しさん
2009/07/10(金) 03:37:35だったときでも使える?
0066デフォルトの名無しさん
2009/07/10(金) 03:38:580067デフォルトの名無しさん
2009/07/10(金) 03:44:26006862
2009/07/10(金) 05:36:030069デフォルトの名無しさん
2009/07/10(金) 09:14:40exception 書くと結局数行付け足す羽目になるぜ
0070デフォルトの名無しさん
2009/07/10(金) 10:26:05質問に正確に答えるなら、その方法を答えるのが正解だけど。
0071デフォルトの名無しさん
2009/07/10(金) 11:45:17デザインパターンがあったけど、こんな記事があるみたいです:
Design Patterns in Real Python Projects
by Michael Schneider
http://pymag.phparch.com/c/issue/view/87
0072デフォルトの名無しさん
2009/07/10(金) 23:33:21ふむ・・・名前からしてドイツ人?
0073デフォルトの名無しさん
2009/07/11(土) 01:28:38Pythonのバイブルを読むべきだと思いますよ。
http://www.amazon.co.jp/dp/4839922829
0074デフォルトの名無しさん
2009/07/11(土) 01:33:510075デフォルトの名無しさん
2009/07/11(土) 01:42:23宣伝乙
007675
2009/07/11(土) 01:43:58明日書店行って立ち見してくるわ
0077デフォルトの名無しさん
2009/07/11(土) 03:29:090078デフォルトの名無しさん
2009/07/11(土) 04:10:380079デフォルトの名無しさん
2009/07/11(土) 21:19:42買うとしたらどのくらいの人間が買う?ということが気になっている。
0080デフォルトの名無しさん
2009/07/11(土) 21:30:330081デフォルトの名無しさん
2009/07/11(土) 21:39:380082デフォルトの名無しさん
2009/07/12(日) 07:41:09変数に代入するときは標準出力に吐き出されず、
以降は print などで普通に出力される動作を期待しています。
0083デフォルトの名無しさん
2009/07/12(日) 08:09:590084デフォルトの名無しさん
2009/07/12(日) 09:31:520085デフォルトの名無しさん
2009/07/12(日) 09:59:080086デフォルトの名無しさん
2009/07/12(日) 13:26:10stdout = sys.stdout
sys.stdout = StringIO()
print "test"
test = sys.stdout.getvalue()
sys.stdout.close()
sys.stdout = stdout
これで、できました。失礼します。
あと、>>85は自分ではありません。
0087デフォルトの名無しさん
2009/07/13(月) 11:27:36strictって”厳しい”って意味ですよね
意味が重複してますよね
0088デフォルトの名無しさん
2009/07/13(月) 12:56:10今度はそれをEasyGuiでGUI化しようとしてるんだけど,コンソール(コマンドプロンプト)ウィンドウが
邪魔くさいので非表示にしたいんです。
ググってもわからなかったので,どうすればいいのかエラい人教えてください。
環境はWindows XPでPython 2.6.2動かしてます。
起動は.pyファイルをダブルクリックするようにしてるので,コマンドプロンプトを開いて
起動しているわけではありません。
0089デフォルトの名無しさん
2009/07/13(月) 13:03:27拡張子を .pyw にする。
もしくは ctypes で FreeConsole() を呼ぶ。
009088
2009/07/13(月) 13:10:58> 拡張子を .pyw にする。
うわー,そんなんでよかったのか!
> もしくは ctypes で FreeConsole() を呼ぶ。
こっちも調べてみます。
速攻レスサンクス。
0091デフォルトの名無しさん
2009/07/13(月) 17:38:580092デフォルトの名無しさん
2009/07/13(月) 17:40:26009388
2009/07/13(月) 18:50:030094デフォルトの名無しさん
2009/07/13(月) 22:29:010095デフォルトの名無しさん
2009/07/14(火) 16:26:04>>> import hashlib
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.5/hashlib.py", line 133, in <module>
md5 = __get_builtin_constructor('md5')
File "/usr/lib/python2.5/hashlib.py", line 60, in __get_builtin_constructor
import _md5
ImportError: No module named _md5
と怒られます。解決策を教えてください。
cygwinでpython2.5.2です。
0096デフォルトの名無しさん
2009/07/14(火) 17:03:41エラーを再現できない。
/usr/lib/python2.5/lib-dynload/_hashlib.dll
があるかどうか確かめてくれ。
009895
2009/07/14(火) 17:23:09http://code.krypto.org/python/hashlib/hashlib-20081119.tar.gz
から、hashlibのソースコードを持ってきてビルドしようとすると
$ python setup.py build
running build
running build_py
running build_ext
building '_sha' extension
gcc -shared -Wl,--enable-auto-image-base build/temp.cygwin-1.5.25-i686-2.5/Modul
es/shamodule.o -L. -lpython2.5 -o build/lib.cygwin-1.5.25-i686-2.5/_sha.dll
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld: cannot find
-lpython2.5
collect2: ld returned 1 exit status
error: command 'gcc' failed with exit status 1
というエラーでできないのですが、関係ありますか?
0099デフォルトの名無しさん
2009/07/14(火) 17:25:01setup.pyを編集
# 113 # The _hashlib module wraps optimized implementations
# 114 # of hash functions from the OpenSSL library.
# 115 exts.append( Extension('_hashlib', ['_hashopenssl.c'],
# 116 include_dirs = [ ssl_inc_dir ],
# 117 library_dirs = [ os.path.dirname(ssl_lib) ],
# 118 libraries = osNameLibsMap[os.name]) )
# 119 exts.append( Extension('_sha', ['shamodule.c']) )
# 120 exts.append( Extension('_md5',
# 121 sources = ['md5module.c', 'md5.c'],
# 122 depends = ['md5.h']) )
http://inforno.net/articles/2009/01/25/using-any-version-of-python-on-xrea-servers-part2
0100デフォルトの名無しさん
2009/07/15(水) 13:32:46cpythonで作ったメインのプログラムからJythonで作ったモジュールを呼び出すことは可能ですか?
0101デフォルトの名無しさん
2009/07/15(水) 22:38:570102デフォルトの名無しさん
2009/07/16(木) 17:56:390103デフォルトの名無しさん
2009/07/17(金) 16:09:59http://codespeak.net/pipermail/pypy-dev/2009q3/005288.html
0104デフォルトの名無しさん
2009/07/17(金) 23:07:58期待して良いのか?
0105デフォルトの名無しさん
2009/07/17(金) 23:29:420106デフォルトの名無しさん
2009/07/17(金) 23:31:340107デフォルトの名無しさん
2009/07/18(土) 02:21:290108デフォルトの名無しさん
2009/07/18(土) 14:19:570109デフォルトの名無しさん
2009/07/18(土) 15:05:030110デフォルトの名無しさん
2009/07/18(土) 17:19:4840過ぎだよ。
0111デフォルトの名無しさん
2009/07/18(土) 17:35:320112デフォルトの名無しさん
2009/07/19(日) 01:48:560113デフォルトの名無しさん
2009/07/19(日) 03:15:300114デフォルトの名無しさん
2009/07/19(日) 15:41:25俺らにゃpython.comがある
0115デフォルトの名無しさん
2009/07/20(月) 02:50:13俺のようなVTKとかインストールすら出来ずに挫折した人にはナイスであります。
0116デフォルトの名無しさん
2009/07/20(月) 02:58:000117デフォルトの名無しさん
2009/07/20(月) 03:21:320118デフォルトの名無しさん
2009/07/20(月) 12:51:150119デフォルトの名無しさん
2009/07/20(月) 12:52:570120デフォルトの名無しさん
2009/07/20(月) 15:48:56ローレンツアトラクタを書かせたら、20行くらいでくるくる回って感動ww
0121デフォルトの名無しさん
2009/07/20(月) 16:16:11isinstance(obj, (str, unicode)) # 2.x
isinstance(obj, (str, bytes)) # 3.x
となりますが、ひとつのファイルで2と3の両方をサポートしたい場合はどうかけばいいでしょうか。
0122デフォルトの名無しさん
2009/07/20(月) 16:24:20>http://docs.python.org/3.0/whatsnew/3.0.html
>>It is not recommended to try to write source code that runs unchanged under both Python 2.6 and 3.0;
sys.version_infoを見れば一応はできる
0123デフォルトの名無しさん
2009/07/20(月) 16:27:480124デフォルトの名無しさん
2009/07/20(月) 17:56:56え、なんでだめなんですか?
0125デフォルトの名無しさん
2009/07/20(月) 18:03:36ドキュメントにはこう書いてあるけど、
書けないことはないから、やってみれば
0126デフォルトの名無しさん
2009/07/20(月) 23:07:450127デフォルトの名無しさん
2009/07/21(火) 01:09:260128デフォルトの名無しさん
2009/07/21(火) 11:20:51<type 'basestring'>
0129デフォルトの名無しさん
2009/07/21(火) 14:36:460130デフォルトの名無しさん
2009/07/21(火) 14:39:350131初めてのPy
2009/07/21(火) 23:06:41コンパイルの設定とかあるんでしょうか
UnicodeDecodeError: 'utf8' codec can't decode byte 0x83 in position 24: unexpected code byte
Eclipse Classic (SDK) 3.4.2 (clean)
python-3.0.1
0132デフォルトの名無しさん
2009/07/22(水) 00:29:080133デフォルトの名無しさん
2009/07/22(水) 01:09:59・XY平面のグリッドをcurveで書く
・Zを上にするよう、scene.up=(0,0,1)を指定
・X,Y,Z軸をcurveで書く
・物体の影をXY平面に書く
したらすごく分かりやすくなった!
0134デフォルトの名無しさん
2009/07/22(水) 01:17:510135デフォルトの名無しさん
2009/07/22(水) 01:19:17GJ!!
kwsk
0136デフォルトの名無しさん
2009/07/22(水) 01:21:23そりゃ、Shift-JISで書かれたファイルをencode='utf-8'とかを指定して
読み込もうとしたらDecodeErrorになるよ。
0137デフォルトの名無しさん
2009/07/22(水) 01:35:27b'\x82\xa0'.decode("ascii") とかでも UnicodeDecodeError
0138デフォルトの名無しさん
2009/07/22(水) 01:56:250139デフォルトの名無しさん
2009/07/22(水) 02:49:31おk、事務所に置いて来たので、10時頃まで待ってください。
0140デフォルトの名無しさん
2009/07/22(水) 11:11:02import math
#==============Set up scene===============
scene.title='Lorenz Attractor'
axr=50 #Max Range of Axis
scene.width = 800
scene.height = 800
scene.center = (0, 0, 0) #center, where camera looks always.
scene.forward = (-axr, axr, -axr) #where camera views at initial.
scene.up = (0,0,1) #z is up.
scene.range = axr*1.25 # zoom out a little, to get all axis in sight
#draw x-y plane grid
for i in range(-axr, axr+1, axr/20):
curve(pos=[(i, -axr,0),(i,axr,0)],color = (0.3,0.3,0.4)) #parallel to Y
curve(pos=[(axr, i,0),(-axr,i,0)],color = (0.3,0.4,0.3)) #parallel to X
#axis (x,y,z), and small arrow
xaxis = curve(pos=[(-axr,0,0), (axr,0,0)], color=color.red)
curve(pos=[(axr,0,0), (axr*0.95,axr*0.05,0)], color=color.red)
curve(pos=[(axr,0,0), (axr*0.95,-axr*0.05,0)], color=color.red)
yaxis = curve(pos=[(0,-axr,0), (0,axr,0)], color=color.green)
curve(pos=[(0,axr,0), (-axr*0.05,axr*0.95,0)], color=color.green)
curve(pos=[(0,axr,0), (axr*0.05,axr*0.95,0)], color=color.green)
zaxis = curve(pos=[(0,0,-axr), (0,0,axr)], color=color.yellow)
curve(pos=[(0,0,axr), (-axr*0.05,0,axr*0.95)], color=color.yellow)
curve(pos=[(0,0,axr), (axr*0.05,0,axr*0.95)], color=color.yellow)
xlabel = label(pos=(axr,axr/10,0), box=0, opacity=0.25, text = 'x')
ylabel = label(pos=(-axr/10,axr,0),box=0, opacity=0.25, text = 'y')
zlabel = label(pos=(-axr/10,0,axr),box=0, opacity=0.25, text = 'z')
#===========end setting up scene============
0141デフォルトの名無しさん
2009/07/22(水) 11:14:42sceneの中心が原点、xy平面を見下ろし、z軸が上向き、ちょっとズームアウト。
軸のレンジ÷20で、XY平面にグリッドを書く。
X軸、ちょこっと矢印、Y軸、ちょこっと矢印、Z軸、ちょこっと矢印、「X」とかラベル付け。
0142デフォルトの名無しさん
2009/07/22(水) 11:17:32ball = sphere(pos=(0,0,0), radius=1, color=color.red, opacity=0.8)
shadow = cylinder(pos=(0,0,0), axis=(0,0,1), radius = 1, color=color.white, opacity=0.2)
trail = curve()
x, y, z = 0.1, 0,0
count = 0
pointslist = []
while(count < 10000):
#animation maximum rate per second
rate(1000)
# do the lorenz attractor
dx = 10.0 * (y - x)
dy = x * (28.0 - z) - y
dz = x * y - (2.666666 * z)
x = x + dx * 0.005
y = y + dy * 0.005
z = z + dz * 0.005
pointslist.append((x, y, z))
#do not "print" every time. it can be very slow.
if math.fmod(count,500)==0:
print count, x,y,z
ball.pos = (x,y,z)
shadow.pos = (x, y, 0) #shadow is drawn to X-Y plane
trail.append(pos=ball.pos, retain=100) # last some points
count = count + 1
points(pos=pointslist, size = 2, color=(1,0.5,0))
0143デフォルトの名無しさん
2009/07/22(水) 11:24:51ローレンツアトラクタを10000回計算。
結果の座標をListに足し、ボールと影と尻尾の座標をセット。
終わったらpointsで軌跡を描画です。
http://up2.viploader.net/pic3/src/vl2_161237.png
実行するとボールがくるくる動いた後、こうなります。
0144デフォルトの名無しさん
2009/07/22(水) 12:12:02tt
0145デフォルトの名無しさん
2009/07/22(水) 12:17:16http://up2.viploader.net/pic3/src/vl2_161264.png
こんなブキミな物体(Torus Knot)も簡単に書ける。描画部分を下のように変えます。
pointslist = []
A = 3.0
B = 8.0
drawcount = 1000
for i in range(drawcount):
theta = 2 * math.pi * i * A / drawcount
x = ( 2 + math.cos(B*theta/A))*math.cos(theta) * 20
y = ( 2 + math.cos(B*theta/A))*math.sin(theta) * 20
z = math.sin(B*theta/A) * 20
pointslist.append((x, y, z))
for i, p in enumerate(pointslist):
c_hsv=(i/float(drawcount),1,1)
sphere(pos=p, radius=6, color=color.hsv_to_rgb(c_hsv), opacity=0.7)
0146デフォルトの名無しさん
2009/07/22(水) 12:25:420147デフォルトの名無しさん
2009/07/22(水) 12:36:30あれはさっくりして美味しいですよな。
http://up2.viploader.net/pic3/src/vl2_161267.png
(A,B)=(9,19)にしたら全然違うものが出来てしまったよorz
0148デフォルトの名無しさん
2009/07/22(水) 13:41:37sphereで、opacity=0.12、material=material.emissive、追加でlocal_light(pos=p,color=color.white)
としたら結構綺麗なのが出来ました。こんなんが数行で書けるんだから時代の
進歩というのはすごいものでありますなぁ…
さて次はNumpyで遊んだ結果をVPythonで表示してみようかな?
0149デフォルトの名無しさん
2009/07/22(水) 15:32:47pythonも高負荷に耐えれるのでしょうか
0150デフォルトの名無しさん
2009/07/22(水) 15:38:280151デフォルトの名無しさん
2009/07/22(水) 15:54:380152デフォルトの名無しさん
2009/07/22(水) 19:23:51「pythonも高負荷に耐えれるのでしょうか」じゃなくて
「pythonが高負荷を発生するのでしょうか」だろ。
0153デフォルトの名無しさん
2009/07/22(水) 19:25:400154デフォルトの名無しさん
2009/07/22(水) 19:25:56かなり曖昧だな
0155デフォルトの名無しさん
2009/07/22(水) 23:20:12速度だけなら
python > perl > php > ruby
な感じ。
perlはメモリ消費優秀。
phpはメモリ消費大杉。
0156デフォルトの名無しさん
2009/07/22(水) 23:23:45http://shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=php&lang2=yarv&box=1
0157デフォルトの名無しさん
2009/07/22(水) 23:35:170158デフォルトの名無しさん
2009/07/23(木) 00:12:16良く分かったよ感謝
0159デフォルトの名無しさん
2009/07/23(木) 00:14:04負荷のかかる処理をC言語の拡張に任せるというスタイルによるレスポンスのよさだからな。
オブジェクト指向を気取ってコードをたくさん書けば書くほど遅くなる罠。
まあそれはLWLではみな同じことが言えるわけだが。
0160デフォルトの名無しさん
2009/07/23(木) 00:36:57100倍速い!!とか言ってみたい。
0161デフォルトの名無しさん
2009/07/23(木) 06:39:44それってどれも同じなんじゃね?
0162デフォルトの名無しさん
2009/07/23(木) 07:26:55おれもVPython入れてみようと思って、Ubuntu9.0.4のsynapticで「あるじゃん」と思って入れたら、
これバージョン3だよ。opacityとか無いよ。
0163デフォルトの名無しさん
2009/07/23(木) 08:20:00pythonがcgi.pyでやっているような処理を、phpではCで書かれた関数で行なっている。
測定してみればわかるけど、これはけっこう性能に効く。
0164デフォルトの名無しさん
2009/07/23(木) 08:29:040165デフォルトの名無しさん
2009/07/23(木) 08:45:530166デフォルトの名無しさん
2009/07/23(木) 08:50:58まぁWebで数値計算はしないが。
ソースを忘れたけど
0167デフォルトの名無しさん
2009/07/23(木) 09:57:17-50,-28,13,0.66
:
こんな風に読んで、VisualPythonの玉に入れてみたら
from visual import *
f = open("test.dat")
for oneline in f.readlines():
plist = oneline.strip().split(',')
p = [int(s) for s in plist[:3]]
c_hsv = [float(plist[3]),1,1]
sphere(pos=p, radius=2, color=color.hsv_to_rgb(c_hsv), opacity=0.7)
いきなり可視化できてしまったぞ。ちょwwマジかwwいいのかこれでww
0168デフォルトの名無しさん
2009/07/23(木) 10:17:57# -*- coding:utf-8 -*-
をパクってるのでしょうか?文字コード指定は楽なのはわかりますが。
0169デフォルトの名無しさん
2009/07/23(木) 10:20:25emacs や vim の文字コード指定方法をソースコードの文字コード指定方法に
一致させると楽だから。
0170デフォルトの名無しさん
2009/07/23(木) 10:26:48去年からPythonで導入された方法。
0171デフォルトの名無しさん
2009/07/23(木) 10:26:53ていうか、それRuby1.9からだよな。
Pythonのほうが古い。
てか、釣りだろ。
0172デフォルトの名無しさん
2009/07/23(木) 10:31:120173デフォルトの名無しさん
2009/07/23(木) 10:58:09Python 2.3 からだから、5年くらい前じゃね?
0174デフォルトの名無しさん
2009/07/23(木) 11:07:380175デフォルトの名無しさん
2009/07/23(木) 11:34:230176デフォルトの名無しさん
2009/07/23(木) 11:37:400177デフォルトの名無しさん
2009/07/23(木) 11:37:490178デフォルトの名無しさん
2009/07/23(木) 12:04:47最新版をsetup.py で上書きインストールしてしまうかと思う
しかし、何か不具合おこないか心配
aptで入れたパッケージを消してからpython setup.py install したほうがいいんだろうか
0179デフォルトの名無しさん
2009/07/23(木) 12:34:02>なぜ、PythonはRubyの
># -*- coding:utf-8 -*-
>をパクってるのでしょうか?文字コード指定は楽なのはわかりますが。
これは恥ずかしい
マネしたのはRubyのほう
0180デフォルトの名無しさん
2009/07/23(木) 12:56:300181デフォルトの名無しさん
2009/07/23(木) 23:04:55いいじゃんパクったならパクったで
0182デフォルトの名無しさん
2009/07/23(木) 23:10:160183デフォルトの名無しさん
2009/07/23(木) 23:11:280184デフォルトの名無しさん
2009/07/23(木) 23:26:530185デフォルトの名無しさん
2009/07/23(木) 23:33:530186デフォルトの名無しさん
2009/07/24(金) 01:36:05Ruby厨はなんでもRuby一番にしたがるから困る
0187デフォルトの名無しさん
2009/07/24(金) 07:01:48有限要素法とかあったりしますか?
0188デフォルトの名無しさん
2009/07/24(金) 08:26:07変数とか代入とかハッシュとかの概念を
をパクってるのでしょうか?スクリプト作成は楽なのはわかりますが。
0189デフォルトの名無しさん
2009/07/24(金) 09:08:080190デフォルトの名無しさん
2009/07/24(金) 10:12:31os.path.basename(__file__) , (__name__).replace('__','')+'()' , inspect.getlineno(inspect.currentframe())
spam.py main() 19
こんなことしてるんですが、俺ダサ杉ですよね。華麗な表示方法をご教示くださいですよ。
0191デフォルトの名無しさん
2009/07/24(金) 10:32:230192デフォルトの名無しさん
2009/07/24(金) 10:52:39おれもそう感じた
0193デフォルトの名無しさん
2009/07/24(金) 11:03:43logging モジュール
http://www.python.jp/doc/release/lib/node423.html
0194デフォルトの名無しさん
2009/07/24(金) 11:50:03require "hage.rb"
見たいなことはPythonで出来ませんか?
0195デフォルトの名無しさん
2009/07/24(金) 12:09:12なるほど!
%(module)s モジュール名 (ファイル名の名前部分)
%(funcName)s ログ記録の呼び出しを含む関数の名前
%(lineno)d ログ記録の呼び出しが行われたソース行番号 (取得できる場合)
0196デフォルトの名無しさん
2009/07/24(金) 14:21:43import sys
sys.path.append('./hoge/hoge/hoge')
import hage
でどうでしょう?
0197デフォルトの名無しさん
2009/07/24(金) 17:36:51hogedir = os.path._getfullpathname("./hoge/hoge/hoge/hoge/hoge/hoge")
os.sys.append(hogedir)
import hage
0198デフォルトの名無しさん
2009/07/24(金) 18:23:13これ3.0に移行してstr.formatを使うようになっても%書式のままでいくのかなぁ
今見たけど変わってなかった
0199デフォルトの名無しさん
2009/07/24(金) 19:38:00│●│
└─┤
_ ∩
( ゚∀゚)彡
┌─┬⊂彡
│●│ おっぱい!おっぱい!
└─┘ おっぱい!おっぱい!
0200デフォルトの名無しさん
2009/07/25(土) 13:56:37session.retrbinary('RETR '+file, open(file, 'wb').write)
標準出力にファイルの中身を吐き出すにはどう書けば良いんでしょうか?
0201デフォルトの名無しさん
2009/07/25(土) 14:10:11どうするか悩みどころだよね。
将来的に % によるフォーマティングは廃止される予定だけど、
デフォルトのFormatterはどうしようも・・・
logging.basicConfig(newstyle_formatter=True)
とかでお手軽に新フォーマッターに移行できないかな・・・
0202デフォルトの名無しさん
2009/07/25(土) 15:08:13session.retrlines('RETR foo.txt')
0203デフォルトの名無しさん
2009/07/25(土) 15:49:11できました!
ありがとうございます。
0204デフォルトの名無しさん
2009/07/26(日) 00:30:35(⌒,_, ,⌒て ,,_,)
! ノ U。`yヘ_,、_ノ !
し|~〜〜 。 ヘ⌒iヽフ
|! ゚o 。.゚(・ω|・ ) びーるきたよー
|! 。o゚ ⊂ ゚ とノ
|i 。゚ ゚ o .゚|.。|. |
|i、..゜。。゚ ゚し|'J
. |,,._二二二_,!
。゚o
0205デフォルトの名無しさん
2009/07/26(日) 07:45:15print map(lambda x:x.replace("a",""), a)
これと同じ処理でもっといい方法ありますか?
0206デフォルトの名無しさん
2009/07/26(日) 09:40:07lambda + map 使うくらいなら内包表記を使う
print [x.replace('a', '') for x in a]
lambda も map も悪いものではないけど、map+lambdaは推奨されない。
0207デフォルトの名無しさん
2009/07/26(日) 09:44:50内包表記なんていうのがあるんですね。ありがとうございます。
LISP畑から来てるので map に lambda が推奨されないって変な感じですが
Pythonではあまり使わないようにします。
0208デフォルトの名無しさん
2009/07/26(日) 09:50:32schemeのinternal defineのように関数内で関数定義して名前を与えて使うのがいいみたい
0209デフォルトの名無しさん
2009/07/26(日) 10:32:17それは >>206 とはちょっと違う話で、少しでも複雑な関数を作るときは
ちゃんと名前を付けましょうねという意味で、lambda が単文しか実行
できなくなってる。
map + lambda が推奨されないのは、
1) 単純に map(lambda x: と書くタイプ数 が for x に削減される
2) map はリストが不要なときも一時リストを生成してしまう。
(>>206ではリストが必要だったけど、必要ないときはジェネレータ内包が使える)
3) map 内で繰り返し関数呼び出しが発生する。内包だと式の評価なので lambda より速い
4) Lisp脳ではない人間にとっては、 map(lambda x: を読むときに頭の中で分解再構築が必要になる。
内包表記の方がやりたいことをすっきりと書き下せる。
0210デフォルトの名無しさん
2009/07/26(日) 10:37:190211デフォルトの名無しさん
2009/07/26(日) 10:41:13頭大丈夫? 自分が何を主張するために何を持ち出しているのか読み直した方がいいよ。
0212デフォルトの名無しさん
2009/07/26(日) 11:21:42オレは>209の入ってる事がよく分かったが、何か問題でもあるのか?
0213デフォルトの名無しさん
2009/07/26(日) 11:44:481)については、そもそもlambdaとか6文字も必要なsyntaxにしたのが間違いだったんだと思う
Haskellみたいに記号使っとけば……
2)はpython3000ではmapもイテレータ作るし
まぁ内包のほうが速いし、そっち使ったほうがいいんだけど
0214デフォルトの名無しさん
2009/07/26(日) 13:18:290215デフォルトの名無しさん
2009/07/26(日) 14:19:08Pythonにとって、lambdaは便利で強力だけど一つの文が複雑になるし遅いので
あまり推奨できないから、記号を導入してまでみんなに使ってもらおうとは
思ってないんだろう。
0216デフォルトの名無しさん
2009/07/26(日) 15:22:31でも、他の言語使ってても複雑な式ならどのみち関数定義するから、
そのために何かして欲しいとは思わないけど。
0217デフォルトの名無しさん
2009/07/26(日) 15:50:27これでいくか。
0218デフォルトの名無しさん
2009/07/26(日) 16:12:54my $f = sub { $_[0]+1 }
$f->(42)
Ruby1.8
f = lambda { |x| x+1 }
f[42]
f.call 42
Ruby1.9
f = ->(x) { x+1 }
f[42]
f.call 42
Python
f = lambda x: x+1
f(42)
Haskell
f = \x -> x+1
f 42
0219デフォルトの名無しさん
2009/07/26(日) 16:27:540220デフォルトの名無しさん
2009/07/26(日) 16:45:23^記号をつかえばいいやんとか思う
ビット演算とまぎらわしいなら$で
0221デフォルトの名無しさん
2009/07/26(日) 16:46:13Python
def f(x): return x+1
f(42)
0222デフォルトの名無しさん
2009/07/26(日) 16:47:280223デフォルトの名無しさん
2009/07/26(日) 18:47:47いくのかなあ、って変わってないんだからそうに決まってるでしょ。
http://docs.python.org/3.1/library/logging.html#formatter-objects
0224デフォルトの名無しさん
2009/07/26(日) 19:24:26名前を考えないといけないから思考が停止しちゃうとか?
0225デフォルトの名無しさん
2009/07/26(日) 19:37:45内包表記のときはやっぱりラムダがあった方がいい。
名前も、じゃあ全てのfor文に名前を付けるか?みたいな話だと思われ。
それくらい気楽な関数。
0226デフォルトの名無しさん
2009/07/26(日) 20:31:36関数名つけるの面倒くさいっていうやつは、98%の確率で
ろくなプログラマではない
だいたい、面倒って言ったって、xxx2yyy くらいを考えれば十分だし、
一言で表せないような関数を渡すのは構造的に失敗してると思うし
0227デフォルトの名無しさん
2009/07/26(日) 20:38:30どっちかというと、かぶらないか失敗っていう心配だな。
Pythonならあんまり気にしなくてもいいんだけどw
0228デフォルトの名無しさん
2009/07/26(日) 22:30:21Python使いからの不満も多いみたいだし、こんなので3は普及するのかねぇ
0229デフォルトの名無しさん
2009/07/26(日) 22:33:350230デフォルトの名無しさん
2009/07/26(日) 23:45:40> 内包表記のときはやっぱりラムダがあった方がいい。
ラムダが内包表記で便利な経験が無いんだけど、
ラムダ+内包表記のcoolな例あったら挙げてみて。
0231デフォルトの名無しさん
2009/07/27(月) 02:30:48やっぱり、[fnc(x) for x in a if check(x)==0]
のようにして、[ ]内はごちゃごちゃしないようにしたほうがイイすよね?
0232デフォルトの名無しさん
2009/07/27(月) 08:38:42まだ落ちてるよ
日本人でDjangoをやっているひとたちは
サイトが長時間落ちてもオッケー的な感覚の持ち主なんだろうな
0233デフォルトの名無しさん
2009/07/27(月) 12:54:32復活してないサーバと比べりゃ(ry
0234デフォルトの名無しさん
2009/07/27(月) 13:16:15読む人が「えーとこれは」と考え込まずに済むように書きたい。
したがってその位に留める(長くなるなら外に出す)という習慣は
良いことだと思われます。
0235デフォルトの名無しさん
2009/07/27(月) 13:33:44hoge=fuga
hage=moge
def func(x):
return x+1
vwx=[fnc(x) for x in a if check(x)==0]
return xyz
0236デフォルトの名無しさん
2009/07/27(月) 14:24:49さすがにそれは内包表記の中で直接 x + 1 した方が良いだろ。
0237デフォルトの名無しさん
2009/07/27(月) 14:58:170238デフォルトの名無しさん
2009/07/27(月) 15:31:230239デフォルトの名無しさん
2009/07/27(月) 15:40:560240デフォルトの名無しさん
2009/07/27(月) 16:20:110241デフォルトの名無しさん
2009/07/27(月) 16:21:44国内無料鯖は2.4どころか2.3、Python自体ないとかあってかなりの不遇で、自信を持っておすすめできるものはない。色々探してみるといい
ただSSHなどシェルアクセスできれば自力で導入できるとこもある(xreaとか。まあSSH使える無料鯖はほとんどないが…)
低価格鯖なら最近2.6が導入されたさくらがおすすめかな。
0242デフォルトの名無しさん
2009/07/27(月) 16:50:15まるまる仮想OS使えるところでいいんじゃないの。
0243デフォルトの名無しさん
2009/07/27(月) 17:14:51それも出せないなら自宅鯖でも作れ
いやならPHPでも使ってろ
0244デフォルトの名無しさん
2009/07/27(月) 19:41:5470 名前: デフォルトの名無しさん Mail: sage 投稿日: 2009/07/27(月) 15:02:19
PHPで無料レンタル鯖のいいとこ&有名なとこあります?
0245デフォルトの名無しさん
2009/07/27(月) 22:38:51みんなやさしくて好きです
0246デフォルトの名無しさん
2009/07/27(月) 22:42:32つhttp://pc12.2ch.net/test/read.cgi/tech/1243160751/4-10
0247デフォルトの名無しさん
2009/07/27(月) 22:43:01そういうこと言っちゃいけません
0248デフォルトの名無しさん
2009/07/27(月) 22:47:20Google App Engine 2アプ目
http://pc11.2ch.net/test/read.cgi/php/1243654802/
0249デフォルトの名無しさん
2009/07/27(月) 22:51:550250デフォルトの名無しさん
2009/07/27(月) 23:37:180251デフォルトの名無しさん
2009/07/27(月) 23:42:472.5.2 だったよ。
0252デフォルトの名無しさん
2009/07/28(火) 07:48:58def f(a, b=1, c=None):
print (a, b, c)
とあって、f(0) という呼び出し方をした時に、f() の中で実引数の数がいくつなのかを調べる方法があれば教えてください。
0253デフォルトの名無しさん
2009/07/28(火) 08:07:59じゃなくて
def f(*args):
defaults = (None, 1, None, )
len(args) で調べる
args = tuple(args) + defaults[len(args):]
とかした方がいい
0254デフォルトの名無しさん
2009/07/28(火) 08:59:52http://www.python.jp/doc/2.4/lib/inspect-classes-functions.html
標準モジュールも知らない低レベルプログラマは
今すぐPythonやめてPHPに戻れよ
0255デフォルトの名無しさん
2009/07/28(火) 09:04:44for x in L:
if something(x) == expected:
found = x
break
という処理をもっと簡潔にかけますか。
Ruby なら
found = L.find {|x| something(x) == expected }
という処理です。
内包表記で頑張ろうと思ったのですがbreakの仕方がわからず断念しました。
#Rubyは説明のために出したのであり、PythonとRubyとの比較をするつもりではないのでご了承下さい。
0256デフォルトの名無しさん
2009/07/28(火) 09:54:570257デフォルトの名無しさん
2009/07/28(火) 10:15:34元が xrange(一億) とかだった場合にすげー重くならない?
イテレータ使ってても,リスト内包表記で一旦
リスト化しちゃうと遅延評価はされなくなっちゃうよね?
0258デフォルトの名無しさん
2009/07/28(火) 11:37:56なんで?
おすすめは
zope
web.py
なの?
0259デフォルトの名無しさん
2009/07/28(火) 12:00:590260デフォルトの名無しさん
2009/07/28(火) 12:12:43スゲー
面白い書き方だなw
0261デフォルトの名無しさん
2009/07/28(火) 12:54:59牛乳飲めよ
0262デフォルトの名無しさん
2009/07/28(火) 13:12:03PHPに戻れよドカタ
0263デフォルトの名無しさん
2009/07/28(火) 13:18:20Django自体は問題ナッシング
むしろすばらしい
問題は日本のヤツら
0264デフォルトの名無しさん
2009/07/28(火) 14:54:130265デフォルトの名無しさん
2009/07/28(火) 15:14:13っていうか web 板の django スレが寂しすぎる件
0266デフォルトの名無しさん
2009/07/28(火) 18:01:09utilsだけで使うことが良くあるよ
0267デフォルトの名無しさん
2009/07/28(火) 22:28:19ありがとうございます!
でもPython3で動かない。。。。
Python2と3の両方で動く書き方はありませんか?
聞いてばかりですみません。
0268デフォルトの名無しさん
2009/07/28(火) 22:47:03python3の場合
(x for x in range(10) if x>=7).__next__()
0269デフォルトの名無しさん
2009/07/28(火) 23:10:51next(x for x in range(10) if x>=7)
だろ
0270デフォルトの名無しさん
2009/07/28(火) 23:18:400271デフォルトの名無しさん
2009/07/29(水) 01:56:490272デフォルトの名無しさん
2009/07/29(水) 06:29:23found変数をどう使いたいのか判らないけど、Pythonのfor文には
else 節があるので、後で if found is None: return とかするのであれば
その for 文を
for found in L:
if something(found) == expected:
break;
else:
return
みたいにはできるよ。
あと、 >>269 みたいなやり方をするなら、
found = next(x for x in L if somethong(x) == expected, None)
って二つ目に default を入れないと、見つからなかったときに next が
StopIteration 例外を出すよ。
0273デフォルトの名無しさん
2009/07/29(水) 06:34:350274デフォルトの名無しさん
2009/07/29(水) 09:54:00無理。デフォルト引数処理は関数呼び出しの直前に行われるから、f(..) の中ではデフォルト引数値が使われたか否かは判別できない。253 さんの示したように、関数の呼び出し方を変えて自分で調べるしかない。
ここらの Python の内部処理を知りたかったら http://www.nasuinfo.or.jp/FreeSpace/kenji/sf/python/virtualMachine/PyVM.htm を読め。少しマニアックだが。
0275デフォルトの名無しさん
2009/07/29(水) 11:49:53def __init__(self):
self.bar = range(5)
def __call__(self):
self.bar.reverse()
class hoge:
def __init__(self):
self.hage = foo()
self.foobar = self.hage.bar
self.hage()
cls = hoge()
print cls.foobar == cls.hage.bar
.foobarには、.hage.barの値をコピーしているだけですか?
それともポインタ的なものが入ってるんでしょうか?
0276デフォルトの名無しさん
2009/07/29(水) 12:10:48上の場合はリストだから参照になるね
0277252
2009/07/30(木) 07:00:23>標準モジュールも知らない低レベルプログラマは
>今すぐPythonやめてPHPに戻れよ
みなさんの怒りを買うような質問をしてしまい、申し訳ありませでした。
0278252の母
2009/07/30(木) 10:17:410279252の父
2009/07/30(木) 11:06:550280デフォルトの名無しさん
2009/07/30(木) 13:21:430281デフォルトの名無しさん
2009/07/30(木) 13:35:180282デフォルトの名無しさん
2009/07/30(木) 15:24:220283デフォルトの名無しさん
2009/07/30(木) 23:55:490284デフォルトの名無しさん
2009/07/31(金) 00:15:39私は、stringが完全Unicodeになってる3をすすめます。
0285デフォルトの名無しさん
2009/07/31(金) 00:50:07setが使えないので、1ヶ月で2.5に移行
その後、文字化けが面倒なので2ヶ月で3に移行
最初から3にすれば良かった
てかemacsで文字化けする
しかもWindowsのエラーで、プロンプトからemacs起動出来ないから直し方わかんね
結局UTF-8使ってない
0286デフォルトの名無しさん
2009/07/31(金) 00:58:210287デフォルトの名無しさん
2009/07/31(金) 01:07:20未だに 2.x だけどな。
0288デフォルトの名無しさん
2009/07/31(金) 01:13:02対するRubyは1.9.2でだいぶ動作がマシになった。
完全に抜かれちゃったなあ
0289デフォルトの名無しさん
2009/07/31(金) 06:29:420290283
2009/07/31(金) 07:11:16参考にします
0291デフォルトの名無しさん
2009/07/31(金) 11:55:24用途次第だけど2.5がライブラリ豊富で一番良いよ
0292デフォルトの名無しさん
2009/07/31(金) 12:43:590293デフォルトの名無しさん
2009/07/31(金) 12:45:542.5 でなく 2.6 を勧める理由が意味不明
0294デフォルトの名無しさん
2009/07/31(金) 13:42:380295デフォルトの名無しさん
2009/07/31(金) 14:29:150296デフォルトの名無しさん
2009/07/31(金) 17:29:14サーバが止まりまくりのDjangoなんて使えたって意味ないだろ
0297デフォルトの名無しさん
2009/07/31(金) 18:04:010298デフォルトの名無しさん
2009/07/31(金) 18:23:070299デフォルトの名無しさん
2009/07/31(金) 22:28:32どうして止まるんだろう...。
0300デフォルトの名無しさん
2009/07/31(金) 22:34:20デベロップ用のサーバで公開したのかなw
0301デフォルトの名無しさん
2009/07/31(金) 22:46:12Pythonのthreadやthreadingモジュールだと
実際には同時平行で複数のスレッドが実行されないって本当ですか?
並列化するのにお勧めのモジュールってありませんか?
0302デフォルトの名無しさん
2009/07/31(金) 23:03:13http://ja.wikipedia.org/wiki/%E3%82%B0%E3%83%AD%E3%83%BC%E3%83%90%E3%83%AB%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%97%E3%83%AA%E3%82%BF%E3%83%AD%E3%83%83%E3%82%AF
http://docs.python.org/library/multiprocessing.html
0303デフォルトの名無しさん
2009/08/01(土) 01:35:18すみません、わかりません。答えを教えてください。
0304デフォルトの名無しさん
2009/08/01(土) 02:47:30http://ja.wikipedia.org/wiki/CPython#.E4.B8.A6.E5.88.97.E6.80.A7.E3.81.AB.E9.96.A2.E3.81.99.E3.82.8B.E5.95.8F.E9.A1.8C
0305デフォルトの名無しさん
2009/08/01(土) 06:49:350306デフォルトの名無しさん
2009/08/01(土) 07:33:59multiprocessing モジュールがお勧め。並列性のある問題を解くのに使えば
複数プロセスが同時に並列実行されてちゃんと台数効果が出ます。
0307デフォルトの名無しさん
2009/08/01(土) 07:42:54まだ止まってんのかwwwwww
0308デフォルトの名無しさん
2009/08/01(土) 09:01:10アッーー!
0309デフォルトの名無しさん
2009/08/01(土) 10:37:07ありがとうございます。
GILがあって今一つ並列実行しにくいのでプロセスをフォークするんですね。
スレッドのタスクが重ければフォークのコストは大したことないですが、
リソースの共有が大変になるんでしょうか。
Core i7で8コアもあるのでそろそろ並列化をまじめに考えなくちゃと思っているので、とりあえずいじってみます。
それから>>303は私じゃないです。
0310デフォルトの名無しさん
2009/08/01(土) 11:04:310311デフォルトの名無しさん
2009/08/01(土) 12:08:53煽ってるバカ何なの
0312デフォルトの名無しさん
2009/08/01(土) 13:42:23なんたるマルウエア!!
0313デフォルトの名無しさん
2009/08/01(土) 14:34:430314デフォルトの名無しさん
2009/08/01(土) 14:47:37>件のページはdjangoじゃなくてサーバ自体が落ちてんだろ
Apacheは応答してるっぽいから、サーバ自体が落ちているという事はないのでは?
Dangoの人は適当で信用ならない
0315デフォルトの名無しさん
2009/08/01(土) 16:28:33昔の有名なギタリストにいるよね
0316デフォルトの名無しさん
2009/08/01(土) 16:35:360317デフォルトの名無しさん
2009/08/01(土) 17:30:33一方日本でdjangoを使っている人は"ドジャンゴ"や"ダンジョー"と呼ばれています
0318デフォルトの名無しさん
2009/08/01(土) 19:33:53一方日本でdjangoを使っている人は"ドジャンゴ"や"ダンジョー"とruby厨は呼びます
0319デフォルトの名無しさん
2009/08/02(日) 02:03:590320デフォルトの名無しさん
2009/08/02(日) 02:11:46ちなみに我らがPython神のGuido van Rossumは、BDFLと呼ばれる。
0321デフォルトの名無しさん
2009/08/02(日) 03:53:300322デフォルトの名無しさん
2009/08/02(日) 08:35:110323デフォルトの名無しさん
2009/08/02(日) 10:52:390324デフォルトの名無しさん
2009/08/02(日) 13:03:550325デフォルトの名無しさん
2009/08/02(日) 16:25:090326デフォルトの名無しさん
2009/08/03(月) 04:07:02としたときに、patからもとの文字列('.*¥¥.html$')を取り出すことはできますか。
よろしくおねがいします。
0327デフォルトの名無しさん
2009/08/03(月) 04:14:090328デフォルトの名無しさん
2009/08/03(月) 04:47:12ありがとうございました。
ところで dir(pat) としても pattern というのは出てこないのですが、どういうことでしょうか。
0329デフォルトの名無しさん
2009/08/03(月) 05:12:00復活したみたい
0330デフォルトの名無しさん
2009/08/03(月) 08:26:53(´・ω・`)知らんがな
0331デフォルトの名無しさん
2009/08/03(月) 09:44:20(´・ω・`)知らんがな
0332デフォルトの名無しさん
2009/08/03(月) 10:48:23どのフレームワークがお勧めよ
0333デフォルトの名無しさん
2009/08/03(月) 14:22:490334デフォルトの名無しさん
2009/08/03(月) 14:23:59民間人に送られる最高の爵位・ダショー。
0335デフォルトの名無しさん
2009/08/03(月) 15:25:06ダショーレベルでも鯖運営に支障をきたすくらいの低スキル
0336デフォルトの名無しさん
2009/08/03(月) 18:29:06ジャンゴの話題になるとどこからともなく湧いてくるな
0337デフォルトの名無しさん
2009/08/03(月) 19:31:03不思議だね。
0338デフォルトの名無しさん
2009/08/03(月) 20:04:54help(re)
でも出てこない
0339デフォルトの名無しさん
2009/08/03(月) 20:09:03ttp://www.python.jp/doc/release/lib/re-objects.html
ここの一番下には書いてある
0340デフォルトの名無しさん
2009/08/03(月) 21:26:110341デフォルトの名無しさん
2009/08/03(月) 22:13:09コメントを取得するコードを参考にして、拡張子を.cgiで実行しましたがスクリプトエラーになってしまいます。
どこが問題でしょうか?
0342デフォルトの名無しさん
2009/08/03(月) 22:19:23人に尋ねる前に自分でデバッグしてご覧。
Webにアップするスクリプトも最初はローカルで動かして様子を見るものなんだよ。
0343デフォルトの名無しさん
2009/08/03(月) 22:22:02ありがとうございます。
出直してきます。
0344デフォルトの名無しさん
2009/08/03(月) 22:24:23そのコードのコピー元と思われるブログには続きがある
http://d.hatena.ne.jp/imakami/20081224/1230130732
0345デフォルトの名無しさん
2009/08/05(水) 18:45:37"""コメント"""
print "hello"
Python では上のように関数定義の最初の文字列リテラルが関数のドキュメントになるそうですが、
これの呼び名ってありますか。
「関数コメント」とか「関数ドキュメント」で通じるでしょうか。
0346デフォルトの名無しさん
2009/08/05(水) 18:57:12ほい。
http://www.python.jp/doc/release/ref/types.html
0347デフォルトの名無しさん
2009/08/05(水) 18:59:310348デフォルトの名無しさん
2009/08/05(水) 19:14:09一気にGoogleケータイ欲しくなった・・・
三月に変えたばかりなんだが。
0349デフォルトの名無しさん
2009/08/06(木) 03:39:03ほほう。といっても何に使えばいいのか思い付かない俺ww
0350デフォルトの名無しさん
2009/08/06(木) 15:06:430351デフォルトの名無しさん
2009/08/07(金) 13:19:04Launchpad作り始めた時は、まだDjangoがマイナーだったとか。想像だけど。
0352デフォルトの名無しさん
2009/08/08(土) 08:11:08Python ダウンロードしたいんだけど、どこかミラーない?
ftp.python.jp は 2.5 までしかないみたいだし。
0353デフォルトの名無しさん
2009/08/08(土) 09:00:56http://sunsite.informatik.rwth-aachen.de/python/ftp/python/
とかどう?
http://www.freebsd.org/cgi/pds.cgi?ports/lang/python26
で見つけた。
0355デフォルトの名無しさん
2009/08/08(土) 19:41:220356デフォルトの名無しさん
2009/08/08(土) 21:44:16><>353 感謝ですっ
0358デフォルトの名無しさん
2009/08/09(日) 01:40:12lxmlでどうにか
0359デフォルトの名無しさん
2009/08/09(日) 02:03:21何の話だw
0360デフォルトの名無しさん
2009/08/09(日) 14:53:36知らないのか?
Python3.0でSGMLParserがなくなったんでBeautifulSoup3.1.0以降では
SGMLParserの代わりにHTMLParserを使うようになったんで、
これまでパースできたちょっと崩れたHTMLがパースできなくなってる。
開発者は、もうツマンネーからこれ以上の対応をする気はねーよ、らしい。
http://www.crummy.com/software/BeautifulSoup/3.1-problems.html
0361デフォルトの名無しさん
2009/08/09(日) 15:20:46BS使ってるモジュールがどれほどあるのか知らないけど
Py3.0への移行の支障になったりして
0362デフォルトの名無しさん
2009/08/09(日) 15:47:52Zopeなんてどんだけかかるんだか
0363デフォルトの名無しさん
2009/08/09(日) 17:07:260364デフォルトの名無しさん
2009/08/09(日) 17:54:18PEP 257
0365デフォルトの名無しさん
2009/08/09(日) 18:11:090366デフォルトの名無しさん
2009/08/09(日) 18:40:44不作法なHTMLをパースさせるのに
役立っていたんだがのう
elemental treeって今のバージョンは
その辺耐性あるのかしら。
0367デフォルトの名無しさん
2009/08/09(日) 19:13:040368デフォルトの名無しさん
2009/08/10(月) 07:49:28それはツマンネーな
0369デフォルトの名無しさん
2009/08/10(月) 09:26:400370デフォルトの名無しさん
2009/08/10(月) 09:50:49ここでopy2on(別名おっぱい)というのをやってます
0371デフォルトの名無しさん
2009/08/11(火) 00:38:422chに書き込むスクリプトをPython 3.0.1(Windowsです)で書いてみたのですが
urllib.parse.urlencode()でShift-JISの文字列を
期待通りにURLエンコード(パーセントエンコーディング)できません。
{"s":"あ"}をurlencode()して"s=%82%A0"がほしいのですが
普通にやると下のようになります。。
何か良い解決策はないでしょうか?
>>> import urllib.parse
>>> s = "あ".encode("shift-jis")
>>> print(urllib.parse.urlencode({"s":s}))
s=b%27%5Cx82%5Cxa0%27
いろいろ試してみたところ、quote()やquote_plus()では
期待通りの値(%82%A0)が返ってきましたが
urlencode()は中でdict内のstr以外の値にstr()をあててquote_plus()しているので
期待通りの値が返ってこないことがわかりました。
…2.6とかにしたほうがいいでしょうか><
0372デフォルトの名無しさん
2009/08/11(火) 00:54:04報告されてた http://bugs.python.org/issue5468
0373371
2009/08/11(火) 02:11:52ありがとうございます!バグですか。。
3.0.1での解決策って
必要なところだけquote_plus()して自分で文字列連結するくらいですかね?
0374デフォルトの名無しさん
2009/08/11(火) 04:25:550375デフォルトの名無しさん
2009/08/11(火) 06:32:45from _socket import *
(socket.py 45)
こういうふうに一つのモジュールで二つの方法でインポートするのは
どういう意図があってのことなんでしょうか?
0376デフォルトの名無しさん
2009/08/11(火) 06:56:37普通はこういうこと考えなくていいよ
0377デフォルトの名無しさん
2009/08/11(火) 08:17:34自分が何やっているのかわからなくなるぜ
0378デフォルトの名無しさん
2009/08/11(火) 09:53:520379デフォルトの名無しさん
2009/08/11(火) 10:06:27from/importの使い分けはいざ説明しようとなると面倒だな…
0380デフォルトの名無しさん
2009/08/11(火) 10:19:43記述を減らす分には置換を掛ければ一発さ。
でも記述をフル識別子化するのはそうもいかない。
0381デフォルトの名無しさん
2009/08/11(火) 12:30:41それもわかる。記述量・速度と可読性のトレードオフなんだよね。
>380
タイプ量が多い事自体がまず問題じゃね?
IDEの入力支援がある前提なら、問答無用でfrom禁止でも良いと思うけど。
0383デフォルトの名無しさん
2009/08/11(火) 15:14:04Я шестьдесят лет.
0384デフォルトの名無しさん
2009/08/11(火) 21:52:400385デフォルトの名無しさん
2009/08/11(火) 22:09:10Javaみたいなのはうんざりだよ。
0386デフォルトの名無しさん
2009/08/11(火) 22:10:15なんかいいのないの
0387デフォルトの名無しさん
2009/08/11(火) 22:45:370388デフォルトの名無しさん
2009/08/11(火) 22:55:07パイソナー
パイン
0389デフォルトの名無しさん
2009/08/11(火) 23:17:570390デフォルトの名無しさん
2009/08/11(火) 23:51:01×パイソンマン
○パイソンパーソン
どこかの怖いヒスおばさんに怒られるぉw
0391デフォルトの名無しさん
2009/08/12(水) 05:57:450392デフォルトの名無しさん
2009/08/12(水) 07:20:28すごく、厨二くさいです…
0393デフォルトの名無しさん
2009/08/12(水) 10:10:330394デフォルトの名無しさん
2009/08/12(水) 10:14:220395デフォルトの名無しさん
2009/08/12(水) 10:55:571)
import longlonglongnamemodule
longlonglongnamemodule.hogehoge()
2)
from longlonglongnamemodule import hoge
hoge()
3)
import longlonglongnamemodule as m
m.hoge()
0397デフォルトの名無しさん
2009/08/12(水) 12:35:310398デフォルトの名無しさん
2009/08/12(水) 12:59:450399デフォルトの名無しさん
2009/08/12(水) 13:19:590400デフォルトの名無しさん
2009/08/12(水) 15:40:123
>> hoge(-5, 3)
-2
こういう関数ってありますか?
0401デフォルトの名無しさん
2009/08/12(水) 16:23:030402デフォルトの名無しさん
2009/08/12(水) 16:44:160403デフォルトの名無しさん
2009/08/12(水) 16:57:040404デフォルトの名無しさん
2009/08/12(水) 17:29:040405デフォルトの名無しさん
2009/08/12(水) 17:32:470406デフォルトの名無しさん
2009/08/12(水) 17:35:360407デフォルトの名無しさん
2009/08/12(水) 17:36:520408デフォルトの名無しさん
2009/08/12(水) 17:58:530409デフォルトの名無しさん
2009/08/12(水) 23:29:10ゆとりだなあ
0410デフォルトの名無しさん
2009/08/13(木) 00:31:350411デフォルトの名無しさん
2009/08/13(木) 09:57:160412デフォルトの名無しさん
2009/08/13(木) 10:06:210413デフォルトの名無しさん
2009/08/13(木) 15:57:55即日ってすでに炎上してるっぽいんだが
こういうのに手を出したがるおめでたいヤツって今時居るのかね
0414デフォルトの名無しさん
2009/08/14(金) 09:35:04Death march
0415デフォルトの名無しさん
2009/08/14(金) 21:42:05naze django wo tsukattanoni enjou surunokana ?
0416デフォルトの名無しさん
2009/08/15(土) 00:42:42black dakara
0417デフォルトの名無しさん
2009/08/15(土) 01:41:50世の中デスマだらけだな
いや、事実デスマだらけなのか・・・
0418デフォルトの名無しさん
2009/08/15(土) 02:52:340419デフォルトの名無しさん
2009/08/15(土) 07:11:30報告ヨロ
0420デフォルトの名無しさん
2009/08/15(土) 08:00:54どっかで見たような気がしたから調べたら、Tim Petersのアルゴリズムだった。
意外とすごいぞPython
0421デフォルトの名無しさん
2009/08/15(土) 09:03:18仕事のない駄目プログラマ乙www
0422デフォルトの名無しさん
2009/08/15(土) 09:08:090423デフォルトの名無しさん
2009/08/15(土) 09:10:030424デフォルトの名無しさん
2009/08/15(土) 09:17:060425デフォルトの名無しさん
2009/08/15(土) 10:30:46キミはなにやってもムリだと思う。
コンビニのバイトとかもムリ。肉体労働はもっとムリ。
0426デフォルトの名無しさん
2009/08/15(土) 10:33:350427デフォルトの名無しさん
2009/08/15(土) 11:21:380428デフォルトの名無しさん
2009/08/15(土) 11:37:00そんなに使われてるん? 日本で。
0429デフォルトの名無しさん
2009/08/15(土) 11:58:17- ブラック企業
- 低脳開発者(たいていはもとPHP使い)
- ITドカタ
厨房 / ブラック御用達フレームワークということですかね
0430デフォルトの名無しさん
2009/08/15(土) 12:16:460431デフォルトの名無しさん
2009/08/15(土) 12:56:080432デフォルトの名無しさん
2009/08/15(土) 13:08:05-サーバが落ちていることより角電池が気になるひとびと
これ追加。
0433デフォルトの名無しさん
2009/08/15(土) 13:18:570434デフォルトの名無しさん
2009/08/15(土) 19:24:180435デフォルトの名無しさん
2009/08/16(日) 08:19:01つまりGoogleはブラック、と
0436デフォルトの名無しさん
2009/08/16(日) 10:42:48揚げ足とれてない
0437デフォルトの名無しさん
2009/08/16(日) 11:44:580438デフォルトの名無しさん
2009/08/16(日) 14:33:21逃げたりバックれたりするレベル
0439デフォルトの名無しさん
2009/08/16(日) 16:22:35ググっても情報がないので何か情報をお願いします
0440デフォルトの名無しさん
2009/08/16(日) 16:29:07>こういうのに手を出したがるおめでたいヤツって今時居るのかね
ストックオプションという言葉に釣られる人が未だにいるくらいだから、居るんじゃね?
0441デフォルトの名無しさん
2009/08/16(日) 16:39:56バイナリの実行プログラムをLinuxでもWindowsでも
実行可能にするのがどれだけ大変なことか考えたことはあるのか?
ただし、Linux上でWindows上で実行可能なexeを作る「だけ」なら環境を構築してあげれば可能かもしれない。
当然Linux上ではそのexeは動作しないが。
0442デフォルトの名無しさん
2009/08/16(日) 17:56:000443デフォルトの名無しさん
2009/08/16(日) 19:11:44申し訳ない
どうやら私の書き方が悪かったみたいですね
書き直します
Linux上で作ったソフトをLinux上のpy2exeでバイナリ作成して
その作成したバイナリをWindowsで動かすことは可能ですか?
とりあえず今知りたいことは
・そもそもLinux上でpy2exeは利用可能なのか?
・それはWineなどを経由しなくても可能なのか?
・Linuxで作成が可能ならそういった情報が載ったサイトなどを知りたい
よろしくお願いします
0444デフォルトの名無しさん
2009/08/16(日) 19:18:290445デフォルトの名無しさん
2009/08/16(日) 19:21:31Linuxに依存するようなことをやってたらどっちにしろ動かない。
0446デフォルトの名無しさん
2009/08/16(日) 19:21:370447デフォルトの名無しさん
2009/08/16(日) 19:22:14人の話を聞けよ。
>ただし、Linux上でWindows上で実行可能なexeを作る「だけ」なら環境を構築してあげれば可能かもしれない。
>当然Linux上ではそのexeは動作しないが。
って先に答えを書いてるじゃないか。
py2exeがやってることはpycをzipで固めて1exe化した
pythonインタプリタにくっつけているだけなので、やろうと思えば他のOS上でもできる。
0448デフォルトの名無しさん
2009/08/16(日) 19:29:05・lenny
http://packages.debian.org/ja/lenny/python
・squeeze
http://packages.debian.org/ja/squeeze/python
・sed
http://packages.debian.org/ja/sid/python
・experimental
デフォルト
http://packages.debian.org/experimental/python
etc...
http://packages.debian.org/experimental/python2.6
http://packages.debian.org/experimental/python3
http://packages.debian.org/experimental/python3.1
0449デフォルトの名無しさん
2009/08/16(日) 20:03:11すんません、aptラインの書き方わかんないす・・・orz
0450デフォルトの名無しさん
2009/08/16(日) 20:08:25experimentalパッケージでも入れると申すか!
悪いことは言わんまだ使うな
0451デフォルトの名無しさん
2009/08/16(日) 20:10:26おまえも人の話聞けよ
0452デフォルトの名無しさん
2009/08/16(日) 20:31:470453デフォルトの名無しさん
2009/08/17(月) 13:26:19あ〜、なるほど
なんかもやもやしてたのがすっきりした!
0454デフォルトの名無しさん
2009/08/17(月) 17:01:570455デフォルトの名無しさん
2009/08/17(月) 17:28:58めんどくさすぎて死んだ
asdfみたいな簡単な仕組みはないの?
0456デフォルトの名無しさん
2009/08/17(月) 17:50:090457デフォルトの名無しさん
2009/08/17(月) 18:34:23型を判定することができますか?
0458デフォルトの名無しさん
2009/08/17(月) 18:41:590459デフォルトの名無しさん
2009/08/17(月) 19:12:45Linux上でPy2Exeは動かない
WineでWinのPython実行環境を構築すれば、
Python作ソフトをPy2ExeでExe化可能かもしれない
(やったことはないので確証は無い)
元よりWin上でPyhtonスクリプトをExe化する
ものだから(どこの説明でもそう書いて
あるのだが…)、WinでのPython実行環境が無いと
Exe化した際の不具合の特定が面倒だよ。
0460デフォルトの名無しさん
2009/08/17(月) 23:51:13ttp://coreblog.org/ats/see-the-object-inspector
ttp://inky.github.com/see/
高機能なdir()って感じでなかなかよさげ
0461デフォルトの名無しさん
2009/08/18(火) 00:45:58XP (note) で作った exe が他の XP (note) では動くのに
XP (netbook) で動かなくて焦ったことはある
0462デフォルトの名無しさん
2009/08/18(火) 00:47:210463デフォルトの名無しさん
2009/08/18(火) 09:13:06初心者を抜け出す第一歩だよ。
とりあえず、VC++ Runtime Library の 2005 か 2008 の再頒布可能パッケージを
インストールしてみな。
0464デフォルトの名無しさん
2009/08/18(火) 10:30:43ttp://d.hatena.ne.jp/gunyara-python/20090531/hello_py2exe
0465デフォルトの名無しさん
2009/08/18(火) 10:39:090466デフォルトの名無しさん
2009/08/18(火) 11:02:090467デフォルトの名無しさん
2009/08/18(火) 11:07:160468デフォルトの名無しさん
2009/08/18(火) 16:23:58アッー!
0469デフォルトの名無しさん
2009/08/18(火) 16:26:120470デフォルトの名無しさん
2009/08/18(火) 18:29:59cx_FreezeはなんでVC++ランタイムライブラリを
配布できるんだ?
PSFライセンスの絡みであの手のライブラリは勝手に
配布しちゃいかんのじゃないの?
そのためPy2Exeはわざと除外してんだろう
0471デフォルトの名無しさん
2009/08/18(火) 19:01:57顔写真貼ればもっと盛り上がるよ
0472デフォルトの名無しさん
2009/08/18(火) 20:56:04ちゃんとした色設定ファイルがありません。
原理的にどこかにあると思うんですけど、
(IDLEと同じくらいの)
keyword(演算子、組み込み変数、組み込み関数、予約語等)をまとめたファイルって
どこかにないのでしょうか?
0473デフォルトの名無しさん
2009/08/18(火) 22:09:04?
「原理的」の意味が分からない
というかサクラエディタのスレで聞いた方がいいのでは?
0474デフォルトの名無しさん
2009/08/18(火) 22:16:06def importable(name):
try:
__import__(name)
except Exception:
return False
return True
def toplevel_modules(path):
for root, dirs, files in os.walk(path):
names = itertools.chain(dirs, (os.path.splitext(i)[0] for i in files))
for name in names:
if importable(name):
yield name
break
if __name__ == '__main__':
words = set(keyword.kwlist)
words.update(dir(__builtins__))
for i in dir(__builtins__): words.update(dir(getattr(__builtins__, i)))
stdout = sys.stdout
for path in sys.path: words.update(i for i in toplevel_modules(path))
sys.stdout = stdout
for i in sorted(words): print i
自前で作ればいいんだよ
0475デフォルトの名無しさん
2009/08/18(火) 23:28:28MySQLdbがPython 2.6どまりなことに気づいた・・
どうしよ
SQLite用に書いていたソフトを
MySQL用にしたいだけなんだけど
既に本体は Python 3.x にべったりで書いてる
死にたい
0476デフォルトの名無しさん
2009/08/18(火) 23:40:06と思ったけど 3.x 系はリリースされてなかった
http://code.google.com/p/pyodbc/downloads/list
0477デフォルトの名無しさん
2009/08/18(火) 23:42:020478デフォルトの名無しさん
2009/08/19(水) 00:10:020479デフォルトの名無しさん
2009/08/19(水) 00:28:140480デフォルトの名無しさん
2009/08/19(水) 08:31:360481デフォルトの名無しさん
2009/08/19(水) 18:20:43実際にどのバージョンが入っているかご存知の方はいらっしゃいますか?
0482デフォルトの名無しさん
2009/08/19(水) 18:28:33良くて 2.4 と予想
0483デフォルトの名無しさん
2009/08/19(水) 19:20:420484デフォルトの名無しさん
2009/08/19(水) 19:21:14言ってる事おかしくね?
0485デフォルトの名無しさん
2009/08/19(水) 22:16:30#include <ctypes.h>
こうですか?わかりません><
0486デフォルトの名無しさん
2009/08/19(水) 22:27:300488デフォルトの名無しさん
2009/08/20(木) 12:10:46こんな風にころころ変えられるのも困るかも
ttp://php-sql-gdgd.jugem.jp/?eid=66
ttp://php-sql-gdgd.jugem.jp/?eid=67
0489デフォルトの名無しさん
2009/08/20(木) 12:31:43これで3.0系にアップデートされたら阿鼻叫喚になるなw
0490デフォルトの名無しさん
2009/08/20(木) 13:01:44ご存知の方はいらっしゃいますか?
0491デフォルトの名無しさん
2009/08/20(木) 22:08:58http://pc11.2ch.net/test/read.cgi/pcnews/1250773470/
0492デフォルトの名無しさん
2009/08/20(木) 22:25:42と
[ "a" ] * 10
は下の方が早い?
0493デフォルトの名無しさん
2009/08/20(木) 22:26:290494デフォルトの名無しさん
2009/08/20(木) 22:29:330495デフォルトの名無しさん
2009/08/21(金) 02:24:430496デフォルトの名無しさん
2009/08/21(金) 07:45:47を
[ "a" ] * 10
みたいな書き方できますか?
0497デフォルトの名無しさん
2009/08/21(金) 08:33:54pyqtは使わないほうがいいのか?
0498デフォルトの名無しさん
2009/08/21(金) 09:54:310499デフォルトの名無しさん
2009/08/21(金) 11:07:03エラーメッセージ中のスタックトレースが
ジェネレータ呼び出しまでの部分しか出力されません。
ジェネレータの内部以降のスタックトレースも
出力されるようにするにはどうすればいいのでしょうか。
処理系はIronPythonです。
0500デフォルトの名無しさん
2009/08/21(金) 13:19:35下は1つを参照してるんじゃないかな?
0501デフォルトの名無しさん
2009/08/21(金) 13:23:51文字列はimmutableだから、ひとつのオブジェクトへの参照のリストになって問題なし。
実際、上のも (CPythonの実装では) 全部同一オブジェクトを参照するよ。
リストのリストを作りたいときは、
[[] for x in xrange(10)]
の方が良いね。
0502デフォルトの名無しさん
2009/08/21(金) 22:16:40ジェネレータの内部で
try
except
print traceback
0503デフォルトの名無しさん
2009/08/22(土) 12:58:440504デフォルトの名無しさん
2009/08/22(土) 15:12:30どもども。
手元で追試してみたら、499で書いた制限がCPythonでもIronPythonでも発生しない。
(それぞれ標準コンソールでテスト)
実はPythonインタプリタはC#プログラムから自前で呼び出してるんだが、
そこの初期化なりトラップ法なりが間違っているような気がしてきた。
0505デフォルトの名無しさん
2009/08/22(土) 17:02:41クラスの先頭に """のれそれ""" 書いてドキュメントとしています.
pydoc にかけるとそれらはただ単なる文字列として表示されるだけ
なんですが,なんかこう,定められたフォーマットとかあるんでしょうか?
それとは別にどっかで見たので __author__ とか __licence__ とか
設定してみたんですが,pydoc はそういうのはガン無視らしいです.
いままで覚書をコメント文で書いていたんですが,
ドキュメントのこともそろそろちゃんと考えないと
自分的に破たんする(先月の自分は自分じゃない)とおもって
Python使いの方はどうやってるのかと.
0506デフォルトの名無しさん
2009/08/22(土) 17:11:24EpydocとかPydoctorとか調べてみて。
0507デフォルトの名無しさん
2009/08/22(土) 17:39:33このあたりを参考にして書けばいいんじゃないの?
http://www.python.jp/doc/contrib/peps/pep-0257.txt
0508365
2009/08/22(土) 19:09:340509デフォルトの名無しさん
2009/08/22(土) 20:43:560510デフォルトの名無しさん
2009/08/22(土) 21:18:16rangeのようにパラメータの与え方で
逆に動くかとも思って試したが出来なかった。
ソース(Ver2.6,Ver3.1)を見るとこうなってる。
for (i = start; i < stop && i < Py_SIZE(self); i++) {
start>stopでデクリメントされればな〜とでも
MLに投げればそのうち実装されるんじゃねw
0511デフォルトの名無しさん
2009/08/22(土) 21:48:01できれば高精度で(1/100秒くらいで)計測したいと思っています.
datetime を使って現在時刻を取得するのではとても精度が
悪いのですが,Pythonの中だけで完結できる方法としては
ほかにどのような方法があるでしょうか?
timeit は上のような用途には適してないと思います.
ある関数内での処理時間を計測するには使えると思いますが,
複数のチェックポイントで次々とというのには不向きかと
0512デフォルトの名無しさん
2009/08/22(土) 21:55:11time.time()かtime.clock()じゃ不十分なのかな
0513デフォルトの名無しさん
2009/08/22(土) 22:17:56そのまま print しても見やすくフォーマットしてくれるなぁ,と.
で,datetime.datetime.now() でも十分な精度でした.
テストした環境がVMで,しかもその上で動かしてるLinuxカーネルの
タイマ割り込みの周期が1000回/秒だったせいで時計がずれまくってた
だけだった.
つーわけで俺のかんちguyでした
0514デフォルトの名無しさん
2009/08/22(土) 22:33:33Pythonであれこれimportしているせいか
全ての import が終わるまで10秒くらいかかってます.
で,そのあとの処理はさくさくと.
bogomips が500を切るNASでやってるのが悪いのですが,
import を早く済ませるテクニックとかあるんでしょうか.
そりゃ絶対的に必要な時間はしかたないですが・・・
ちゃんと pyc もできてるし,打つ手はないかなぁ
0515デフォルトの名無しさん
2009/08/22(土) 23:07:1610秒もかかるってことは、どれかのモジュールのグローバルに重い処理があるんじゃない?
0516デフォルトの名無しさん
2009/08/23(日) 00:46:19ある
0517デフォルトの名無しさん
2009/08/23(日) 02:47:03テストした環境がVM?
0518デフォルトの名無しさん
2009/08/23(日) 11:09:270519デフォルトの名無しさん
2009/08/24(月) 02:12:488時間悩んだバグが単なる変数の再初期化のし忘れでした。
このやりきれない気持ちをどうすればよいですか。
0520デフォルトの名無しさん
2009/08/24(月) 02:26:18自動テストを書く。
0521デフォルトの名無しさん
2009/08/24(月) 02:52:140522デフォルトの名無しさん
2009/08/24(月) 06:20:03(´・ω・) おやすみ・・・
_| ⊃/(___
/ └-(____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄
0523デフォルトの名無しさん
2009/08/24(月) 08:54:40(´・ω・) おはヨーグルト!
_| ⊃/(___
/ └-(____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄
0524デフォルトの名無しさん
2009/08/24(月) 09:28:29変数名の使い回しなんて最悪だ
0525デフォルトの名無しさん
2009/08/24(月) 10:30:420526デフォルトの名無しさん
2009/08/24(月) 11:27:270527デフォルトの名無しさん
2009/08/24(月) 14:20:39from hoge import *だとそのファイルの物になって、複数ファイルでfromするとメモリ消費しますか?
0528デフォルトの名無しさん
2009/08/24(月) 14:29:54消費しない。
あるモジュールがはじめてimportされるとき、モジュールオブジェクトが作られて、
sys.modulesに保存される。
#a.py
print 'hello, I'm a'
#b.py
print "hello"
import a
a.foo = 'bar'
import c
#c.py
import a
print 'hello, I'm c'
print a.foo
$python b.py
してみて。
次に、 c の import a を、 import sys; a = sys.modules['a'] で置き換えてみて。
0529デフォルトの名無しさん
2009/08/24(月) 16:32:270530デフォルトの名無しさん
2009/08/24(月) 18:11:11薄荷無羊駝(シソ科ハッカ属)、咲かなかったのか。
白化村(色素が抜けて全身真っ白の人しかいない伝説の村)、まさか無かったのか。
0531デフォルトの名無しさん
2009/08/24(月) 18:25:140532デフォルトの名無しさん
2009/08/24(月) 22:23:570533デフォルトの名無しさん
2009/08/24(月) 22:46:28http://www.gtsystem.eu/blog/2009/08/improved-performance-of-python-31/
0534デフォルトの名無しさん
2009/08/25(火) 08:52:01ttp://image.blog.livedoor.jp/insidears/imgs/7/a/7a713e87-s.jpg
こんな風だった
0535デフォルトの名無しさん
2009/08/25(火) 11:20:32アンチ自民キモイな。
0536デフォルトの名無しさん
2009/08/25(火) 15:16:56タプル同士をベクトルみたいに足し算するのはどうやるの?
ab = (1, 2)
ac = (3, 4)
abc = (ab[0]+ac[0], ab[1]+ac[1])
0537デフォルトの名無しさん
2009/08/25(火) 15:25:340538デフォルトの名無しさん
2009/08/25(火) 15:51:310539デフォルトの名無しさん
2009/08/25(火) 15:53:230540デフォルトの名無しさん
2009/08/25(火) 15:53:48ac = 3 + 4j
abc = ab + ac
0541デフォルトの名無しさん
2009/08/25(火) 15:57:380542デフォルトの名無しさん
2009/08/25(火) 15:59:04タプルを複素数にするのはどうやるの?
0543デフォルトの名無しさん
2009/08/25(火) 15:59:25tuple(ai + bi for ai, bi in zip(a, b))
おまけ:2ノルム
math.sqrt(sum(ai * bi for ai, bi in zip(a, b)))
0544デフォルトの名無しさん
2009/08/25(火) 16:03:02tup = (1, 2)
complex(*tup)
0545デフォルトの名無しさん
2009/08/25(火) 16:12:47complex(*ab)+complex(*ac)
0546デフォルトの名無しさん
2009/08/25(火) 16:13:35thx!
つまらない質問で悪いんだが、
複素数をタプルにするのはどうやるの?
0547デフォルトの名無しさん
2009/08/25(火) 16:16:44((complex(*ab)+complex(*ac)).real, (complex(*ab)+complex(*ac)).imag)
0548デフォルトの名無しさん
2009/08/25(火) 16:56:390549デフォルトの名無しさん
2009/08/25(火) 17:32:010550デフォルトの名無しさん
2009/08/25(火) 21:57:230551デフォルトの名無しさん
2009/08/26(水) 05:00:020552デフォルトの名無しさん
2009/08/26(水) 15:14:200553デフォルトの名無しさん
2009/08/26(水) 17:20:300554デフォルトの名無しさん
2009/08/26(水) 18:08:06def gettext_noop(string, **kwargs):
retval = string
if kwargs:
retval %= kwargs
return retval
0555デフォルトの名無しさん
2009/08/26(水) 18:54:290556デフォルトの名無しさん
2009/08/26(水) 18:55:560557デフォルトの名無しさん
2009/08/26(水) 20:02:250558デフォルトの名無しさん
2009/08/26(水) 20:24:36みたいなフォーマット文字列の書き方とはもうサヨナラ?
悲しすぎる.
0559デフォルトの名無しさん
2009/08/26(水) 20:57:35%sdefとかだと文字とフォーマット表記が混じって読みにくい
0560デフォルトの名無しさん
2009/08/26(水) 21:06:58他の書式にされると覚えにくくて困る
ええC#のことです
0561デフォルトの名無しさん
2009/08/26(水) 23:53:370562デフォルトの名無しさん
2009/08/27(木) 01:08:25dict_ = {}
dict_["tag"] = "a"
dict_["attr"] = 'href="http://localhost:8080/"'
dict_["name"] = "hack you"
LINK % dict_
MENU = "<menu>\n%(item)s</menu>"
ITEM = "<li>%(content)s</li>\n"
print MENU % {"item" :"".join([ITEM % {"content": LINK % dict_}]*10)}
0563デフォルトの名無しさん
2009/08/27(木) 01:55:17attr = 'href="http://localhost:8080/"',
name = "hack you")
ITEM = ("<li>{content}</li>\n"*10).format(content = LINK)
MENU = "<menu>\n{item}</menu>".format(item = ITEM)
print(MENU)
0564デフォルトの名無しさん
2009/08/27(木) 01:57:03LINK = "<{tag} {attr}>{name}</{tag}>".format(tag = "a",
attr = 'href="http://localhost:8080/"',
name = "hack you")
ITEM = ("<li>{content}</li>\n"*10).format(content = LINK)
MENU = "<menu>\n{item}</menu>".format(item = ITEM)
print(MENU)
0565デフォルトの名無しさん
2009/08/27(木) 05:37:11{tag: "a", attr: 'href="http://localhost:8080/"', name: "hack you"})
0566デフォルトの名無しさん
2009/08/27(木) 06:19:49なんか良い方法あればいいんだけど。
0567デフォルトの名無しさん
2009/08/27(木) 16:09:07データベースファイルがないのを検出する方法ってありますか?
0568デフォルトの名無しさん
2009/08/27(木) 18:25:50> sqlite3でテーブルが作成されてなかったり、
SELECT * FROM sqlite_master;
> データベースファイルがないのを検出する方法ってありますか?
os.path.exists
0569デフォルトの名無しさん
2009/08/29(土) 01:00:08ttp://artificialcode.blogspot.com/2009/08/10-ways-to-let-people-know-your-bad.html
0570デフォルトの名無しさん
2009/08/29(土) 02:06:58hundred lines of code
2. Never return anything in a function, especially not some type of value that could demonstrate your function succeeded or failed.
3. Never write a test...EVER.
4. Call Perl from Python
5. Screw Control Flow
import os
if os.path.exists("/tmp"):
def myfunc():
x = 4
return x
class Foo(object):
y = 1
f = Foo()
print f.y + myfunc()
6. Abuse conditional logic to the point that you double or even triple an "unmaintainable" Cyclomatic Complexity Score of 50.
7. Use sleep statements like Holy Water.
8. Initiate the same logic more then once, "just to be sure".
count = 0
for i in range(5):
if os.path.exists("/tmp"):
print "bingo"
def foo():
print "stuff"
if os.path.exists("/tmp"):
import sys
sys.exit(1)
9. Write Library Code that does a sys.exit(0) on an exception.
10. Reimplement the Python Standard Library in every piece of code you write.
Summary
If you can do just a couple of these things in every piece of code you write, you are well on your way to writing bad python code! Stay tuned for part II.
0571デフォルトの名無しさん
2009/08/29(土) 05:31:37Eclipse で Java している時のような至れり尽くせり感がないなぁ・・
もっと、こう、至れり尽くせりなPython用IDEって何があるんでしょうか。
0572デフォルトの名無しさん
2009/08/29(土) 05:35:240573デフォルトの名無しさん
2009/08/29(土) 07:47:420574デフォルトの名無しさん
2009/08/29(土) 08:41:350575デフォルトの名無しさん
2009/08/29(土) 09:16:350576デフォルトの名無しさん
2009/08/29(土) 10:30:380577デフォルトの名無しさん
2009/08/29(土) 10:39:210578デフォルトの名無しさん
2009/08/29(土) 13:07:550579デフォルトの名無しさん
2009/08/29(土) 13:47:200580デフォルトの名無しさん
2009/08/29(土) 13:48:22ファイルを保存する段階でコンパイルエラーを指摘してくれるのを最初に見たときは感動したな。
Visual Stdio 2008でも同じことが出来るけど。
環境がIronPythonになるが、Visual StudioでPythonのスクリプトを動かすことが出来るよ。
0581デフォルトの名無しさん
2009/08/29(土) 14:05:370582デフォルトの名無しさん
2009/08/29(土) 14:07:150583デフォルトの名無しさん
2009/08/29(土) 15:03:030584デフォルトの名無しさん
2009/08/29(土) 16:06:16イタレリのキットが抽選で当たります。
0585デフォルトの名無しさん
2009/08/29(土) 16:29:360586デフォルトの名無しさん
2009/08/29(土) 21:24:22メモリ共有型の場合でも対応できるんでしょうか?
例えば大きな行列があって、並列処理で別々の部分を処理したりしたいんですが。。。
threadingでは実際には並列効果がないというのを知ってショックを受けてます・・・
0587デフォルトの名無しさん
2009/08/29(土) 21:26:110588デフォルトの名無しさん
2009/08/29(土) 22:16:41940 :デフォルトの名無しさん:2009/08/29(土) 22:08:40
>>937
一番もてるのはperl。
もっとも嫌われるのはpython。
C,C++は、相性とテクニック次第。
なんで?
0589デフォルトの名無しさん
2009/08/29(土) 22:18:570590デフォルトの名無しさん
2009/08/29(土) 22:19:070591デフォルトの名無しさん
2009/08/29(土) 22:29:020592デフォルトの名無しさん
2009/08/29(土) 22:31:09http://docs.python.org/library/multiprocessing.html#sharing-state-between-processes
俺は使ったことない。共有メモリマシンでうまく並列効果が出たら是非教えて。
0593デフォルトの名無しさん
2009/08/30(日) 00:34:25なんでか知らんが、俺の周りでもpyてょnは変態呼ばわり。
0594デフォルトの名無しさん
2009/08/30(日) 00:42:050595デフォルトの名無しさん
2009/08/30(日) 00:44:180596デフォルトの名無しさん
2009/08/30(日) 00:45:570597デフォルトの名無しさん
2009/08/30(日) 00:48:05仮に変態だったとしても変態という名の紳士だよ
0598名無しさん@そうだ選挙に行こう
2009/08/30(日) 09:38:360599名無しさん@そうだ選挙に行こう
2009/08/30(日) 10:57:110600名無しさん@そうだ選挙に行こう
2009/08/30(日) 13:28:050601名無しさん@そうだ選挙に行こう
2009/08/30(日) 13:31:270602名無しさん@そうだ選挙に行こう
2009/08/30(日) 13:50:150603名無しさん@そうだ選挙に行こう
2009/08/30(日) 14:12:060604デフォルトの名無しさん
2009/08/30(日) 23:27:50他はともかく
4. Call Perl from Python
これはあり得ないだろ…
0605デフォルトの名無しさん
2009/08/30(日) 23:44:40あり得ない話ではない。
0606デフォルトの名無しさん
2009/08/31(月) 12:29:07いま仕事で使ってるスクリプトがまさにそれだ……
0607デフォルトの名無しさん
2009/08/31(月) 12:36:15用途としてはDjangoでWebアプリ
0608デフォルトの名無しさん
2009/08/31(月) 13:04:28困ってないなら何もいじる必要ないのでは?
特にスピードが速くなるとかは感じない.
でも自分でコード書くなら 2.6 使っておくとよいのではとおもう.
3.x 系は自分としては使いたい拡張モジュールが
対応していないのでNG.標準モジュールだけならありかと.
0609デフォルトの名無しさん
2009/08/31(月) 13:22:37サンクス
実行速度とかは特に差が出ないのね
Javaなんかだとバージョンあげると明らかにパフォーマンスあがるもので気になっていたので。
モジュールとかはおおむね2.4以降なら動くみたいだしそのままでいくわ
0610デフォルトの名無しさん
2009/08/31(月) 17:41:420611デフォルトの名無しさん
2009/08/31(月) 18:14:330612デフォルトの名無しさん
2009/08/31(月) 18:30:47ttp://ml.zope.jp/pipermail/zope-users/2009-January/006160.html
0613デフォルトの名無しさん
2009/09/01(火) 00:35:36ローカルに入れるのならおk
0614!omikuji!dama
2009/09/01(火) 05:35:250615デフォルトの名無しさん
2009/09/01(火) 11:02:020616デフォルトの名無しさん
2009/09/01(火) 11:05:070617デフォルトの名無しさん
2009/09/01(火) 11:20:440618デフォルトの名無しさん
2009/09/01(火) 11:27:09俺知ってる(w
0619デフォルトの名無しさん
2009/09/01(火) 12:05:090620デフォルトの名無しさん
2009/09/01(火) 12:08:060621デフォルトの名無しさん
2009/09/01(火) 12:09:11みんな大人だ
0622デフォルトの名無しさん
2009/09/01(火) 12:24:480623デフォルトの名無しさん
2009/09/01(火) 13:23:430624デフォルトの名無しさん
2009/09/01(火) 14:30:36checking for python libraries... not found
って言われたのですが
/usr/local/lib/python2.6
じゃないんですか?
0625デフォルトの名無しさん
2009/09/01(火) 14:36:540626デフォルトの名無しさん
2009/09/01(火) 17:22:320627デフォルトの名無しさん
2009/09/01(火) 17:23:350628デフォルトの名無しさん
2009/09/01(火) 17:29:310629デフォルトの名無しさん
2009/09/01(火) 17:35:18古いシステムではnumpyが古くて入らなかった
numpy関連全部バージョン上げるの大変だからOSのバージョンごと上げたらいろいろ大変になった
0630デフォルトの名無しさん
2009/09/01(火) 17:59:01どんな仕事についても駄目っぽいね
0631デフォルトの名無しさん
2009/09/01(火) 18:05:29たとえばだな
ドジャンゴ・イン・アクション
http://www.manning.com/geewax/
0632デフォルトの名無しさん
2009/09/01(火) 18:12:42よくわからんけど upgrade-site-packages やってないとかいうオチ?
0633デフォルトの名無しさん
2009/09/02(水) 00:11:04くそ。
0634デフォルトの名無しさん
2009/09/02(水) 00:36:260635デフォルトの名無しさん
2009/09/02(水) 01:02:400636デフォルトの名無しさん
2009/09/02(水) 01:24:29>>635
SSLができてもなあ・・・
0637デフォルトの名無しさん
2009/09/02(水) 03:31:180638デフォルトの名無しさん
2009/09/02(水) 09:49:430639デフォルトの名無しさん
2009/09/02(水) 09:57:04paramikoがお勧め。
0640デフォルトの名無しさん
2009/09/02(水) 10:14:19やだ
0641デフォルトの名無しさん
2009/09/02(水) 10:43:23Cent OS は使用した事が無いですが?
OS version default の directory を残して python support Link の patch を当てるのが無難だと思います…
python support Link の patch を取っていれば問題ない様です… version up をするので在ればですが…
0642デフォルトの名無しさん
2009/09/02(水) 12:55:41余裕があるのかないのか、という人間としての質の差が重要な気がしている
0643デフォルトの名無しさん
2009/09/02(水) 13:12:17/<_/____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄
0644デフォルトの名無しさん
2009/09/02(水) 14:39:21| | ∩∩ |
|  ̄ ̄ ̄ ̄ ̄
(-_-) …
(∩∩)────────────────
/
/
/
むかしはぱいそんができればぐーぐるにいけるとしんじていました
でもいまはかんがえをかえました
ttp://promotion.yahoo.co.jp/charger/bokoboko/r47/r47_02.php
0645デフォルトの名無しさん
2009/09/02(水) 15:09:100646デフォルトの名無しさん
2009/09/02(水) 15:15:000647デフォルトの名無しさん
2009/09/02(水) 15:15:50そのまま引きこもっとけや。
0648デフォルトの名無しさん
2009/09/02(水) 15:16:300649デフォルトの名無しさん
2009/09/02(水) 17:00:240650デフォルトの名無しさん
2009/09/02(水) 17:54:020651デフォルトの名無しさん
2009/09/02(水) 18:06:530652デフォルトの名無しさん
2009/09/04(金) 05:49:55\
0653デフォルトの名無しさん
2009/09/04(金) 09:38:460654デフォルトの名無しさん
2009/09/04(金) 13:53:350655デフォルトの名無しさん
2009/09/04(金) 18:34:360656デフォルトの名無しさん
2009/09/04(金) 21:08:56うpろだの事かー!
0657デフォルトの名無しさん
2009/09/04(金) 21:31:49ttp://long.2chan.tv/jlab-long/s/long1252027171807.jpg
0658デフォルトの名無しさん
2009/09/04(金) 21:48:32としたあとで key in d が出来る様にするにはどうすればいいんだろう?
0659デフォルトの名無しさん
2009/09/04(金) 22:37:06d = d()
0660デフォルトの名無しさん
2009/09/04(金) 23:08:030661デフォルトの名無しさん
2009/09/05(土) 12:07:43いちいち言語の文法をそらんじなくなって久しい。
0662デフォルトの名無しさん
2009/09/05(土) 12:21:13なんでわざわざdictのkeyを取り出す必要があるんだ?
0663デフォルトの名無しさん
2009/09/05(土) 13:28:02keyの文字列自体を何かに使いたいとき
0664デフォルトの名無しさん
2009/09/05(土) 13:50:230665デフォルトの名無しさん
2009/09/05(土) 15:33:280666デフォルトの名無しさん
2009/09/05(土) 23:55:21ttp://d.hatena.ne.jp/wasisan/20090905
0667デフォルトの名無しさん
2009/09/06(日) 00:01:460668デフォルトの名無しさん
2009/09/06(日) 00:33:49ヘジのクラスライブラリは勘弁
0669デフォルトの名無しさん
2009/09/06(日) 01:11:000670デフォルトの名無しさん
2009/09/06(日) 02:35:090671デフォルトの名無しさん
2009/09/06(日) 10:12:46変な主観で語られてもなぁw
0672デフォルトの名無しさん
2009/09/06(日) 11:30:55その文章内容自体について説教・罵倒される方がはるかにましだということにあの人たちはなぜか気づかない
(多分、リアルがそれなりに充実した幸せな人たちだからだろう)。今の時代、話を聞いてくれて、まともな
ことを言ってくれる近所の頑固親父的な人なんて絶滅危惧種なのに。
まあ、普通の大人の現代(近代)社会を考えると仕方がないのかもしれないけど。よく言われることだが、社会人は
自分の利益になるケース以外では他人(特にいわゆる「バカ」)に対して注意なんてすることはないのだ。
そんなの時間がもったいない、「時は金なり」ということ(まったくいやなことだが)。
それにしても、「「バカ」であることを自己認識し自重する人たち」にとっては、現代とはなんと寂しい・辛い世界
であることか。その人たちは相手にされること、馴れ合うことすらできないのだから。
0673デフォルトの名無しさん
2009/09/06(日) 13:10:500674デフォルトの名無しさん
2009/09/06(日) 13:13:060675デフォルトの名無しさん
2009/09/06(日) 13:29:130676デフォルトの名無しさん
2009/09/06(日) 14:05:160677デフォルトの名無しさん
2009/09/06(日) 18:18:57まいんちゃん一択
0678デフォルトの名無しさん
2009/09/06(日) 21:40:010679デフォルトの名無しさん
2009/09/06(日) 22:04:58閉じ括弧を省略できると最高なんだが
0680デフォルトの名無しさん
2009/09/06(日) 22:08:220681デフォルトの名無しさん
2009/09/06(日) 22:09:270682デフォルトの名無しさん
2009/09/06(日) 22:22:28オフサイド!
0683デフォルトの名無しさん
2009/09/07(月) 01:14:270684デフォルトの名無しさん
2009/09/07(月) 06:57:21Pythonってのは本質的に関数言語であって,クラスシステムは
後付けっつーことですか?
self とか cls があらわになっているをの見て,
そういうもんなのかなと.
なぜPythonに手を出したかというと
普段使わなくても多重継承がないと不安だからとか
そういう理由だとまた叩かれるのかな.
0685デフォルトの名無しさん
2009/09/07(月) 07:17:35いやらしいねえこの男は
0686デフォルトの名無しさん
2009/09/07(月) 07:19:35OOP機能は最初から装備されていたそうなので、あとづけではないらしい。
そこかしこに不自然さが残るのは確か(superとか)なんだけど、許容範囲だから我慢してる。
あとPythonの作者は関数型言語をあまりよく知らないらしいから、「本質的に関数型」ではなくて「偶発的に関数型」じゃないかな。
> self とか cls があらわになっているをの見て,
> そういうもんなのかなと.
そういうもんです。違和感あるだろうけど、我慢できる範囲だと思うので、我慢して使ってください。そのうち慣れます。
0687デフォルトの名無しさん
2009/09/07(月) 08:28:42個人的にはselfとかどの名前空間なのか明示する方が分かりやすい
省略しまくる言語とか訳分からん記号使いまくる言語は氏ねとか思う
0688デフォルトの名無しさん
2009/09/07(月) 08:48:25そうじゃない。self.method()は別に構わない。
def method(self): がちょっと嫌いなだけ。
0689デフォルトの名無しさん
2009/09/07(月) 08:55:11> そういうもんなのかなと.
そういうもんです。
どの名前空間なのか明示する方が分かりやすいです。
慣れないうちは __init__() に self 入れ忘れて、
"引数の数があわない"
という一見変なエラーに悩まされますが、
そのうち気にならなくなります。
どちらかというとわたしは unicode/str の
encode/decode でよく悩まされました。
こちらももうすっかり慣れましたけど。
どちらも今となっては良い思い出です。
0690デフォルトの名無しさん
2009/09/07(月) 09:12:47俺も前から第一引数のselfに疑問を持っているんだが、Guidoがimplicit selfを
絶対に導入しない理由は何なの?
ちょっとググってみたが良く分からんかった。
0691デフォルトの名無しさん
2009/09/07(月) 09:15:08selfまで省略されるとお前どっから来たんだよッて俺がキレる
0692デフォルトの名無しさん
2009/09/07(月) 09:31:390693デフォルトの名無しさん
2009/09/07(月) 09:53:30これは既出?
http://www.python.org/doc/faq/general/#why-must-self-be-used-explicitly-in-method-definitions-and-calls
0694デフォルトの名無しさん
2009/09/07(月) 10:01:34和訳。
http://coreblog.org/ats/translation-of-why-explicit-self-has-to-stay
どのくらい正確なのかはわからんが。
0695デフォルトの名無しさん
2009/09/07(月) 10:39:14それは読んで知ってたけど、論拠としては弱いと思ってた。
>>694
サンクス。これを読んで一応納得した。デコレータを使った時に困るのは分かるが、
半分以上はGuidoの思想上の問題のような気がする。本人が絶対にexplicit self
を無くさないと言っているのだから仕方ないが。
0696デフォルトの名無しさん
2009/09/07(月) 10:50:10逆にいつでもselfを使える前提にするほうが変だと思う。
引数とって値を返す、関数らしい構造で良いと思う。
逆にRubyでは関数はメソッドの亜種だから、関数でもわざわざselfが設定されてる。
Javaではそもそも裸の関数が無いのだからselfがあるのは納得。
0697デフォルトの名無しさん
2009/09/07(月) 10:50:530698デフォルトの名無しさん
2009/09/07(月) 10:51:49>デコレータを使った時に困るのは分かるが、
自分はここがよくわからないんだけど、だれか解説たのむ。
以下引用:
> メソッドがデコレートされたときに,self引数が渡されるかどうかを知ることはできない。
> というのは,デコレータはメソッドをスタティックメソッドに変えることもあるし(この場合selfはない),
> クラスメソッドに変えることもあるし(この場合は,selfの変わりにクラスオブジェクトが渡される),
> まったく違ったことをすることもできる
> (@staticmethodや@classmethodと同じ働きをするデコレータをPythonで書くことは希だと思うが)。
> つまり,デコレータが何をするかを知り得なければ,メソッドに明示的にselfが定義されているかどうかを知ることができないのである。
0699デフォルトの名無しさん
2009/09/07(月) 10:55:19> 逆にいつでもselfを使える前提にするほうが変だと思う。
>>694のリンク先を読めば分かるが、そんなことは誰も主張してない。
0700デフォルトの名無しさん
2009/09/07(月) 11:08:55しってるよw 俺の感想を言っただけ。
0701デフォルトの名無しさん
2009/09/07(月) 11:13:110702デフォルトの名無しさん
2009/09/07(月) 11:13:57デコレータは関数を引数にとって「何か」を返す関数。
クラス宣言の中でデコレータを使うと、デコレータの返したモノがクラスのメンバになる。
そうするとコンパイル時に「何か」を決定できないので暗黙の引数を追加できない。
0703デフォルトの名無しさん
2009/09/07(月) 11:30:51それ自体が>>699の誤読の見苦しい言い訳であり
脳内からはみ出たお前の妄想じゃんw
0704デフォルトの名無しさん
2009/09/07(月) 12:10:27classと無関係なただの関数はself書かなくていいよ
0705デフォルトの名無しさん
2009/09/07(月) 12:13:240706デフォルトの名無しさん
2009/09/07(月) 12:15:070707デフォルトの名無しさん
2009/09/07(月) 12:22:470708デフォルトの名無しさん
2009/09/07(月) 12:44:13>>702
>デコレータは関数を引数にとって「何か」を返す関数。
>クラス宣言の中でデコレータを使うと、デコレータの返したモノがクラスのメンバになる。
↑これはわかる。↓これがわかんない。
>そうするとコンパイル時に「何か」を決定できないので暗黙の引数を追加できない。
・コンパイル時に「何か」を決定することと、暗黙の引数を追加することに、どういう関係がありますか?
・コンパイル時ではなく実行時に決定するのではだめでしょうか。
・暗黙の引数を、追加するのではなく最初から追加しておけばいいように思うけど、それだとまずいでしょうか。
だれか時間のある人教えてください!
0709デフォルトの名無しさん
2009/09/07(月) 12:45:540710デフォルトの名無しさん
2009/09/07(月) 14:42:380711デフォルトの名無しさん
2009/09/07(月) 14:54:08まったく・・・
0712デフォルトの名無しさん
2009/09/07(月) 18:04:02デコレータは関数を関数に変換するもの(最近はクラスもできるが)。
self必須にすることで関数とメソッドはほぼ互換になる
>foo.meth(arg) == C.meth(foo, arg)
ここで、C.methは関数扱いできる。
メソッドが関数として扱えるので、
メソッドのデコレータは関数のデコレータを作るのと同じやり方でできる。
逆にself省略できるようにしたらメソッドのデコレータを作るのが難しくなると思う。
0713デフォルトの名無しさん
2009/09/07(月) 18:20:37若干の冗長性が柔軟性を生むいい例だね。
Pythonは仕様の簡潔性が特徴のスクリプト言語なわけで。
(予約語や特殊な文法が少ない)
0714デフォルトの名無しさん
2009/09/07(月) 18:33:22厳密に言うと、デコレータの出力は関数とは限らないよね。
@property
def foo(self):...
みたいにすると、 foo は foo.__get__() というメソッドが定義されたオブジェクトになる。
0715デフォルトの名無しさん
2009/09/07(月) 18:37:47Python 3.0開発者ガイド:コア言語の変更点
Python 3.0の主要な言語機能
http://codezine.jp/article/detail/4051
Python 3.0開発者ガイド:数値、文字列、データ
http://codezine.jp/article/detail/4052
0716デフォルトの名無しさん
2009/09/07(月) 18:41:09いや、まぁそこら辺は厳密性を犠牲にして説明しやすくしたということで(ry
0717デフォルトの名無しさん
2009/09/07(月) 19:08:140718デフォルトの名無しさん
2009/09/08(火) 02:33:13神降臨
書き換えてこい
0719デフォルトの名無しさん
2009/09/08(火) 09:37:04同じものを作っても作るたびに
出来るファイルのサイズが違うのですが
こんなもんなのでしょうか?
pdfデータに日時が入ってるのかな
0720デフォルトの名無しさん
2009/09/08(火) 10:24:590721デフォルトの名無しさん
2009/09/08(火) 11:47:07自由変数の束縛はいったいどうやるんだ?
そういうことをやりたいときはグローバル変数使うかクラス使うかしかないんだろうか……。
0722デフォルトの名無しさん
2009/09/08(火) 12:31:53関数の呼び出し->local名前空間の生成->関数オブジェクト生成->local名前空間の解放->関数オブジェクト返る
関数オブジェクトから参照してる変数は上位の名前空間が消えてもクロージャな参照が残ってるからGCに回収されずに使える
0723デフォルトの名無しさん
2009/09/08(火) 15:21:31その言葉をそのまま返そう。
外側のメソッド[A]で定義した関数内関数[B]で[A]のローカル変数aを[B]内で使用しようとしたとき、
[B]内でそのままaと書くと未定義参照エラーになる。
かといって[B]の引数で与えても値渡しなのでa自体を書き換えることはできないよね。
0724デフォルトの名無しさん
2009/09/08(火) 15:32:290725デフォルトの名無しさん
2009/09/08(火) 15:38:48... a=3
... def fb():
... a=5
... print a
... print a
... return fb
...
>>> b=fa()
3
>>> b()
5
0726デフォルトの名無しさん
2009/09/08(火) 15:42:35・L=[x]みたいにリストにして、L[0]に対する操作にする
・f.x = xのように関数の属性にして、f.xに対する操作にする
0727デフォルトの名無しさん
2009/09/08(火) 15:53:18>>> def fa():
... a=3
... def fb():
... a+=5
... print a
... print a
... return fb
...
>>> b=fa()
3
>>> b()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 4, in fb
UnboundLocalError: local variable 'a' referenced before assignment
>>>
0728デフォルトの名無しさん
2009/09/08(火) 16:05:07ですよねー。
ふと調べてみたらそれについて記述したページを見つけたよ。
http://www.shido.info/py/py1_comment.html
実際にやってみたら
関数内関数[B]の中だけじゃなくて、
外側のメソッド[A]の側でも配列参照してあげないと
変更後の値にアクセスできないね。
実用にはなるんだけど不便だ……。
ともあれ、やり方がわかったよ。ありがとう。
0729デフォルトの名無しさん
2009/09/08(火) 18:11:51>>> def fa():
... a=3
... def fb():
... fa.a+=5
... print fa.a
... print a
... return fb
...
>>> b=fa()
3
>>> b()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 4, in fb
AttributeError: 'function' object has no attribute 'a'
0730デフォルトの名無しさん
2009/09/08(火) 18:14:10>>> def fa():
... fa.a=3
... def fb():
... fa.a+=5
... print fa.a
... print fa.a
... return fb
...
>>> b=fa()
3
>>> b()
8
>>>
0731デフォルトの名無しさん
2009/09/08(火) 18:40:00Pythonのニシキヘビ共が、タチコマみたいな会話してるみたいで萌えたw
0732デフォルトの名無しさん
2009/09/09(水) 03:07:25>>> k=dict(hoge=u"欝")
>>> k
{'hoge': u'\u6b1d'}
>>> r=pprint.pformat(k)
>>> r
"{'hoge': u'\\u6b1d'}"
>>>
これを、pprintのフォーマットを保持したまま
"{'hoge': u'欝'}"
みたいに人が読める形に、出来ませんか?
0733732
2009/09/09(水) 03:22:29一旦unicode化して、"unicode-escape"を使えば行けた。
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import pprint
d=dict(hoge=u'欝')
k=pprint.pformat(d)
print k
>>>{'hoge': u'\u6b1d'}
u=unicode(k,'utf-8')
print u.decode('unicode-escape')
>>>{'hoge': u'欝'}
配列の中に入った日本語とかも効くようだ。
0734デフォルトの名無しさん
2009/09/09(水) 07:20:560735デフォルトの名無しさん
2009/09/09(水) 12:17:23環境依存で動かないなんて本末転倒だな。
0736デフォルトの名無しさん
2009/09/09(水) 12:20:34具体的に詳しく。
/usr/bin/env が無くて /bin/env とか、
PATHの設定に問題が、とか?
0737デフォルトの名無しさん
2009/09/09(水) 12:30:110738デフォルトの名無しさん
2009/09/09(水) 13:07:17おれも詳しく知りたい。
#!/usr/bin/python
#!/usr/local/bin/python
はよくなくて
#!/usr/bin/env python
とするほうがいいとずっと思ってたんだけど、違うの?
0739デフォルトの名無しさん
2009/09/09(水) 13:17:430740デフォルトの名無しさん
2009/09/09(水) 13:20:490741デフォルトの名無しさん
2009/09/09(水) 13:21:17/usr/bin/meld とかディストリビューションのアプリが #!/usr/bin/env 使ってて
軒並み動かなくなったなぁ。
0742デフォルトの名無しさん
2009/09/09(水) 15:49:53バッファリング周りを自分なりに調べて試してみたのですが、改善しません。
教えていただけるとうれしいです _ _
#!/usr/bin/env python -u
import sys
for line in sys.stdin:
line = line.rstrip()
if line:
print "true"
else:
print "false"
sys.stdout.flush()
0743デフォルトの名無しさん
2009/09/09(水) 15:54:45どうでもいいところでハマってそれを自慢したがるド変態のM夫君っているものですね。
0744デフォルトの名無しさん
2009/09/09(水) 16:07:48> #!/usr/bin/env python -u
shebang で複数の引数を渡そうとした場合の動作は移植性がない。
0745デフォルトの名無しさん
2009/09/09(水) 16:36:04でもこの場合は、単に君が、どうでもいいところで「こいつは自慢してるんだろう」と誤読する
キチガイなだけでは?
0746デフォルトの名無しさん
2009/09/09(水) 16:45:37にすればいいじゃん?
0747デフォルトの名無しさん
2009/09/09(水) 17:06:46× py2 sys.stdin
○ py2 sys.iter(stdin.readline, None)
○ py3 sys.stdin
○ py3 sys.iter(stdin.readline, None)
ファイルのf.next()は効率のために先読みするんだけど、それが原因かな。
py3でどこが変更されたかはよくわからなかった
0748747
2009/09/09(水) 17:07:36× py2 sys.stdin
○ py2 iter(sys.stdin.readline, None)
○ py3 sys.stdin
○ py3 iter(sys.stdin.readline, None)
0749デフォルトの名無しさん
2009/09/09(水) 17:08:49> for line in sys.stdin:
これのために、入力が終わるまで実行が止まってる。
for line in iter(sys.stdin.readline, ""):
こうする。
0750デフォルトの名無しさん
2009/09/09(水) 17:21:07ドキュメントには先読みすると書いてあるけど、たぶんこれはドキュメントのバグ。
0751742
2009/09/09(水) 17:36:41>>747-750
ありがとうございます、出来ました!
バッファリングの問題じゃなかったんですね、お恥ずかしい。
0752デフォルトの名無しさん
2009/09/09(水) 17:49:21変態のくせにプライドだけ高いなんてどんだけひとりぼっち君。
0753デフォルトの名無しさん
2009/09/09(水) 18:00:03今度の設定はプライドか。ってか俺は>>741ではないし。
なんか君のキャラ設定って、鏡に映った君自身っぽい。
0754デフォルトの名無しさん
2009/09/09(水) 19:31:14>なんか君のキャラ設定って、鏡に映った君自身っぽい。
0755デフォルトの名無しさん
2009/09/09(水) 19:52:000756デフォルトの名無しさん
2009/09/09(水) 20:06:07env の話はこのへん分かりやすかったです。
http://ya.maya.st/d/200606c.html#d20060625
0757デフォルトの名無しさん
2009/09/09(水) 22:23:020758デフォルトの名無しさん
2009/09/09(水) 22:45:56#!python
だとダメなの?
0759デフォルトの名無しさん
2009/09/09(水) 23:48:180760デフォルトの名無しさん
2009/09/10(木) 12:56:13#!./python
0761デフォルトの名無しさん
2009/09/10(木) 13:48:03netbeansにしようかなあ
0762デフォルトの名無しさん
2009/09/10(木) 14:44:37えーと、どゆこと?
パスが必須ってこと?
それとも、そういう意味に解釈されてしまうってこと?
0763デフォルトの名無しさん
2009/09/10(木) 15:35:12バイナリをテキストエディタで編集しちゃダメですよ。
0764デフォルトの名無しさん
2009/09/10(木) 15:40:31何も設定しないデフォルトでほとんど何でもできちゃうのに
python.elが貧弱すぎる
0765デフォルトの名無しさん
2009/09/10(木) 15:44:17/usr/bin/python 2.3 (プレインストール)
/usr/local/bin/python 2.5 (自分でコンパイル)
が入ってる
ちなみに /usr/bin/python を 2.5 で上書きしてしまうと
yum が動かなくなるのでこうしてる
自分の shell の path は /usr/local/bin/python が先なので
#!/usr/bin/env python
と書いても大丈夫なような気がするけど
自前のスクリプトは
#!/usr/local/bin/python
で作ってるよ
0766デフォルトの名無しさん
2009/09/10(木) 17:51:220767デフォルトの名無しさん
2009/09/11(金) 03:05:13kondoはどうよ?emacsキーバインディングもある
http://www.activestate.com/komodo_edit/
0768デフォルトの名無しさん
2009/09/11(金) 03:35:09もちつけw
0769デフォルトの名無しさん
2009/09/11(金) 11:01:200770デフォルトの名無しさん
2009/09/11(金) 11:35:07今 2.3 とかで動かしているスクリプトを
メンテのたびに 2.6 に移し始めてます.
以降のためのガイドライン(from future importとか)
のページってありませんか?
出来れば日本語だとうれしい・・
0771デフォルトの名無しさん
2009/09/11(金) 12:02:29>出来れば日本語だとうれしい・・
Rubyなら日本語の情報が盛りだくさん!
0772デフォルトの名無しさん
2009/09/11(金) 12:13:59Editraはどうよ?viキーバインディングもある
http://editra.org/
0773デフォルトの名無しさん
2009/09/11(金) 13:21:080774デフォルトの名無しさん
2009/09/11(金) 16:07:040775デフォルトの名無しさん
2009/09/11(金) 17:18:07展開もされずにそのまま動いてて、どうしてコレで動くんだろ?
って思ったことはあるな。
0776デフォルトの名無しさん
2009/09/11(金) 17:26:28非圧縮zipだとファイルシステムからstatする時間が要らなくなるので通常ファイルのモジュールよりも
高速にロードできる。
0777デフォルトの名無しさん
2009/09/11(金) 17:30:000778デフォルトの名無しさん
2009/09/11(金) 18:16:23python.exeとpython25.dllだけあれば
後は全部zipに入れても動くよw
zipの中身適当に絞り込んだやつと、exeとdllを、未だUSBに入れてあるわ〜
0779デフォルトの名無しさん
2009/09/11(金) 18:38:46当然ながら仮想メモリまで食いつぶしていきますよね?
せめて自分がどれくらいメモリを使っているかくらいは
知りたいのですが,OSに依存しないメモリ使用量の
取得方法ってあるでしょうか?
メモリ上にデータをキャッシュするようなアプリを書いていて
最終的にはスラッシングが起こりだしたらキャッシュの量を
減らすというような処理を行いたいと思っています.
最終的には.
0780デフォルトの名無しさん
2009/09/11(金) 19:06:40ざっと探してみたけどないので君が作るといい
0781デフォルトの名無しさん
2009/09/11(金) 20:26:46上書きしていくだけなんだよね?古いバージョンのアンインストールをきれいにやってから
新しいバージョンのパッケージをインストールしてくれないものだろうか?
0782デフォルトの名無しさん
2009/09/11(金) 20:32:060783デフォルトの名無しさん
2009/09/11(金) 22:29:18日本語を入力するまでは満足してました。
0784デフォルトの名無しさん
2009/09/11(金) 23:09:59どれぐらいのメモリを使ったらスラッシングが始まるのかがOSに依存すると思うのですが。
0785デフォルトの名無しさん
2009/09/11(金) 23:18:02それは別にOS依存しててもいいのでは?
大事なのはスラッシングが起こったことが検知できるかどうかでしょ。
0786デフォルトの名無しさん
2009/09/12(土) 00:09:53んなことできる訳ねーダロカス
0787デフォルトの名無しさん
2009/09/12(土) 00:18:06それに逆らってどうする。
0788デフォルトの名無しさん
2009/09/12(土) 05:36:22スラッシングがおこってもプロセスが実行しつづけられるようにするのは近代的なOSの設計だといえるけど、
スラッシングが起こったことを検出できない、検出させないのは、別に近代的でもなんでもない。
検出できるような設計にしたら近代的でなくなるのか?そんなわけない。
0789デフォルトの名無しさん
2009/09/12(土) 08:34:370790デフォルトの名無しさん
2009/09/12(土) 11:30:03で? Pythonのプログラムが書きにくいからってOSの開発者に文句を言うつもりか?
0791デフォルトの名無しさん
2009/09/12(土) 11:31:32は気にくわないことすべてに文句つけそうで怖い。
0792デフォルトの名無しさん
2009/09/12(土) 13:21:38にちゃんは半可通が多数決で正しい答を出すから恐いw
0793デフォルトの名無しさん
2009/09/12(土) 13:31:19間違いを指摘されたからといって怒るなよ。
なんで
> Pythonのプログラムが書きにくいからってOSの開発者に文句を言うつもりか?
ということになるんだ?意味わかんねー。
別に間違っててもいいじゃんか。指摘されたら修正すればいいだけ。
間違いを認めようとせず、ごまかすためにキレるほうが格好悪いぞ。
0794デフォルトの名無しさん
2009/09/12(土) 13:39:55その中でPythonはかなり使いやすい部類だと思う。
0795デフォルトの名無しさん
2009/09/12(土) 13:42:470796デフォルトの名無しさん
2009/09/12(土) 14:02:050797デフォルトの名無しさん
2009/09/12(土) 14:04:38摩訶不思議なコードを書くのは
そうでもしないと今流行りの機能が実装できない(C++の謎なテンプレートとか)か、
変なコードのほうが高速だったり(末尾再帰とか)
ミスが起こりにくかったりする(if(0==x){〜とか)
とか、そんな事情がある。
Pythonはそもそもそういうのが起こらないように設計されてるからなー
0798デフォルトの名無しさん
2009/09/12(土) 14:06:36気づかないまま別の方向に向かっているおまいらがすき
0799デフォルトの名無しさん
2009/09/12(土) 15:38:210800デフォルトの名無しさん
2009/09/12(土) 17:07:43Python IDLE "The program is still running! Do you want to kill it?
っていうダイアログボックスがでてくるんだけどこれはバグ?
Windows Vista Business 上で Python 2.5, 2.6, 3.1 で確認しました
0801デフォルトの名無しさん
2009/09/12(土) 18:30:000802デフォルトの名無しさん
2009/09/12(土) 18:54:01x 半可通が多数決で正しい答を出す
o 半可通が多数決で出した答を正しいと思い込む
0803デフォルトの名無しさん
2009/09/12(土) 18:56:27o 半可通が多数決で「正しい」答を出す
0804デフォルトの名無しさん
2009/09/12(土) 18:56:500805デフォルトの名無しさん
2009/09/12(土) 20:04:53import __main__
print __main__.__builtins__ の結果が違うのはなぜでしょうか?
たとえば __builtins__.__dict__ はありますが
__main__.__builtins__.__dict__ はありません
0806デフォルトの名無しさん
2009/09/12(土) 20:20:47処理系のソースコード調べて考えろ。
0807デフォルトの名無しさん
2009/09/12(土) 20:32:48アドバイスありがとうございます
CPythonのコードはまだ読んでいませんがIDLEのコードを読んでいます。
lib\idlelib\AutoComple.py の中に
import __main__
中略
namespace = __main__.__dict__.copy()
namespace.update(__main__.__builtins__.__dict__)
というコードがあって、__main__.__builtins__.__dict__
の意味が分からず悩んでいます。
0808805=807
2009/09/12(土) 20:52:19たびたびすみません,原因が分かりました.
EclipseのPyDevで開発しているのですが,
デバッグモードで動かすと __builtins__ は dict です.
通常モードで動かすと __builtins__ は module です.
デバッグモードではこのような違いが随所にあったのが原因でした.
なお,PyDev のソースを読んだところたしかに pydevd.py で
そのような違いが表れていることが分かりました.
http://eclipse-pydev.sourcearchive.com/documentation/1.0.3-1ubuntu1/pydevd_8py-source.html
0809デフォルトの名無しさん
2009/09/12(土) 21:19:570811デフォルトの名無しさん
2009/09/12(土) 22:05:330812デフォルトの名無しさん
2009/09/13(日) 07:39:27なにやら色んな物がないといわれます。で色んなもを入れたり、パス変更したりして
対応したのですが
dummy.Processというモジュールだけ見つかりません。
(python2.6/Lib/multipurocessingの中にprocess.pyがあったので/Lib/dummy/process.py
と置いてみましたがダメでした)
easy_installを試しましたがダメでした。
対処法もしくはdummy.Processがどこにあるかわかる方いますか?
0813デフォルトの名無しさん
2009/09/13(日) 08:09:46->
/Lib/dummy/Process.py
0814デフォルトの名無しさん
2009/09/13(日) 08:17:230815812
2009/09/13(日) 09:27:34それでやってみましたがダメでした
>>814
自作スクリプト内ではdummy.processをimportしておらず、mechanize内でもimportされていなかったので
どのスクリプトのimportをそのように書き換えるのかわかりません
で、なぜかLib/multiprocessing/dummy/processとするとdummy.processは通りました
しかし、また新たにmultiprocessingが必要(?)でて
easy_installすると
こんどはmultiprocessing._mmap25とwin32processが必要といわれ。。。
なんだかきりがないように感じられたので諦めます
すいませんでした
0816デフォルトの名無しさん
2009/09/13(日) 14:03:240817デフォルトの名無しさん
2009/09/13(日) 14:04:320818デフォルトの名無しさん
2009/09/13(日) 15:00:450819デフォルトの名無しさん
2009/09/13(日) 15:02:400820デフォルトの名無しさん
2009/09/13(日) 15:11:03登場時期 1990年
ttp://ja.wikipedia.org/wiki/Ruby
登場時期 1995年
0821デフォルトの名無しさん
2009/09/13(日) 15:11:18アホか。Pythonの初出が1991年でRubyが1993年だろ。調べてから言え。
それから、RubyとPythonがどっちが優れてるかなんてフレームの元なのでやめたほうがいい。
用途によって使いやすいほうを使えば十分。
0822デフォルトの名無しさん
2009/09/13(日) 15:14:59いまだとBooとかScalaとかあるけど
PythonやRubyの前って関数定義にdef使ってるのってないのかな
0823デフォルトの名無しさん
2009/09/13(日) 15:32:01BASIC
C
...
O
Python
Q
Ruby
S
...
Z
0824デフォルトの名無しさん
2009/09/13(日) 15:36:470825デフォルトの名無しさん
2009/09/13(日) 18:01:43BASIC
0826デフォルトの名無しさん
2009/09/13(日) 18:38:10function hogehoge
0827デフォルトの名無しさん
2009/09/13(日) 18:50:59DEF FN……懐かしい。
0828デフォルトの名無しさん
2009/09/14(月) 11:25:01C拡張でユニコードを扱う関数を作りたいんですが、Cでどのようにユニコード文字のバイト区切りを判断すれば良いのか分からなくて。
0829デフォルトの名無しさん
2009/09/14(月) 11:41:210830デフォルトの名無しさん
2009/09/14(月) 12:09:040831デフォルトの名無しさん
2009/09/14(月) 12:15:39http://pc12.2ch.net/test/read.cgi/tech/1177930957/
0832デフォルトの名無しさん
2009/09/14(月) 12:22:32基本知識はあると思ってるのですが...
そもそもUTF-8なんて話してません、ユニコードそのものの話です。
pythonにおいてunicode()で生成したユニコードのインスタンスをCレベルで操作したいという話です。
初期のUnicodeが16ビット固定長だった事は知っています。
しかし現在は21ビットにまで拡張されています。
ということは16ビットでは不足するケースがあるわけで、
原理的に固定長決め打ちというわけにはいかないはずです。
また、pythonのレベルからはunicode文字列の実バイト数を知るメソッドが見付けられませんでした。
0833デフォルトの名無しさん
2009/09/14(月) 12:23:500834デフォルトの名無しさん
2009/09/14(月) 12:28:16Pythonのunicodeobject.hやunicodectype.cには
UCS2、UCS4という文字列が両方とも含まれているので、
16ビット固定なのか32ビット固定なのか良く分かりません。
0835デフォルトの名無しさん
2009/09/14(月) 12:30:07さようなら。
0836デフォルトの名無しさん
2009/09/14(月) 12:34:520837デフォルトの名無しさん
2009/09/14(月) 13:10:56>>> u
u'\u65e5\u672c\u8a9e'
>>> s=u.str()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'unicode' object has no attribute 'str'
>>> s=str(u)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-2: ordinal not in range(128)
>>> l=u.split()
>>> l
[u'\u65e5\u672c\u8a9e']
>>> l=u.split(u'')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: empty separator
uを
s='\x65\xe5\x67\x2c\x8a\x9e'
または
l=[0x65,0xe5,0x67,0x2c,0x8a,0x9e]
というバイト列にしたいのですが
どのような方法があるでしょうか?
0838デフォルトの名無しさん
2009/09/14(月) 13:16:32>>> u
u'\u65e5\u672c\u8a9e'
>>> l = []
>>> for i in u:
... n = ord(i)
... l.extend((n >> 8, n & 0xff))
...
>>> l
[101, 229, 103, 44, 138, 158]
>>> map(hex, l)
['0x65', '0xe5', '0x67', '0x2c', '0x8a', '0x9e']
0839デフォルトの名無しさん
2009/09/14(月) 13:26:59len(u'\U00010000')
0840デフォルトの名無しさん
2009/09/14(月) 13:49:25thx!
>>> u=u'日本語'
>>> map(hex, reduce(lambda x, y: x + [ord(y) >> 8, ord(y) & 0xff], u, []))
['0x65', '0xe5', '0x67', '0x2c', '0x8a', '0x9e']
0841デフォルトの名無しさん
2009/09/14(月) 13:51:27sys.setdefaultencoding()で文字コードを再設定してやるのが先だろ?
むちゃくちゃやってやがるな……。
0842デフォルトの名無しさん
2009/09/14(月) 13:55:330843デフォルトの名無しさん
2009/09/14(月) 15:54:14Pythonのビルドオプションで、unicodeはUTF-16とUCS4が選択できる。
デフォルトではUTF-16になっていて、これはWindowsでUnicodeファイル名を
そのまま扱えたり、.NET や JVM のUTF-16文字列と互換性があったりと、
相互運用性が求められるときに便利。
でも、一文字を1カウントで扱いたいという要求もよくあり、 .NET/JVM/WindowsAPI などとの
相互運用性が求められない分野ではUCS4が使われることもある。
たとえばFedoraやUbuntuなんかのPythonはUCS4でビルドされている。
0844デフォルトの名無しさん
2009/09/14(月) 20:02:10sys.argv.append("-n")
from idlelib.PyShell import main
main()
スクリプトの最後にこう書けばIDLEのインターフェイスを
立ち上げることができるんだけど,その時 Tk の
メニューを隠すとかできないもんかなぁ.
PyShell のコード自体に手を入れることはしたくない.
0845デフォルトの名無しさん
2009/09/14(月) 22:22:58まさに誰得だよ、これ。
0846デフォルトの名無しさん
2009/09/14(月) 22:32:35まあ欠点も色々あるが、結局Unicodeほど便利な文字コードも無いからな。
特にWebアプリはUTF-8で統一してしまうのが一番簡単。
0847デフォルトの名無しさん
2009/09/14(月) 23:08:020848デフォルトの名無しさん
2009/09/14(月) 23:26:21一番BOMの恩恵受けるのは日本なんだし。
0849デフォルトの名無しさん
2009/09/14(月) 23:42:04なんでUTF-8にBOMが必要なんだ?
いやとあるスレで、SJISやEUCテキストとの識別を容易にするために
BOM付きUTF-8を提案したのは俺だったりするのだが。
0850デフォルトの名無しさん
2009/09/14(月) 23:52:040851デフォルトの名無しさん
2009/09/15(火) 00:12:020852デフォルトの名無しさん
2009/09/15(火) 00:20:260853デフォルトの名無しさん
2009/09/15(火) 00:37:510854デフォルトの名無しさん
2009/09/15(火) 00:38:04いつも付けてるが。
0855デフォルトの名無しさん
2009/09/15(火) 00:45:08BOM のせいで shebang がどうさしないとか
0856デフォルトの名無しさん
2009/09/15(火) 00:49:52存在価値も無いし
0857デフォルトの名無しさん
2009/09/15(火) 02:53:360858デフォルトの名無しさん
2009/09/15(火) 03:19:110859デフォルトの名無しさん
2009/09/15(火) 03:20:320860858
2009/09/15(火) 04:05:240861デフォルトの名無しさん
2009/09/15(火) 05:39:330862デフォルトの名無しさん
2009/09/15(火) 07:48:27ありがとうございます、助かります。
ヘッダやライブラリの何かの変数でどちらか判定できそうかと思ったんですが、
そこまでは分かりませんでした。
でも、debian sid x86_64ですが、UCS2っぽいです。
UCS2だとwchar_tを使っているみたいなのでなんとかなりそうです。
ctypes.c_wchar_pも使えそう。
0863デフォルトの名無しさん
2009/09/15(火) 08:12:560864デフォルトの名無しさん
2009/09/15(火) 08:36:39def something(self):
通常の処理
with SynqObj(self.lock):
クリティカルセクションな作業
通常の処理
0865デフォルトの名無しさん
2009/09/15(火) 09:12:14関係ないかもしれないけど gcc で wchar_t って UCS-4 相当というか4バイトじゃなかったっけ?
0866デフォルトの名無しさん
2009/09/15(火) 10:39:39pyconfig.hに
Py_UNICODE_SIZEってのがある
0867デフォルトの名無しさん
2009/09/15(火) 10:48:49中国はパスポートが必要
0868デフォルトの名無しさん
2009/09/15(火) 10:50:14thx!
0869デフォルトの名無しさん
2009/09/15(火) 11:40:050870デフォルトの名無しさん
2009/09/15(火) 12:00:280871デフォルトの名無しさん
2009/09/15(火) 12:33:020872デフォルトの名無しさん
2009/09/15(火) 13:18:30ああ、864は複数のスレッドの呼び分けをログで確認するためにラッパーを介しているだけだから。キニスンナ。
普通はlockオブジェクトを直にwith呼び出ししてかまわない。
>>870
Python 2.6のリリースノート読め!
0873デフォルトの名無しさん
2009/09/15(火) 13:44:36ttp://stackoverflow.com/questions/1192632/how-to-convert-restructuredtext-to-plain-text
0874デフォルトの名無しさん
2009/09/15(火) 14:08:01サンキュー。
でもドキュメント無いからソースよめってことね…。
0875デフォルトの名無しさん
2009/09/15(火) 14:29:110876デフォルトの名無しさん
2009/09/15(火) 14:38:220877デフォルトの名無しさん
2009/09/15(火) 16:39:113.0以降の資料が少なすぎて、勉強がさっぱり進まない
やはり英語を覚えるのが先なのか・・・
0878デフォルトの名無しさん
2009/09/15(火) 17:24:52Python3.0でググるよりPython3000のほうが多いかも
0879デフォルトの名無しさん
2009/09/15(火) 18:29:180880デフォルトの名無しさん
2009/09/15(火) 18:37:56うーん、一部を解説したものしか見つからない
できたら3.1までの仕様変更点を全て網羅している
解説が欲しいんだけど
0881デフォルトの名無しさん
2009/09/15(火) 18:56:31Python 3.0/3.1のリリースノートを読むのが結局一番早いよ。
Pythonはこの辺とても丁寧。
ところで、
IronPythonに向いた軽量なO/Rマッパーが見当たらなかったので
『100行ちょっとのやる気のないPython製O/Rマッパー』をベースに
実装してみたんだけど、試してみたい人います?
一応、Python/IronPython両用です。
0882デフォルトの名無しさん
2009/09/15(火) 19:25:58読んでみたけど
ttp://docs.python.org/3.1/whatsnew/3.0.html
ttp://docs.python.org/3.1/whatsnew/3.1.html
これくらいのボリュームなら自動翻訳でもかなり役立つと思うが。
# この先、仕事でプログラムするなら英語は何れ必要となるだろうからガンバレ
# 最近の翻訳は中国語から順に整備される傾向があるからな・・・
0883デフォルトの名無しさん
2009/09/15(火) 19:35:40確かにありました。
4になっていました。
>>865
sizeofで確認したところ確かに4バイトでした。
pyconfig.hの記述と一致してます。
UCS2って2バイトだと思ってましたが、
実装上はwchar_tで表現するので4バイトになってるってことなんでしょうか。
UCS4は元が4バイトですよね。
とりあえずPythonではunicode一文字は4バイトと思って良いのかな。
ほんとunicodeとその周辺のエンコーディングはよく分かりません。
0884デフォルトの名無しさん
2009/09/15(火) 19:40:43柴田さん乙
0885デフォルトの名無しさん
2009/09/15(火) 19:47:360886デフォルトの名無しさん
2009/09/15(火) 20:37:03ucs4を使うかutf-16を使うかはconfigureオプションで指定して、
sizeof(wchar_t) == 4 && ucs4 の場合か、 sizeof(wchar_t) == 2 && utf-16 の場合にのみ
wchar_t を使う・・・という仕様だった気がする。
Pythonの拡張モジュールを作るときには、wchar_tを直接使うんじゃなくて、
Py_UNICODE を使う。
http://docs.python.org/c-api/unicode.html#Py_UNICODE
0887デフォルトの名無しさん
2009/09/15(火) 22:00:25あー、なるほど・・・
とりあえずLinux(gcc)ではi686でもamd64でもwchar_tがあり、
>>865さんの指摘どおり両方とも4バイトでした。
UCS4の場合にはどちらもwchar_tで4バイトですが、
UCS2(UTF-16)の場合にはwchar_tと不一致なので
unsigned shortが使われるようです。
これも両方共2バイトでした。
ということで、Linux(gcc)ではUCS2ならばunsigned shortで2バイト、
UCS4ならばwchar_tで4バイトということですね。
最近のLinuxディストリビューションではUCS4が多いらしいです。
Debian sidでもそうです。
Py_UNICODEを使った方が良いのだと思いますが、
Cで書く部分はできるだけPython独立にしておいて
ctypesからそれを利用したいので、
とりあえずwchar_tを使うことにします。
でもimmutableだからなのか、unicodeをそのまま渡して
中身を変更するような事はすぐにはできないっぽいです。
create_unicode_bufferを使うしかなさそうです。
0888デフォルトの名無しさん
2009/09/15(火) 22:08:010889デフォルトの名無しさん
2009/09/16(水) 00:13:28プププ、クソ本の著者乙(wwWwwwwWWWwwwWwWwww
0890デフォルトの名無しさん
2009/09/16(水) 00:15:28いや、当の著者の再配布許可が出たところなんだけど。
別に信じないならいいけどさ。
0891デフォルトの名無しさん
2009/09/16(水) 00:37:33みんぱいの人に嫉妬するクソ本作者。
0892デフォルトの名無しさん
2009/09/16(水) 00:52:060893デフォルトの名無しさん
2009/09/16(水) 09:03:240894デフォルトの名無しさん
2009/09/16(水) 09:47:250895デフォルトの名無しさん
2009/09/16(水) 10:48:560896デフォルトの名無しさん
2009/09/16(水) 12:09:330897デフォルトの名無しさん
2009/09/16(水) 12:27:590898デフォルトの名無しさん
2009/09/16(水) 12:41:430899デフォルトの名無しさん
2009/09/16(水) 18:05:00ひょっとしてctypesよりboost.pythonの方が良いっていう意味のレスですか?
そうでないとしても、それをきっかけにしてboost.pythonも検討してみました。
boost.pythonとしては、まだunicode文字列を引数としてどう受け渡すのか
方式が定まってないっぽいんですが、とりあえずPyObject* opとして受け取って
PyUnicode_AS_DATA(op)でconst char*として実際のデータバッファのアドレスを取り出して、
それをwchar_t*にキャストして自作のC++関数などに渡せば良さそうです。
C++ではwchar_t*として扱うPython独立なプログラムとして作成して、
引数を渡すところだけはこの変換をするために一枚かぶせる感じです。
unicodeの実装がwchar_tではない場合には困るんすが、C++だし、
とりあえずテンプレート使っておけば後々それほど困らないでしょうし。
これでunicode文字列をC++の中で書き換えることもできました。
boost.pythonって、ほんとに楽にC++とやりとりできますね。
0900デフォルトの名無しさん
2009/09/16(水) 18:42:02働いたら負けだよな。
0901デフォルトの名無しさん
2009/09/16(水) 19:30:480902デフォルトの名無しさん
2009/09/17(木) 06:49:550903デフォルトの名無しさん
2009/09/17(木) 11:18:040904デフォルトの名無しさん
2009/09/17(木) 11:28:50環境をスタンドアロンで持ち歩いてるんですが,
PyDev と Python 実行環境もそんなことができればなぁ
と思ってます.Windows 環境です.
Windows の Python はレジストリに何か登録しているよう
なんで,そういうポータブルなことは難しいでしょうか?
0905デフォルトの名無しさん
2009/09/17(木) 11:54:05公式からもリンクされてるからそんなに怪しいものでは無いと思う。
公式からのリンク:http://python.org/download/
0906デフォルトの名無しさん
2009/09/17(木) 20:32:24まずはC++で(Pythonその他から)独立したクラスを作っておけばいいんじゃないですか?
0907デフォルトの名無しさん
2009/09/17(木) 21:24:45最初に発生した例外でストップしてほしいんですが,できますか?
0908デフォルトの名無しさん
2009/09/18(金) 05:57:29エスケープコードを書くのとで、py-execute-bufferの際に別物にされてしまう。
(素のバイトストリング扱いになるらしい)
C-x C-f foo.py
#!/usr/bin/python
# -*- mode: python-mode; coding: utf-8 -*-
print u'あ' == u'\u3042'
C-c C-c => False
$ python foo.py
True
どうしたものか。
0909デフォルトの名無しさん
2009/09/18(金) 08:15:290910908
2009/09/19(土) 04:44:02ちなみに locale.getdefaultlocale() はいつでも ('en_US', 'UTF8') が帰る。
C-c ! で ipython を出しておいて C-c C-cすれば普通にターミナルからやるのと同じ挙動に
なったので、それでいいことにしたわ。
0911デフォルトの名無しさん
2009/09/19(土) 09:48:33終了まで解放されない?
class ClassA(object):
def __init__(self):
import sys
sys.stderr.write("ClassA.__init__(...) %s\n" % str(self))
def __del__(self):
import sys
sys.stderr.write("ClassA.__del__(...) %s\n" % str(self))
class ClassC(object):
def __init__(self):
import sys
sys.stderr.write("ClassC.__init__(...) %s\n" % str(self))
self.a1 = ClassA()
self.a2 = ClassA()
self.a1.a2 = self.a2
self.a2.a1 = self.a1
def __del__(self):
import sys
sys.stderr.write("ClassC.__del__(...) %s\n" % str(self))
これで ClassC のインスタンスを作ると,
ClassA.__del__ は永遠に呼び出されない.
せめてプロセスの終了時には呼び出されると思ってた.
0912デフォルトの名無しさん
2009/09/19(土) 09:57:26呼び出し順を決定できないからか.
そもそもデストラクタがあるのに循環参照が
起きるような設計をするなということだよな.
0913デフォルトの名無しさん
2009/09/19(土) 10:45:10C-x C-f foo.py
#!/usr/bin/python
# -*- mode: python-mode; coding: utf-8 -*-
print u'あ' == u'\u3042', hex(ord(u'あ')), u'あ'.encode('utf8')
C-c C-c => False (どうなりますか?)
0914908
2009/09/19(土) 17:52:16C-c C-c => False 0x20
と出ます。u'あ'.encode('utf8') はエラーも出さずに飲み込まれてしまっているみたい。ちなみに
print u'あ’ -> なにも表示されない、
print u'\u3042' -> UnicodeEncodeError: 'ascii' codec can't encode character u'\u3042'...
となる。あらかじめC-c ! でipythonのバッファを出しておけばこれらの問題は起きない。
0915デフォルトの名無しさん
2009/09/19(土) 19:40:27そういうのって明示的に循環参照削除するメソッド作って呼び出すもんじゃないの?
と最近Pythonに興味もったPerl使いが言ってみる。
Perlだと参照を弱める(リファレンスカウント減らす)方法あるけど、
Pythonだと似たような方法有るのかな。
0916デフォルトの名無しさん
2009/09/19(土) 19:57:070917デフォルトの名無しさん
2009/09/19(土) 19:58:550918デフォルトの名無しさん
2009/09/19(土) 20:00:17weak_refは余計なコストかかるし。
0919デフォルトの名無しさん
2009/09/19(土) 20:08:20http://www.python.jp/doc/2.4/ext/refcounts.html
これ、絶対入ってるよね。
(文中の『デフォルトでは入っています』に対するレス)
0920デフォルトの名無しさん
2009/09/19(土) 22:27:55朝から使ってたけど普通に常用メーラで行けそう
0921デフォルトの名無しさん
2009/09/19(土) 22:40:02最低限で済むPythonではやはり最低限で良いと思うやね
0922デフォルトの名無しさん
2009/09/19(土) 22:54:52宣伝乙
0923デフォルトの名無しさん
2009/09/19(土) 23:47:44Windowsだけなんだっけ?
0924デフォルトの名無しさん
2009/09/20(日) 23:35:03>>> L[:]
[]
>>> L[:]=[1,2,3]
>>> L
[1, 2, 3]
リストの初期化がなんか違和感が…
納得できん
0925デフォルトの名無しさん
2009/09/20(日) 23:43:30class Topic:
child = Reply
class Reply:
parent = Topic
なんて書いてたら、当然2行目で未定義識別子の参照でエラーになる。
これって、2つの定義を相互参照なしに定義した後で、classmethodを明示的に呼び出して
動的に結びつけるしか方法がないよね?
用途としては自作の軽量ORMライブラリを作ってるところで、
オブジェクト化したテーブル同士の親子関係を表現しようとしている。
で、例えばTopicから連結されてるReplyのインスタンスが欲しいので何らかの形で事前に教えておく必要がある、と。
0926デフォルトの名無しさん
2009/09/20(日) 23:51:30pass
class Reply:
pass
Topic.child = Reply
Reply.parent = Topic
0927デフォルトの名無しさん
2009/09/21(月) 00:01:17それ、初期化じゃなくて代入だから・・・
0928デフォルトの名無しさん
2009/09/21(月) 00:38:330929デフォルトの名無しさん
2009/09/21(月) 01:38:05の思考に違和感が
0930デフォルトの名無しさん
2009/09/21(月) 01:40:50children = []
class Reply:
parent = Topic
Topic.children.append(Reply)
0931デフォルトの名無しさん
2009/09/21(月) 09:21:42入門書嫁。
0932デフォルトの名無しさん
2009/09/21(月) 09:34:48配列が伸び縮みすることになのか
要素の範囲を指定して代入することになのか
L[:] ってなんかきんもー、なのか
0933デフォルトの名無しさん
2009/09/21(月) 10:42:30>>> l
[9, 8, 7, 6] <- 普通
>>> l[1:]=[3,4,5]
>>> l
[9, 3, 4, 5] <- 普通
>>> l[1:]=[2,1]
>>> l
[9, 2, 1] <- きもい
>>> l[:]=0
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: can only assign an iterable <- 微妙
>>> l[:]=[0,0]
>>> l
[0, 0] <- きもい
0934デフォルトの名無しさん
2009/09/21(月) 10:47:290935デフォルトの名無しさん
2009/09/21(月) 11:08:09スライスの代入で左辺と右辺のリストの要素数が
一致していなくても構わない(右辺にあわせて伸び縮みする)のが気持ち悪いってこと?
だったらリンクリストでも勉強すれば違和感なくなるんじゃないかね
0936デフォルトの名無しさん
2009/09/21(月) 13:53:54>>> l[1:]=[2,1]
>>> l
[9, 2, 1] <- きもい
0937デフォルトの名無しさん
2009/09/21(月) 14:02:180938デフォルトの名無しさん
2009/09/21(月) 14:14:120939デフォルトの名無しさん
2009/09/21(月) 14:31:560940デフォルトの名無しさん
2009/09/21(月) 17:05:35>>> l
[9, 3, 4, 5] <- 普通
>>> l[1:]=[2,1]
>>> l
[9, 2, 1] <- きもい
このきもいと普通の違いがわからん
要素が1個減ったらきもい?何か見落としてるんだろうか・・・
0941デフォルトの名無しさん
2009/09/21(月) 17:42:29抽象度の高い操作を理解できないとか
0942デフォルトの名無しさん
2009/09/21(月) 18:08:310943デフォルトの名無しさん
2009/09/21(月) 20:57:09と思ったら
L=[]
で L に代入してるな orz
0944デフォルトの名無しさん
2009/09/21(月) 21:06:250945デフォルトの名無しさん
2009/09/21(月) 21:12:52あぁ。3要素のときはreplaceに見えるからきもくないのか
よくわかったありがとう
0946デフォルトの名無しさん
2009/09/21(月) 21:13:33http://pc12.2ch.net/test/read.cgi/tech/1253535109/
0947デフォルトの名無しさん
2009/09/21(月) 21:30:13質問の意味がよくわからないが、
Pythonのリストはメモリ上の連続領域を利用した配列型のリスト
(C++のstd::vectorやJavaのArrayListの類)
いわゆる連結リストではないので途中に挿入する操作には弱い。
0948デフォルトの名無しさん
2009/09/21(月) 23:45:44直感的に思えないから、俺もあまり使わないな。
冗長でも、新しいリストを作ってしまうな
0949デフォルトの名無しさん
2009/09/22(火) 02:10:54>>947 の言う通りなら新しく作りなおしてもそんなに速度は変わらなさそうですね
0950デフォルトの名無しさん
2009/09/22(火) 10:35:41表向きリストのような動作をするように設計されてんだろうな
0951デフォルトの名無しさん
2009/09/23(水) 12:59:51cam = Device()
cam.saveSnapshot('image.jpg')
0952デフォルトの名無しさん
2009/09/25(金) 23:25:35だれか助けて
0953デフォルトの名無しさん
2009/09/26(土) 00:04:120954デフォルトの名無しさん
2009/09/26(土) 00:46:26今まで試したのは
boa-constructorとwxGladeとPyCrust
普段visual studioとかXCode使ってるんで上で列挙した環境は微妙すぎて
使う気がおきない
0955デフォルトの名無しさん
2009/09/26(土) 02:17:550956デフォルトの名無しさん
2009/09/26(土) 02:56:210957デフォルトの名無しさん
2009/09/26(土) 08:51:590958デフォルトの名無しさん
2009/09/27(日) 16:16:420959デフォルトの名無しさん
2009/09/29(火) 17:33:520960デフォルトの名無しさん
2009/09/29(火) 18:12:06sys.getrefcount()
0961デフォルトの名無しさん
2009/09/29(火) 18:37:350962デフォルトの名無しさん
2009/09/29(火) 18:51:21ありがとうございました
0963デフォルトの名無しさん
2009/09/29(火) 19:56:30ヘルプは役に立ちません
0964デフォルトの名無しさん
2009/09/29(火) 19:59:25E.coliの和名と属名を答えたいんだけど
どう書けばいいかな。
0965デフォルトの名無しさん
2009/09/29(火) 20:36:44Cとかでwin32api使える人向けだろうアレは
0966デフォルトの名無しさん
2009/09/30(水) 07:28:39ところで,あるモジュール ModuleA をインポート
使用としていて,ModuleA.py が自分と同じディレクトリにあれば
import ModuleA とできますよね?
同じモジュールがフルパス(?)で
import a.b.c.ModuleA としてもインポートできるとき,
この二つは異なるモジュールとして扱われるのでしょうか?
0967デフォルトの名無しさん
2009/09/30(水) 07:31:53同じモジュールなら同じモジュール。
print(ModuleA is a.b.c.ModuleA)
として確かめてみたら?
0968デフォルトの名無しさん
2009/09/30(水) 07:55:09import ModuleA
a1 = AAA.ModuleA.ClassA()
assert isinstance(a1, AAA.ModuleA.ClassA) #OK
assert isinstance(a1, ModuleA.ClassA) #NG
assert AAA.ModuleA.ClassA is ModuleA.ClassA #NG
ちなみに
a1 = AAA.ModuleA.ClassA()
a2 = ModuleA.ClassA()
print type(a1) → <class 'AAA.ModuleA.ClassA'>
print type(a2) → <class 'ModuleA.ClassA'>
0969デフォルトの名無しさん
2009/09/30(水) 07:57:58src/AAA/ModuleB
となっていて PYTHONPATH には src/ が通っています.
上のコードは ModuleB から ModuleA を使っています.
import AAA.ModuleA でインポートされるモジュールと
import ModuleA でインポートされるモジュールは
ファイルは同じですが異なるものとして扱われているようなのですが・・
0970デフォルトの名無しさん
2009/09/30(水) 09:50:07import ModuleA
0971デフォルトの名無しさん
2009/09/30(水) 09:51:30で?
自分の書いたモジュールをカレントディレクトリでアクセスしようが
特定の上位ディレクトリからアクセスしようが自分の責任なわけで、
両方の方法でアクセスしてるなら自分で最後まで責任を取るべきなんだが。
0972デフォルトの名無しさん
2009/09/30(水) 10:37:28>>969
どっちかに統一して使いましょう、ということなんだろうね
0973デフォルトの名無しさん
2009/10/01(木) 01:53:02~/lib/site-packages
とか?
0974デフォルトの名無しさん
2009/10/01(木) 06:36:030975デフォルトの名無しさん
2009/10/01(木) 06:37:200976デフォルトの名無しさん
2009/10/01(木) 19:28:03/usr/lib/python2.6
/usr/lib/python2.6/site-packages
↓
/home/hoge/bin/python
/home/hoge/lib/python2.6
/home/hoge/lib/python2.6/site-packages
0977デフォルトの名無しさん
2009/10/03(土) 01:33:05なにか適当なインストーラでパッケージング?
python流のなにか方法がある?
0978デフォルトの名無しさん
2009/10/03(土) 02:46:20Python流のやり方ってのはないな
↓でも使ってみたら
ttp://pypi.python.org/pypi/innosetup
0979デフォルトの名無しさん
2009/10/03(土) 09:58:05wxPythonがいいのかgtkがいいのか悩む
Tkはまぁ最初から入ってるしIDLEでも使ってるから
無難なのかもしれないけどなんか古臭い見た目が
0980デフォルトの名無しさん
2009/10/03(土) 10:03:420981デフォルトの名無しさん
2009/10/03(土) 14:19:150982デフォルトの名無しさん
2009/10/03(土) 14:44:42それはなんという偏見!
Tcl/Tkでは各OSの最新の見た目に合わせられるよう対応が追加されてる。
Python/TKが古いだけ。
対応? 知らんがな。
0983デフォルトの名無しさん
2009/10/03(土) 15:15:05中の人はGUIやらせたくないんだろうか
0984デフォルトの名無しさん
2009/10/03(土) 19:02:07メインストリームに統合されるのはいつになるかわからないけど、早ければPython 2.7に
でも載るかもね。
0985デフォルトの名無しさん
2009/10/03(土) 19:20:39http://docs.python.org/dev/whatsnew/2.7.html#ttk-themed-widgets-for-tk
0986デフォルトの名無しさん
2009/10/03(土) 20:55:12公式のML購読すればいいの?
0987デフォルトの名無しさん
2009/10/03(土) 22:14:31質問です。
環境はvine5.0 Python 2.5.4 です。
>>> from turtle import *
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named turtle
と出ました。
turtleが入ってないということでしょうか?
またその場合どうすればいいのでしょうか?
どうかご教授お願いします。
751 デフォルトの名無しさん [sage] Date:2009/10/02(金) 04:17:28 ID: Be:
Tkinterが入ってないんじゃないか
vine tkinter でぐぐってみて
752 デフォルトの名無しさん [sage] Date:2009/10/02(金) 14:49:59 ID: Be:
>>751
できました!
ありがとうございました!
0988デフォルトの名無しさん
2009/10/03(土) 23:27:05どっかにWindowsやMacでのスクリーンショットもねーかな。
0989デフォルトの名無しさん
2009/10/03(土) 23:33:33見た目がネイティブ寄りに変更になった覚えがあるのだが。
0990デフォルトの名無しさん
2009/10/04(日) 04:45:24ttk なんてものがあるんだね。情報サンクス。
Python 3.1 には入っていて使える状態だった。
http://docs.python.org/dev/py3k/library/tkinter.ttk.html
import tkinter as tk とする代わりに
import tkinter.ttk as tk とすればいいみたい。簡単。
988のサイトの theming.py を 2to3 に通して XP 上の Python 3.1 で実行してみた。
http://www1.axfc.net/uploader/Img/so/61151.png
ちゃんと XP ライクな見た目になった。すげーすげー。
0991デフォルトの名無しさん
2009/10/04(日) 06:11:10まさか似せたウィジェットを頑張って全OSについて
用意しているわけじゃないよね?
0992デフォルトの名無しさん
2009/10/04(日) 06:19:35http://tktable.sourceforge.net/tile/screenshots/windows.html
ところで Python 2.6 では使える?
0993デフォルトの名無しさん
2009/10/04(日) 11:14:430994デフォルトの名無しさん
2009/10/04(日) 14:37:52THX
あっけなく動いた。
レス数が950を超えています。1000を超えると書き込みができなくなります。