1 名前:デフォルトの名無しさん [2008/06/13(金) 04:22:02 ] Python オフィシャルサイト ttp://www.python.org/ ttp://www.python.org/doc/ 日本Pythonユーザ会 ttp://www.python.jp/Zope/ ttp://www.python.jp/doc/ FrontPage - Pythonのお勉強 ttp://python.rdy.jp/ 前スレ pc11.2ch.net/test/read.cgi/tech/1209480428/ ◆関連スレッド Microsoft IronPython 1.0 pc11.2ch.net/test/read.cgi/tech/1157686822/ Python の宿題ここで答えます Part 1 pc11.2ch.net/test/read.cgi/tech/1153585095/ Python Challengeをやろう! pc11.2ch.net/test/read.cgi/tech/1175919288/ Pythonについて(アンチ専用) pc11.2ch.net/test/read.cgi/tech/1203557046/ Pythonに見られるインデントによる制御構造の是非 pc11.2ch.net/test/read.cgi/tech/1169473442/ pythonがこの先生きのこるには pc11.2ch.net/test/read.cgi/tech/1167996371/ Eclipse統合M25【Java/C/PHP/Ruby/Python/Perl】(PyDev) pc11.2ch.net/test/read.cgi/tech/1211505494/ 【Perl,PHP】LLバトルロワイヤル2【Ruby,Python】 pc11.2ch.net/test/read.cgi/tech/1209289408/ デザパタ + Python/Ruby/Smalltalk part2 pc11.2ch.net/test/read.cgi/tech/1175959706/ 2ch検索: [python] find.2ch.net/?BBS=ALL&TYPE=TITLE&STR=python
152 名前:151 mailto:sage [2008/06/17(火) 11:36:36 ] あほだ…while抜け取るやん…orz
153 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 11:47:29 ] >>148 def collatz(n): while n > 1: yield n n = n % 2 and 3*n + 1 or n/2 >>> f = collatz(13) >>> f.next() 13 >>> f.next() 40 >>> [x for x in f] [20, 10, 5, 16, 8, 4, 2] return [リスト] っぽいけど操作すると要素が消費されてくのね… 部分リストを、返せば計算過程が [[13],[13,40],[13,40,20],[13,40,20,10],…] >>> t_colltz(13) 13 13 -> 40 13 -> 40 -> 20 13 -> 40 -> 20 -> 10 … 便利?
154 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 12:14:06 ] >>> for i, x in enumerate(collatz(13)): print x[:i+1] [13] [13, 40] [13, 40, 20] [13, 40, 20, 10] [13, 40, 20, 10, 5] [13, 40, 20, 10, 5, 16] [13, 40, 20, 10, 5, 16, 8] [13, 40, 20, 10, 5, 16, 8, 4] [13, 40, 20, 10, 5, 16, 8, 4, 2] StopIteration で最終項 x[:8+1].append(1)を 返すとか可能かな?
155 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 12:42:35 ] >>153 相変わらずよくわからんが def holder(seq): l = [] for x in seq: l.append(x) yield l[:] こんな感じのを作れば任意のイタレータを追跡できるんじゃね 効率悪そうだけど >>> for x in holder(xrange(10)): ... print x ... [0] [0, 1] [0, 1, 2] [0, 1, 2, 3] [0, 1, 2, 3, 4] [0, 1, 2, 3, 4, 5] [0, 1, 2, 3, 4, 5, 6] [0, 1, 2, 3, 4, 5, 6, 7] [0, 1, 2, 3, 4, 5, 6, 7, 8] [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
156 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 14:11:05 ] >>155 codepad.org/ftT9hMVc こんなかんじで f = iter(seq) でパックしつつ 順序が重視される並び(たとえばトランプの手札)を 用意して それに外部から操作する関数 def 人名_gnext(): で 操作したら わかりやすくならないかな…グローバル変数 操作するのと対して変わらないか…
157 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 14:39:47 ] >>144 ジェネレータのyield自体はreturnとほとんど意味は同じ。 next()が呼ばれるとyieldのところから実行が再開される。 (yieldを書くとnext()は勝手に作成される) ジェネレータの中でループ使ってないと、あまり意味はない。 無限ループからyieldで値を返すと、無限数列が作れる。
158 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 15:18:52 ] >>144 入門書嫁。
159 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 21:43:31 ] Pymacs 入れようと思ったんですが、pymacs-servicesが見つかりません どこですか?
160 名前:デフォルトの名無しさん mailto:sage [2008/06/17(火) 23:50:40 ] pymacs-0.23です
161 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 10:31:56 ] Pythonってクールですね
162 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 10:51:12 ] Pythonってコールドですね
163 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 10:54:50 ] 162だけがコールドですね。
164 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 11:02:53 ] 僕のPythonもクールダウンしそうです
165 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 11:10:09 ] >>164 単三電池でウォームアップすれば? ところでみんなアッー!温泉行く?
166 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 11:17:48 ] python 開発の歴史をビジュアル化したものだそうです www.vimeo.com/1093745 2000年ごろとか Google 移籍辺りでドーンと来てるね
167 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 11:52:39 ] コミットを視覚化してるのか、面白いね
168 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 12:05:05 ] 離れてってるのもあるのが微妙
169 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 12:07:16 ] この効果音あんまり好きじゃない
170 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 15:50:16 ] >>166 GJ
171 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 17:18:27 ] Batteries Inserted
172 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 18:08:23 ] 話題に乗るのが2,3日遅くね?
173 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 18:17:45 ] 電池挿入済みの哲学ですね。わかります
174 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 21:22:40 ] このスレを見ている人はこんなスレも見ています。(ver 0.20) 【batteries】電池☆挿入【inserted】[ガチホモ]
175 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 22:45:06 ] 自己解決しました
176 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 23:40:43 ] 自己挿入しました。
177 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 01:19:24 ] ^ ~ ってなんの演算子?
178 名前:デフォルトの名無しさん mailto:sage [2008/06/19(木) 01:32:38 ] >>177 ttp://www.python.jp/doc/release/lib/bitstring-ops.html
179 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 01:42:07 ] ttp://d.hatena.ne.jp/odz/20061119/1163971267#20061119fn1 いい加減なんだってさ
180 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 02:01:32 ] そもそも比較なんていい加減なもんだろ 微妙に方向違うんだから完璧に正しく比較なんてむりだ
181 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 02:08:27 ] 変数名の面白さを比較するんですね わかります
182 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 03:25:22 ] >>179 内容は、揚げ足とるだけで終わっているね
183 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 03:56:23 ] ちょっとききたいんですが。 Python2.5ライセンスのBの3を見ると、 >Python2.5を改変して使う場合は変更点の要約を配布物に含めよ みたいなことがかいてあるけど、たとえばPythonのソースに手を加えて 改造版Python25.dllをつくってアプリに組み込んだとすると、 具体的にどこを改造したのかドキュメント化(もしくはソース添付)しないといけないってこと?
184 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 09:33:29 ] うん
185 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 09:53:26 ] >>179 「はじめてのPython」の著者じゃん(wwww 糞本の作者だけあって、便所の落書きも糞だな(wwwwwwwwww
186 名前:デフォルトの名無しさん mailto:age [2008/06/20(金) 10:17:51 ] 2.6b1 & 3.0b1 release age 3.0はモジュール名の大改修が行われてて、2.xからの移行が大変そうだ……
187 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 11:24:00 ] それは、オリジナルの Python25.dll をつかってさえいれば、 なにも書く必要は無いってこと?
188 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 11:58:10 ] >>186 っ2to3
189 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 12:35:10 ] >>188 構文はそれでだいたいいけるとして、 ライブラリの再編まで追従してくれるのん? つか初βだし、そろそろ2to3使ってみるかな
190 名前:デフォルトの名無しさん [2008/06/20(金) 13:19:10 ] 関数(メソッドじゃなくてインデント0のdef)が、頭大文字の名前で定義されてるのを見たんだけど、 これは慣習的にどういう意味を持つの? ついでに、メソッドの場合は?
191 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 13:48:34 ] 関数名が大文字で始まるのはMicrosoftのAPIなんかがそうだな
192 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 13:55:28 ] wxPythonなんか使ってる場合もそうだな
193 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 15:36:43 ] functional でいろいろ楽ができそうなんだけど 検索してもあんまり情報でてこない ひょっとして3.0で大幅に変わったりするの?
194 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 15:59:15 ] なんのこと?
195 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 16:26:11 ] www.ibm.com/developerworks/jp/linux/library/l-prog3/
196 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 16:36:19 ] 3.0との接点がなさそうだが
197 名前:デフォルトの名無しさん mailto:sage [2008/06/20(金) 22:05:53 ] for i in range(1, len(ss)): range()は数列の配列を返すんだからfor文中でssをいじってもループ回数は変わらない・・・ で合ってますか?
198 名前:190 mailto:sage [2008/06/21(土) 01:13:28 ] >>191 ,>>192 つまり、関数やメソッドの名前をCamelCaseにするかsnake_caseにするかは、 定着した慣習はなく、書く人の好みと言うこと? 俺が見たCamelCaseの名前で関数を定義してるソースは、 Guido本人が書いた可能性もあるソースなんだけど、本人すらカオスってるって事か。
199 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 01:43:18 ] >>198 具体的にどのソースのことを言っているの? サンプル数が少ないようならそもそも慣習とは言えないし。
200 名前:190 mailto:sage [2008/06/21(土) 02:07:49 ] rietveld.googlecode.com/svn/trunk/codereview/engine.py これっす。 def ParsePatchSet(patchset):とか def FetchBase(base, patch):とか。
201 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 02:08:14 ] >>198 PEP 8 -- Style Guide for Python Code www.python.org/dev/peps/pep-0008/ PEP 7 -- Style Guide for C Code www.python.org/dev/peps/pep-0007/
202 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 06:55:30 ] pygletスゲーーーー SDLいらねーーーー
203 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 08:16:19 ] pygameの翻訳しろよカス共 neet山もpygame講座の続き書けよ、何年経ってると思ってるんだクソが
204 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 08:45:58 ] >> 197 range()の引数はすぐに評価されるから、range(1, len(ss))とした時点で 1, 2, ..., len(ss)の配列か、イテレータができちゃう。だからループ内でssを変更しても、forループの対象になってるイテレータは影響を受けないよ。 ssが動的に変わるなら、例えばこうだ。 i = 0 while i<len(ss): i+=1 ...
205 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 09:14:50 ] 197を見てふと次の2つのコードを試してみた a = 'aaa' for e in a: a += 'b' a = list('aaa') for e in a: a += 'b' また1つ賢くなった。
206 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 09:37:11 ] CraftLaunchのように自作ソフトウェアのマクロとしてPythonを組み込みたいのですがどうすればよいのでしょうか?
207 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 09:44:30 ] >>206 ttp://www.python.jp/doc/release/ext/embedding.html
208 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 13:33:17 ] 少々スレ違いかもしれませんが。 C++でpython拡張を作成し、setup.pyでビルドしたのですが。 $ cat setup.py #!/usr/bin/env python # setup.py from distutils.core import setup, Extension module = Extension( 'foo', sources = ['foo.cpp'], include_dirs = ['/usr/local/include/'], library_dirs = ['/usr/local/lib'], libraries = ['boost_python-mt', 'boost_filesystem-mt'] ) setup( name = 'Foo', version = '1.0', ext_modules = [module], ) $ ./setup.py build running build running build_ext building 'Foo' extension creating build creating build/temp.macosx-10.3-fat-2.5 gcc -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused-madd -fno-common -dynamic 以下略
209 名前:208 mailto:sage [2008/06/21(土) 13:34:01 ] 最後の行を見てもらうとわかる通り、librariesで指定したライブラリを動的リンクしているのです。 これを静的リンクにするにはどのようにすれば良いのでしょう? というか、setup.pyでGCCのオプションを設定するにはどのようにすれば良いのでしょうか?
210 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 13:43:05 ] >>207 ありがとうございます。もう少し調べるべきでした...
211 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 14:41:20 ] プロンプトのコマンドを2つ同時に行う方法について聞きたいです サブプロセスでプロンプトを用いてファイルのコピーを行いたいです。 os.systemを用いて行うには、 1、cd "保存先" 2、copy "コピー元のファイル" "コピー先でのファイル" 以上の二つを宣言しなくてはいけないため、実際に自分が考えた方法では os.system("cd "保存先"") os.system("copy "コピー元のファイル" "コピー先でのファイル"") としてしまうと、別々にプロンプトを開いてしまい機能しません。 何か対処法は無いでしょうか?
212 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 14:44:56 ] os.system("copy "コピー元のフルパス" "コピー先でのフルパス"")
213 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 14:58:37 ] >>212 ありがとうございます。助かります。 pythonではない質問で申し訳ありません。
214 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 17:06:13 ] >>211 os.system("cd 保存先") ではカレントディレクトリは変わらないみたいだよ。 os.chdir() を使う必要があると思う。
215 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 17:44:37 ] >>214 みたいだよ、というか、変わらない。 子プロセスのCWDが変わって終わり。 自プロセスのCWDを変えるには自プロセスが chdir(2) を 実行しないとダメ。
216 名前:デフォルトの名無しさん [2008/06/21(土) 21:40:12 ] >>> eval("1") 1 >>> eval("print 1") Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<string>", line 1 print 1 ^ SyntaxError: invalid syntax >>> なんで?
217 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 21:41:13 ] つ exec
218 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 21:46:17 ] >>211 os.system("cd hoge && copy from to") とかやってもよい &&は、一般的なUnixの/bin/shでもWindowsのcmd.exeでも使えるはず
219 名前:デフォルトの名無しさん mailto:sage [2008/06/21(土) 21:51:30 ] >>216 入門書嫁 そして式と文の違いを知れ
220 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 00:58:42 ] >>218 そしてcdに失敗したときに変なところにごみファイルが出来る訳ですね
221 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 00:59:55 ] >>220 &&の意味分かってる? python の andと同じでショートサーキットで動く 前のコマンド(cd)が成功しないと、次のコピーは実行されないよ
222 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 01:25:58 ] set と frozenset の違いって何? list と tuple みたいなもん? そういればフローズンバイナリもよくわからないんだけど、これってなんなの?
223 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 02:38:09 ] >>222 www.google.co.jp/search?q=python+set+frozenset
224 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 02:43:14 ] setの使い方というか意義自体よう分からん、java知ってる人には便利らしいんだけど >>222 setとfrozensetの違いは思ったとおりみたい 不可変だとハッシュに使えるの良いんだよ、ってチュートリアルにあった
225 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 06:23:14 ] >>> L = [1, 2, 3, 1] >>> list(set(L)) [1, 2, 3] なんかはたまにする。けどそれ留まり tupleはデータベースなんかだとlistよりしっくり来る気もする
226 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 08:02:19 ] たまーに値がダミーでキー・添え字が主体な辞書・配列って見ない? (たぶん書いてる本人もアホっぽいと自覚してるようなコード) そういうのはsetで明示的にシンプルに書ける。 まー値の更新なんかタダみたいなもんだから実行コストは変わんないだろうけど。 SQLでいうSELECT DISTINCTだから用途は多いとおもう。
227 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 10:54:34 ] htmlからリンクを検索するとき、検索済みのURIをsetに入れておいたりするな。
228 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 10:57:58 ] >>226 setの方が遅いからじゃない?
229 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 11:17:22 ] >>228 そんなのは初耳だ setの実装はハッシュテーブルだからlookupはO(1)のはずだが 勿論重複除去にも使えるが、 if x in foo: みたいなテストを頻繁にやりたいのなら、setがいいよ fooがtupleやlistなら、リニアサーチだからO(n)になる >>227 はいい例だな
230 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 11:48:40 ] >>226 昔はsetがなかったからだろ
231 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 12:03:16 ] fooが辞書ならsetと同じですか
232 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 12:33:50 ] >>231 そうだけど、setでいいところにdict使うのは無駄だろ setならlist, tupleのようなシークエンスやiteratorから直接構築できるしな
233 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 14:46:23 ] 「任意の文字列」を2文字区切りのデータとして set に切り出すのは無理ぽ? >>> C=[u"中華人民共和国"] >>> def indexing(str): ... S.add(e) ... S.add(e[:2]) ... S.add(e[1:3]) ... S.add(e[2:4]) ... S.add(e[3:5]) ... S.add(e[4:6]) ... S.add(e[5:7]) ... >>> S.clear() >>> >>> for e in C: ... indexing(e) ... >>> for e in S: ... print e, ... 民共 中華人民共和国 共和 華人 和国 人民 中華
234 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 14:58:41 ] こんなのか def pairs(iterable): it = iter(iterable) last = it.next() for item in it: yield last, item last = item print list(''.join(p) for p in pairs("foobar"))
235 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 15:26:37 ] ある文字列 'saieunak' を並べ替えて出来る組み合わせを全て挙げるには?
236 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 15:42:39 ] def permutation_string(s): if len(s) == 1: yield s for i in range(len(s)): for j in permutation_string(s[:i] + s[i+1:]): yield s[i] + j def iset(iterable): S = set() for i in iterable: if i not in S: S.add(i) yield i for i in iset(permutation_string("saieunak")): print i
237 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 15:50:49 ] このほうがいいな。str, list, tuple対応 def permutation(seq): if len(seq) == 1: yield seq for i in range(len(seq)): for j in permutation(seq[:i] + seq[i+1:]): yield seq[i:i+1] + j
238 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 18:35:37 ] 喜 = ['glad','happy','enjoy'] ^ SyntaxError: invalid syntax python って2バイト文字を識別子に使えない?
239 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 18:51:13 ] >>238 Python3.0ならできるらしい
240 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 18:55:00 ] >>238 そんなにスイーツ()関数が作りたいのか
241 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 20:53:01 ] >>238 www.python.jp/doc/nightly/ref/identifiers.html
242 名前:デフォルトの名無しさん mailto:sage [2008/06/22(日) 21:37:16 ] ついでとして3.0 docs.python.org/dev/3.0/reference/lexical_analysis.html#identifiers-and-keywords
243 名前:デフォルトの名無しさん mailto:sage [2008/06/23(月) 08:28:49 ] pythonからシステムのクリップボードにアクセスしたり、文字列を代入したりすることは出来ますか? OSはubuntu8.04です。よろしくお願いします。
244 名前:デフォルトの名無しさん mailto:sage [2008/06/23(月) 10:10:09 ] はい
245 名前:デフォルトの名無しさん [2008/06/23(月) 11:26:46 ] >>> a = [ "apple" ] >>> print a ['apple'] これ,["apple"] みたいに文字列の引用符を 二重引用符にすることってできませんか? できれば __builtins__.str() にそういう機能があればいいんだけど.
246 名前:デフォルトの名無しさん mailto:sage [2008/06/23(月) 12:20:31 ] >>245 できない気がするけどなぜそんなことがしたいの?
247 名前:デフォルトの名無しさん [2008/06/23(月) 13:01:28 ] >>246 simplejson とかインスコするのが面倒な場面で JSON を楽に吐きたかった. Windows で simplejson インスコするの面倒だから. でも MinGW つかってバイナリパッケージ作った. だれか必要?
248 名前:デフォルトの名無しさん mailto:sage [2008/06/23(月) 13:14:21 ] >>247 docs.python.org/dev/3.0/library/json.html あ、jsって文字列リテラルが""なのね・・・ >>> import json >>> json.dumps(['foo', {'bar': ('baz', None, 1.0, 2)}]) '["foo", {"bar": ["baz", null, 1.0, 2]}]' いつの間にか標準ライブラリの Internet Data Handling の所に 追加されてるのな。PEPとかないのか。なんじゃこりゃ docs.python.org/dev/3.0/whatsnew/3.0.html
249 名前:デフォルトの名無しさん mailto:sage [2008/06/23(月) 13:15:03 ] >>244 携帯から失礼 時刻(2008/06/23 12:00のようなフォーマット)をクリップボードにコピーするスクリプトを書こうと思ったのですが、クリップボードにアクセスする方法がわからずになやんでいました。 出来るとのことですが、どのような方法でしょうか?
250 名前:デフォルトの名無しさん mailto:sage [2008/06/23(月) 13:47:02 ] >>249 こんなんでいいだろ。てかxselでおk #!/usr/bin/python import gtk, gobject, sys if len(sys.argv) == 1 or sys.argv[1] not in ('-i', '-o'): print "Usage: clip.py [-i|-o]" sys.exit(1) def f(): clip = gtk.Clipboard() if sys.argv[1] == '-i': clip.set_text(sys.stdin.read()) if sys.argv[1] == '-o': sys.stdout.write(clip.wait_for_text()) gtk.main_quit() gobject.idle_add(f) gtk.main()
251 名前:デフォルトの名無しさん [2008/06/23(月) 13:56:05 ] >>248 標準ライブラリで JSON を扱えるようにするにあたって 現在いろいろ乱立しているJSONライブラリのどれを ベースにするかでひともめ有った気がする。 最終的にどうなったかは知らないけど、 simplejson のインターフェイスに似せるってのが 多くの支持を得てたような。 自分は 2.5.2 しか使ってないから 2.6/3.0 の動きシラネ
252 名前:デフォルトの名無しさん mailto:sage [2008/06/23(月) 14:31:32 ] Issue 2750: Add simplejson to Python 2.6/3.0 standard library bugs.python.org/issue2750