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


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

Pythonのお勉強 Part34



1 名前:デフォルトの名無しさん mailto:sage [2009/07/01(水) 22:23:19 ]
Pythonオフィシャルサイト
www.python.org/
日本Pythonユーザ会
www.python.jp/Zope/
まとめWiki
python.rdy.jp/
関連スレ
find.2ch.net/?BBS=ALL&TYPE=TITLE&STR=python
前スレ
pc12.2ch.net/test/read.cgi/tech/1240678081/

45 名前:デフォルトの名無しさん mailto:sage [2009/07/09(木) 02:39:10 ]
ないわー

46 名前:デフォルトの名無しさん mailto:sage [2009/07/09(木) 02:56:18 ]
でも、みんPyとかはじPyとか読んでいて「こまけぇことは(ry」となる人には
良いと思われる>いきなりクックブック

47 名前:デフォルトの名無しさん mailto:sage [2009/07/09(木) 08:59:32 ]
クックブックはありだろ。ネットで読めるし。
三番目は、絶対ない(W

48 名前:デフォルトの名無しさん mailto:sage [2009/07/09(木) 09:25:39 ]
初めてのPythonって評判悪いのか。
勉強用に読んだけどそんなに悪いとは思わなかったけどなあ。
10日で覚えるとかはちょっと。。


49 名前:デフォルトの名無しさん mailto:sage [2009/07/09(木) 09:34:15 ]
www.amazon.com/Beginning-Python-Novice-Professional/dp/159059519X/

これ読んだ人いる?

50 名前:デフォルトの名無しさん mailto:sage [2009/07/09(木) 09:35:12 ]
鈍器としては最高の出来>初めての
10日で覚える〜は鈍器としてすらありえない。

51 名前:デフォルトの名無しさん mailto:sage [2009/07/09(木) 09:44:21 ]
>>48
はじめてのPython と初めてのPython は別のもの


52 名前:デフォルトの名無しさん mailto:sage [2009/07/09(木) 09:44:46 ]
The Quick Python Book 第2版待ち

53 名前:デフォルトの名無しさん mailto:sage [2009/07/09(木) 12:10:37 ]
「Whats3onLP さらに新しいバージョンのPythonについて 」
ttp://python.is-a-geek.org/wiki/index.cgi?Whats3onLP
を読みたいんだけど、Wikiが改竄されている。(´・ω・`)



54 名前:デフォルトの名無しさん [2009/07/09(木) 16:53:53 ]
Christian Tismerがpsycoプロジェクトを復活させるらしい

55 名前:デフォルトの名無しさん mailto:sage [2009/07/09(木) 18:21:40 ]
Psyco x64を切に希望します

56 名前:デフォルトの名無しさん mailto:sage [2009/07/09(木) 18:28:32 ]
PyPyまだー?

57 名前:デフォルトの名無しさん mailto:sage [2009/07/09(木) 19:14:44 ]
はじめてのPyPy

58 名前:デフォルトの名無しさん mailto:sage [2009/07/09(木) 20:38:15 ]
PyPyクックブック

59 名前:デフォルトの名無しさん mailto:sage [2009/07/09(木) 20:53:05 ]
PyPy待てど暮らせど

60 名前:デフォルトの名無しさん mailto:sage [2009/07/09(木) 21:06:37 ]
                  ゙'.     ,ト `i、  `i、    .、″
                    |    .,.:/""  ゙‐,. `    /
                 `  .,-''ヽ"`    ヽ,,,、   !
                    、,、‐'゙l‐、      .丿 : ':、
                   、/ヽヽ‐ヽ、;,,,,,,,,,-.ッ:''`  .,"-、
                  ,r"ツぃ丶  ``````   ../  `i、
              ,.イ:、ヽ/ー`-、-ヽヽヽ、−´    .l゙`-、
             _,,l゙-:ヽ,;、、             、、丶  ゙i、,,、
            ,<_ l_ヽ冫`'`-、;,,,、、、、.............,,,,、.-`":    │ `i、
          、、::|、、、ヽ,、、.    ```: : : ```      、.、'`  .|丶、
         .l","ヽ、,"、,"'、ぃ、、,、、、、.、、、.、、、_、.,,.ヽ´    l゙  ゙).._
        ,、':゙l:、、`:ヽ、`:、  : `"```¬——'''"`゙^`     : ..、丶  .l゙ `ヽ
       ,i´.、ヽ".、".、"'ヽヽ;,:、........、           、、...,,,、−‘`   、‐   |゙゙:‐,
      ,.-l,i´.、".`ヽ,,,.".`   `゙゙'"`'-ー"``"``r-ー`'":      _.‐′  丿  ,!
     j".、'ヽ,".、".、"`''`ー、._、、、           、._,、..-‐:'''′   .、,:"  丿
     ゙l,"`"`''ヽヽ"`"`  ```゙'''"ヽ∠、、、、ぃ-`''''": `      、._./`  ._/`
      `'i`ヽヽヽ`''ーi、、、: :                   、.,-‐'`   、/`
       ``ヽン'`"`  : `~``—ヽ::,,,,,,,,,,.....................,,,,.ー'``^    ,、‐'"`
          `"'゙—-、,,,,..、、               : ..,、ー'"'`
               : `‘"`—---------‐ヽ``"''''''""



61 名前:デフォルトの名無しさん mailto:sage [2009/07/09(木) 22:44:25 ]
PyPyワロスワロス

62 名前:デフォルトの名無しさん [2009/07/10(金) 03:26:27 ]
m = re.match("(.*?) = (.*?)",text)
foo[m.group(1)] = m.group(2)

これを m を介さずに一行で書くにはどうすれば良いですか?

63 名前:デフォルトの名無しさん mailto:sage [2009/07/10(金) 03:31:12 ]
(lambda m: foo.__setitem__(m.group(1), m.group(2)))(re.match("(.*?) = (.*?)",text))



64 名前:デフォルトの名無しさん mailto:sage [2009/07/10(金) 03:32:19 ]
foo.__setitem__(*re.match("(.*?) = (.*)", text).groups())
難読化して何が楽しいんだか

65 名前:デフォルトの名無しさん [2009/07/10(金) 03:37:35 ]
foo[m.group(2)] = m.group(1)
だったときでも使える?

66 名前:デフォルトの名無しさん mailto:sage [2009/07/10(金) 03:38:58 ]
そんなの関係ねぇし

67 名前:デフォルトの名無しさん mailto:sage [2009/07/10(金) 03:44:26 ]
s = re.match("(.*?) = (.*?)",text); foo[s.group(1)] = s.group(2)

68 名前:62 mailto:sage [2009/07/10(金) 05:36:03 ]
きれい書く方法ないんですね。あきらめます。

69 名前:デフォルトの名無しさん mailto:sage [2009/07/10(金) 09:14:40 ]
そもそも m が None (ぬるぽ) のときはどうするつもりなんだ
exception 書くと結局数行付け足す羽目になるぜ

70 名前:デフォルトの名無しさん mailto:sage [2009/07/10(金) 10:26:05 ]
まぁ、質問の答えとしては、だいたいそもそもの構造自体が悪いってことはあるね。
質問に正確に答えるなら、その方法を答えるのが正解だけど。

71 名前:デフォルトの名無しさん mailto:sage [2009/07/10(金) 11:45:17 ]
そういえば昔のスレが荒れる基本パターンに
デザインパターンがあったけど、こんな記事があるみたいです:

Design Patterns in Real Python Projects
by Michael Schneider
pymag.phparch.com/c/issue/view/87


72 名前:デフォルトの名無しさん mailto:sage [2009/07/10(金) 23:33:21 ]
>>71
ふむ・・・名前からしてドイツ人?

73 名前:デフォルトの名無しさん [2009/07/11(土) 01:28:38 ]
>>71も大切だけど、
Pythonのバイブルを読むべきだと思いますよ。
www.amazon.co.jp/dp/4839922829



74 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 01:33:51 ]
まずチュートリアルだべ

75 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 01:42:23 ]
>>73
宣伝乙

76 名前:75 [2009/07/11(土) 01:43:58 ]
>>73
明日書店行って立ち見してくるわ

77 名前:デフォルトの名無しさん mailto:75 [2009/07/11(土) 03:29:09 ]
見るだけな。絶対買わない。

78 名前:デフォルトの名無しさん [2009/07/11(土) 04:10:38 ]
うちに余ってるからあげようか?

79 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 21:19:42 ]
PythonTシャツを試作してみてるんだけど、
買うとしたらどのくらいの人間が買う?ということが気になっている。

80 名前:デフォルトの名無しさん [2009/07/11(土) 21:30:33 ]
t-shirts.cafepress.com/item/wxpython-grey-tshirt/6587976

81 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 21:39:38 ]
www.python.org/community/merchandise/

82 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 07:41:09 ]
標準出力を変数に代入することは出来ますか?

変数に代入するときは標準出力に吐き出されず、
以降は print などで普通に出力される動作を期待しています。

83 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 08:09:59 ]
できますよ



84 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 09:31:52 ]
どうすればできるでしょうか?

85 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 09:59:08 ]
回答まだでしょうか?

86 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 13:26:10 ]
from cStringIO import StringIO
stdout = sys.stdout
sys.stdout = StringIO()
print "test"
test = sys.stdout.getvalue()
sys.stdout.close()
sys.stdout = stdout

これで、できました。失礼します。
あと、>>85は自分ではありません。

87 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 11:27:36 ]
>かなり厳しいstrictな規格
strictって”厳しい”って意味ですよね
意味が重複してますよね

88 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 12:56:10 ]
人に使わせるプログラムをPythonで書いて,とりあえずコンソールプログラムとしては完成したので,
今度はそれをEasyGuiでGUI化しようとしてるんだけど,コンソール(コマンドプロンプト)ウィンドウが
邪魔くさいので非表示にしたいんです。

ググってもわからなかったので,どうすればいいのかエラい人教えてください。

環境はWindows XPでPython 2.6.2動かしてます。
起動は.pyファイルをダブルクリックするようにしてるので,コマンドプロンプトを開いて
起動しているわけではありません。

89 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 13:03:27 ]
>>88
拡張子を .pyw にする。
もしくは ctypes で FreeConsole() を呼ぶ。

90 名前:88 mailto:sage [2009/07/13(月) 13:10:58 ]
>>89

> 拡張子を .pyw にする。

うわー,そんなんでよかったのか!

> もしくは ctypes で FreeConsole() を呼ぶ。

こっちも調べてみます。
速攻レスサンクス。

91 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 17:38:58 ]
俺も知らんかった、.pywってそういう意味だったのか・・・


92 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 17:40:26 ]
でも.pywはpythonw.exeに関連付けされてるだけだよ

93 名前:88 mailto:sage [2009/07/13(月) 18:50:03 ]
うん。後から気がついた。



94 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 22:29:01 ]
tyowww

95 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 16:26:04 ]
import hashlib とすると、
>>> 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です。


96 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 17:03:41 ]
>>95
エラーを再現できない。

/usr/lib/python2.5/lib-dynload/_hashlib.dll
があるかどうか確かめてくれ。

97 名前:95 mailto:sage [2009/07/14(火) 17:15:55 ]
>>96
お返事ありがとうございます。
存在します。


98 名前:95 mailto:sage [2009/07/14(火) 17:23:09 ]

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

というエラーでできないのですが、関係ありますか?

99 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 17:25:01 ]
wget code.krypto.org/python/hashlib/hashlib-20081119.tar.gz
setup.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']) )

inforno.net/articles/2009/01/25/using-any-version-of-python-on-xrea-servers-part2

100 名前:デフォルトの名無しさん [2009/07/15(水) 13:32:46 ]

cpythonで作ったメインのプログラムからJythonで作ったモジュールを呼び出すことは可能ですか?

101 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 22:38:57 ]
Unladen Swallowの更新が来たな

102 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 17:56:39 ]
Neatxって凄い名前だな・・・

103 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 16:09:59 ]
psyco v2の最初のリリースがきた
codespeak.net/pipermail/pypy-dev/2009q3/005288.html



104 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 23:07:58 ]
Psyco is not supporting 64 bit, yet. But it is well being considered.
期待して良いのか?

105 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 23:29:42 ]
yahooの知恵袋っていつから珍回答で質問者をからかう場所になってんだ

106 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 23:31:34 ]
なんでいきなりそんな話が出てくるの?

107 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 02:21:29 ]
うー!2chには誤爆という文化があるのですよ!はうぅー!

108 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 14:19:57 ]
↑これ、書き込んでんの30過ぎのおっさんだよ

109 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 15:05:03 ]
ようつべでモンティパイソン見たら、結構酷いネタ多いなw

110 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 17:19:48 ]
>>108
40過ぎだよ。

111 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 17:35:32 ]
しかし、心はヤング

112 名前:デフォルトの名無しさん mailto:sage [2009/07/19(日) 01:48:56 ]
40過ぎてもせんずりしますか

113 名前:デフォルトの名無しさん mailto:sage [2009/07/19(日) 03:15:30 ]
はうぅー!Python 3.1で遊ぶのですぅ!うーうー!



114 名前:デフォルトの名無しさん mailto:sage [2009/07/19(日) 15:41:25 ]
>>112
俺らにゃpython.comがある

115 名前:デフォルトの名無しさん mailto:sage [2009/07/20(月) 02:50:13 ]
VPythonってなんかすごいですお
俺のようなVTKとかインストールすら出来ずに挫折した人にはナイスであります。

116 名前:デフォルトの名無しさん mailto:sage [2009/07/20(月) 02:58:00 ]
ビタミンのVか

117 名前:デフォルトの名無しさん mailto:sage [2009/07/20(月) 03:21:32 ]
D:にインスコすると死ねる

118 名前:デフォルトの名無しさん mailto:sage [2009/07/20(月) 12:51:15 ]
なんだか頭の悪そうな書き込みが豊満してますね

119 名前:デフォルトの名無しさん mailto:sage [2009/07/20(月) 12:52:57 ]
いつものruby厨が荒らしてるんだろう

120 名前:デフォルトの名無しさん mailto:sage [2009/07/20(月) 15:48:56 ]
VPythonマジ強力っていうか馬鹿な俺でも使えるのでした。
ローレンツアトラクタを書かせたら、20行くらいでくるくる回って感動ww

121 名前:デフォルトの名無しさん mailto:sage [2009/07/20(月) 16:16:11 ]
データが文字列であることを確認するには
isinstance(obj, (str, unicode)) # 2.x
isinstance(obj, (str, bytes)) # 3.x
となりますが、ひとつのファイルで2と3の両方をサポートしたい場合はどうかけばいいでしょうか。

122 名前:デフォルトの名無しさん mailto:sage [2009/07/20(月) 16:24:20 ]
前スレより転載

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を見れば一応はできる

123 名前:デフォルトの名無しさん mailto:sage [2009/07/20(月) 16:27:48 ]
両方をサポートしたいなんて考えをやめるべきだ!



124 名前:デフォルトの名無しさん mailto:sage [2009/07/20(月) 17:56:56 ]
>>123
え、なんでだめなんですか?

125 名前:デフォルトの名無しさん mailto:sage [2009/07/20(月) 18:03:36 ]
docs.python.org/3.1/whatsnew/3.0.html#porting-to-python-3-0
ドキュメントにはこう書いてあるけど、
書けないことはないから、やってみれば

126 名前:デフォルトの名無しさん mailto:sage [2009/07/20(月) 23:07:45 ]
っ basestring

127 名前:デフォルトの名無しさん mailto:sage [2009/07/21(火) 01:09:26 ]
NameError: name 'basestring' is not defined

128 名前:デフォルトの名無しさん mailto:sage [2009/07/21(火) 11:20:51 ]
>>> basestring
<type 'basestring'>

129 名前:デフォルトの名無しさん mailto:sage [2009/07/21(火) 14:36:46 ]
The builtin basestring abstract type was removed.

130 名前:デフォルトの名無しさん mailto:sage [2009/07/21(火) 14:39:35 ]
> sys.version_infoを見れば一応はできる

131 名前:初めてのPy [2009/07/21(火) 23:06:41 ]
importで2回目の実行からエラーがでるんですが
コンパイルの設定とかあるんでしょうか
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

132 名前:デフォルトの名無しさん mailto:sage [2009/07/22(水) 00:29:08 ]
こーど

133 名前:デフォルトの名無しさん mailto:sage [2009/07/22(水) 01:09:59 ]
VPython、いまいち分かりにくかったけど、
・XY平面のグリッドをcurveで書く
・Zを上にするよう、scene.up=(0,0,1)を指定
・X,Y,Z軸をcurveで書く
・物体の影をXY平面に書く
したらすごく分かりやすくなった!



134 名前:デフォルトの名無しさん mailto:sage [2009/07/22(水) 01:17:51 ]
UnicodeDecodeErrorって3になってからでもでるの?

135 名前:デフォルトの名無しさん mailto:sage [2009/07/22(水) 01:19:17 ]
>>133
GJ!!
kwsk

136 名前:デフォルトの名無しさん mailto:sage [2009/07/22(水) 01:21:23 ]
>>134
そりゃ、Shift-JISで書かれたファイルをencode='utf-8'とかを指定して
読み込もうとしたらDecodeErrorになるよ。

137 名前:デフォルトの名無しさん mailto:sage [2009/07/22(水) 01:35:27 ]
>>134
b'\x82\xa0'.decode("ascii") とかでも UnicodeDecodeError

138 名前:デフォルトの名無しさん mailto:sage [2009/07/22(水) 01:56:25 ]
b'\x82\xa0'.decode("cp932")

139 名前:デフォルトの名無しさん mailto:sage [2009/07/22(水) 02:49:31 ]
>>135
おk、事務所に置いて来たので、10時頃まで待ってください。

140 名前:デフォルトの名無しさん mailto:sage [2009/07/22(水) 11:11:02 ]
まず、sceneを作るところ。
import 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============

141 名前:デフォルトの名無しさん mailto:sage [2009/07/22(水) 11:14:42 ]
あ。貼り付けるとスペースは消えちゃうのか。forの次はindentしてください。
sceneの中心が原点、xy平面を見下ろし、z軸が上向き、ちょっとズームアウト。
軸のレンジ÷20で、XY平面にグリッドを書く。
X軸、ちょこっと矢印、Y軸、ちょこっと矢印、Z軸、ちょこっと矢印、「X」とかラベル付け。

142 名前:デフォルトの名無しさん mailto:sage [2009/07/22(水) 11:17:32 ]
#=====Objects to show=====
ball = 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))

143 名前:デフォルトの名無しさん mailto:sage [2009/07/22(水) 11:24:51 ]
ボールを用意、陰(円盤)を用意、しっぽを用意。
ローレンツアトラクタを10000回計算。
結果の座標をListに足し、ボールと影と尻尾の座標をセット。
終わったらpointsで軌跡を描画です。
up2.viploader.net/pic3/src/vl2_161237.png
実行するとボールがくるくる動いた後、こうなります。



144 名前:デフォルトの名無しさん mailto:sage [2009/07/22(水) 12:12:02 ]
>>133
tt

145 名前:デフォルトの名無しさん mailto:sage [2009/07/22(水) 12:17:16 ]
これはおもろいすなぁ。
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)






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

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

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