1 名前:デフォルトの名無しさん mailto:sage [2007/11/30(金) 21:49:38 ] Python オフィシャルサイト www.python.org/ 日本Pythonユーザ会 www.python.jp/Zope/ FrontPage - Pythonのお勉強 python.rdy.jp/ 前スレ pc11.2ch.net/test/read.cgi/tech/1192884897/ ◆関連スレッド Microsoft IronPython 1.0 pc11.2ch.net/test/read.cgi/tech/1157686822/ Python の宿題ここで答えます Part 1 pc11.2ch.net/test/read.cgi/tech/1153585095/ 2ch検索: [python] find.2ch.net/?BBS=ALL&TYPE=TITLE&STR=python ◆関連サイト Python ドキュメント www.python.jp/doc/release/ Index of Python Enhancement Proposals (PEPs) www.python.org/dev/peps/ 参考サイト - Pythonのお勉強 python.rdy.jp/wiki.cgi?page=%BB%B2%B9%CD%A5%B5%A5%A4%A5%C8 .
159 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 08:38:51 ] open()使いなさいよってことかと
160 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 08:38:57 ] testpath.pyのみのときは元々実行ファイルのパスが判明しているが (エクスプローラでダブルクリックするとさらに状況が違うかも知れない) python testpath.pyのときは、実行ファイルがカレントディレクトリにいるため プログラム中の os.path.abspath または os.path.dirname の内部でパスが補完されている おそらく C:\>python C:\日本語\testpath.py を実行すれば前者(testpath.pyのみ)と同じ結果になるだろう os.path.abspath または os.path.dirname のUNICODEの取り扱いに問題があると思われ
161 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 08:47:28 ] >>159 file は2.2か2.3で新しく追加された関数(というかコンストラクタ)で、 むしろ open の方が古い仕様で file のエイリアスって 扱いじゃなかったっけ。。。。。。
162 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 09:05:31 ] 整理) b = os.path.abspath(os.path.dirname(unicode(sys.argv[0], 'mbcs'))) の状況で(この段階↑で既に変なことしてるように見えるが) 1) print u'%s/ふが' % (b.decode('mbcs')) # testpath.py のときだけエラー 2) print u'%s/ふが' % (b) # python testpath.py のときだけエラー 1)になるパターン ・C:\日本語>testpath.py ・エクスプローラからダブルクリック ・C:\>python 日本語\testpath.py ・C:\日本語>python ..\日本語\testpath.py ・C:\日本語>python C:\日本語\testpath.py 2)になるパターン ・C:\日本語>python testpath.py のみ? 結論) とりあえず a = sys.argv[0] b = unicode(os.path.abspath(os.path.dirname(a)), 'mbcs') print u'%s/ふが' % (b) という書き方なら(1)(2)共に問題ありませんでした 本当にありがとうございました
163 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 09:55:33 ] WindowsXP+Python3.0a2でIDLE起動したんだが プルダウンメニューとコンテキストメニューが派手にバグっててorz 一瞬何が起こったのか分からんかった
164 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 10:11:11 ] こんな流れか? (1). iterator導入。 (2). 新規にfile()作ったぜ。みんなコレ使え。 (3). iterator浸透。generator導入。 (4). なんだかもう、open()はfile()のエイリアスでいい気が…… (5). マニュアル『open()はfile()のエイリアス。過去互換です。』..._〆(゚▽゚*) (6). file()いらねーだろ。統一感ないし。"みんな"使ってないし。←いまここ (7). じゃあfile()は廃止ね。(5)をまじめに実行した奴m9(^Д^)プギャー
165 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 10:20:01 ] 変数名に file 使いたいから file() 使いにくいんだよね…… def f(): file = file("/dev/null") # ここで UnboundLocalError が飛ぶ
166 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 11:17:45 ] >>160 >>162 解決しました。 ありがとうございました。
167 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 14:20:08 ] なんだよマニュアルに open() は過去互換とかいうから file() 使っていたのにヽ(`Д´)ノ
168 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 14:47:54 ] import urllib conn = urllib.urlopen("test.txt") data = conn.read() conn.close() みたいなかんじでIO関連の処理はopen+closeでやる ものだと何となく認識してた俺は大丈夫だったようだ…
169 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 15:46:30 ] Python 2.4: 以前の関数名である open() は互換性のために残されており、 file() の別名となっています。 Python 2.5: When opening a file, it's preferable to use open() instead of invoking this constructor directly. ファイルを開くときは、このコンストラクタ(file)を直接実行するより、open()を使う方が望ましい。
170 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 17:25:58 ] >167 オレモオレモ… orz
171 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 17:33:15 ] Python 2.3でこの関数を呼ぶと、 def _IOC(dir, type, nr, size): return ( dir << _IOC_DIRSHIFT) | ¥ (ord(type) << _IOC_TYPESHIFT) | ¥ ( nr << _IOC_NRSHIFT) | ¥ ( size << _IOC_SIZESHIFT) /usr/lib/python2.3/site-packages/video4linux/__init__.py:112: FutureWarning: x<<y losing bits or changing sign will return a long in Python 2.4 and up return ( dir << _IOC_DIRSHIFT) って、出るんですけど、 何を修正すればこのwarningは消えますか?
172 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 17:40:54 ] ttp://docs.python.org/lib/module-warnings.html ttp://www.python.jp/doc/2.4/lib/module-warnings.html
173 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 18:11:07 ] >>172 単にwarningが表示されないようにするのではなく、 warningの原因自体を取り除きたいです。 >>171 の書き方のどこがまずいんでしょうか。
174 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 18:16:18 ] def func(a, b): pass という関数があったとして、 func(1, 2) と書くかわりに tup = (1, 2) func(tup) みたいにしたいんですが、 どうやったらいいでしょうか。 func自体は修正できないものとします。
175 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 18:18:34 ] tup = (1, 2) func(*tup)
176 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 18:24:41 ] >>175 ありがとうございました。
177 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 20:44:17 ] >>175 これ便利だよね関数にタプル渡して処理してくの def getSafeText(self, text): htmlFixes = [ ("&", "&"), ("<", "<"), (">", ">"), ] for fix in htmlFixes: text = text.replace(*fix) return text
178 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 20:52:00 ] なんかと思ったら&、>、<への変換か
179 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 21:09:58 ] &amp;と書かないと意味不明
180 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 00:01:57 ] ターミナルからpythonインタプリタを呼び出して利用しているのですが、 バッファをクリアする方法はあるでしょうか。
181 名前:デフォルトの名無しさん [2007/12/13(木) 02:37:39 ] 指定された条件でファイルを検索し条件にマッチしたファイルがあるディレクトリ上のcallback.pyのimportを行い その中で定義されてる関数on_matchを呼び出すというような実行可能ファイルをCで書きたいと思っています ただPyImport_ImportModuleを呼び出すとファイルがあるディレクトリをPythonに伝えていないのでcallback.pyは もちろんimportされません $PYTHONPATHをプログラムの中でいじくればimport対象にディレクトリ上のcallback.pyを追加できるとは思うのですが 環境変数をいじらずに同等のことを行える関数はありますでしょうか?
182 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 03:49:36 ] >>181 Python Programming Language :: PyImport_ImportModule/embeddin g: surprising behaviors www.megasolutions.net/python/PyImport_ImportModule-embeddin-g_surprising-behaviors-38379.aspx 参考になるかわからないけどこんなの見つけた
183 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 05:08:04 ] スレち気味ですみません パイソンのdictが便利なんですが 初期化とかsetitemとかupdateのときに type checkをしたいんです。 dictをサブクラスしてできるんですが いちいちやるのがすごくめんどうくさい なんかいまやってることにパイソンはあんまり向いてないような気がしてきました なにかお勧めの言語はあるでしょうか? javaとか? 当方perl/pythonとあとC++をすこしつかいます
184 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 05:48:29 ] >>181 import hage.fuga.hoge.callback じゃだめ?
185 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 07:13:13 ] >>171 x << y を int((long(x) << y) & sys.maxint) と直せばよいかと。
186 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 07:18:10 ] >>173 まずいということではなくて、2.3以前と2.4以降で << の結果が変わりますよーというお知らせ。
187 名前:181 mailto:sage [2007/12/13(木) 10:05:16 ] >>184 それだと実行可能ファイルがあるディレクトリからの相対的な位置指定しかできなく 実行可能ファイルがあるディレクトリよりroot方向よりの指定もできないと思います パスをなんらかの方法で指定し(最悪 環境変数PYTHONPATH importにモジュール名のみを渡してimportというのがよいかと思っています
188 名前:デフォルトの名無しさん [2007/12/13(木) 10:19:45 ] rubyとpythonって将来の有望性はどっちが上なんですか? 初心者なんでどっちか片方をスクリプトの基礎を勉強しながら取り組みたいのですが
189 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 10:24:45 ] PHPだろ常考
190 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 10:27:41 ] んだPHPでもやっとけ そして二度とPythonスレには来るな
191 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 11:11:05 ] >>188 マジレスすると、どっちも有望 WebプログラミングではRails人気もあってRubyが有望 でも企業内ではPythonのほうが広範囲に使われている(Google, Pixar, DreamWorks, Youtube, Sega, etc)
192 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 11:23:42 ] >>181 /* 独自の import 関数を定義する */ PyObject* MyImport(const char* name, PyObject* globals, PyObject* locals, PyObject* fromlist) { /* 最初に標準でのインポートをこころみる */ PyObject* module = PyImport_ImportModuleEx(name, globals, locals, fromlist); if (module && PyModule_Check(module)) return module; PyErr_Clear(); /* Import エラーを破棄 */ Py_XDECREF(module); /* 標準インポートに失敗した時だけ独自インポートを試みる */ module = 独自にインポートするか、パスを変えてもう一度 PyImport_ImportModuleEx を呼び出す return module; } この API を、例えば "my" モジュールの "importhook" という名前で登録しておく. そして、__builtins__['__import__'] を my.importhook で置き換えるようなコードを書く const char* pysource = "\n\ def replace_import():\n\ import my\n\ __builtins__['__import__'] = my.importhook\n" これを Py_CompileString でコードオブジェクト化してから PyObject_GetAttrString で replace_import 関数オブジェクトを取り出し、PyObject_CallFunction で実行する。 もしかしたら PyRun_String でそのまま実行してOKかもしれんけど、その場合は globals 引数を 適切に設定しないとダメだと思う。 とりあえず、これで import を実行する度に MyImport が呼ばれるようになるから、あとは 自分でパスを補完するなり独自に取り込むなりすれば良い
193 名前:デフォルトの名無しさん [2007/12/13(木) 11:34:29 ] 独自 import を定義する時は、「独自インポートに失敗したら標準インポート」よりも 「標準インポートに失敗したら独自インポート」の方が無駄がなくていいよ。 __import__ は既に import されているかどうかに関わらず、 import 文が実行されたら必ず毎回呼び出されるから、もし独自 import の方を先に処理すると インポート済みかどうかって事を毎回自分で調べる必要があるので無駄な処理時間が増える。
194 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 11:41:45 ] >>191 >企業内ではPythonのほうが広範囲に使われている(Google, Pixar, DreamWorks, Youtube, Sega, etc) こんなウソを信じちゃダメだ!! PythonができればGoogleに入社できるなんて嘘っぱちだ!!!
195 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 11:59:34 ] >>188 プログラマなら複数言語できてあたりまえだし 必要にせまられれば柔軟に吸収できるもんだよ。 だからとっかかりは将来性とかかんがえずに好みできめていいよ。 (イメージロゴがすきだとか興味あるアプリがあるとか) あと最初に変なクセがつく危惧もあるけど意識して複数こなせば解消できる。
196 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 12:01:07 ] マジレスすると (C or Java or PHP) + (Python or Ruby) これ最強。
197 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 12:02:55 ] 195のレスが情報量ゼロな件。
198 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 12:22:42 ] 197のレスが情報量ゼロな件。
199 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 12:46:40 ] >>183 typecheckていうのをデコレータとして作って、 class mydict(dict): __init__=typecheck(dict.__init__) __setitem__=typecheck(dict.__setitem__)
200 名前:171 mailto:sage [2007/12/13(木) 13:24:39 ] >>185-186 ありがとうございます。 module内で定義している定数全てに、 'L'をつけて対応しました。
201 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 16:05:50 ] >196 (C or アセンブラ) and (Perl or Java or PHP or Python or Ruby) の間違いじゃねーの?
202 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 16:09:35 ] >>192 乙 しかしながら181は "独自にインポートするか、パスを変えてもう一度 PyImport_ImportModuleEx を呼び出す " という部分に関してPYTHONPATHを使う以外の方法が分からなくて質問してきてると思われる というわけで ttp://mail.python.org/pipermail/python-list/2001-October/108376.html とか ttp://mail.python.org/pipermail/python-list/2001-October/108485.html を見てみることをお勧めする
203 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 16:23:45 ] python unconference とかいうのに行ってきた。
204 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 16:51:12 ] (C and C++ and (Java or C#)) and (((Perl or PHP) and (JavaScript) and (Python or Ruby or LISP)) or ((JavaScript) and (Python or Ruby or LISP)))
205 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 17:11:39 ] 素直に、「PerlとPHPは要らないと思うんだ」と言えんか。
206 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 17:36:57 ] Unixをプラットホームに構えるならPerlはツールとして当面必要だろjk PHPと同列にするセンスに違和感。
207 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 17:43:00 ] 誰にも必要とされない言語なんて悲しすぎるじゃないですかー
208 名前:デフォルトの名無しさん [2007/12/13(木) 18:27:22 ] (C and (perl or python or ruby)) or Java
209 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 19:35:48 ] Perl or Python でいいのにRuby絡ませたがる奴は誰だ
210 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 20:11:24 ] >>204 Lisp みたいな括弧の数だな
211 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 20:14:43 ] 将来も考えてるならPHPとかPerlとかにどっぷりつかるのはやめたほうがいい
212 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 22:40:58 ] 関数内関数から、外側の関数のローカル変数を更新する方法はないでしょうか? def f(): def g(): z = 3 # fのローカル変数zを更新したい z = 0 g() return z # 3を返して欲しい のようなコードでは、gのローカル変数zの更新になってしまいます。 かといってgの先頭にglobal zを加えると、fのスコープを飛ばしてglobalなスコープを見に行くので エラーになります。
213 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 23:03:30 ] def f(): def g(): f.z = 3 f.z = 0 g() return f.z
214 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 23:40:57 ] >>> def f(): ... def g(): ... f.z = 3 ... f.z=0 ... g() ... return f.z ... >>> f() 3 >>> h=f >>> f=0 >>> h() Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<stdin>", line 4, in f AttributeError: 'int' object has no attribute 'z'
215 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 01:20:34 ] >>201 >(C or アセンブラ) and (Perl or Java or PHP or Python or Ruby) オッサンは窓際で朽ち果てていてね。
216 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 02:10:40 ] ああ、そういうもっと根本的なAPIの質問だったのか。なら .py ファイルを fopen なりなんなりで開いて文字列読んで Py_CompileString でコードオブジェクトにしてから PyImport_ExecCodeModule に食べさせてインポート完了。 .pyc や .pyo の場合は先頭の4バイトから long を読んで、 その値を PyImport_GetMagicNumber と比較してマジックナンバーをチェック。(別にチェックしなくてもいいけど) 次の4バイトは完全無視。 残りのバイト列を PyMarshal_ReadObjectFromString か PyMarshal_ReadLastObjectFromFile に 食べさせればコードオブジェクトが出てくるから、 それを PyImport_ExecCodeModule に渡せばインポート完了。 Py_DECREF とか忘れないように。
217 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 02:11:28 ] 自分の職場は (Fortran or C or C++) and (awk or Perl or Python or Ruby) だな
218 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 02:13:48 ] ていうか、ただでさえ Python 日本語サイト少ないのに、 C-API の話となるとほぼ皆無だよね。 標準ドキュメントが充実してるとはいえ、ちょっとした Tips が分からないのは苦労する。 ていうか、C実装の領域まで踏み込んで Python 使ってる人ってどれぐらいいるんだろうか。 みんなは CからPython使ってる?
219 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 02:25:53 ] ところで、 PySys_SetPath とか Py_VaBuildValue とかってマニュアルに載ってないよね? ソース見てて初めて気がついた。PySys_SetPath と同じ機能の関数つくっちゃった後だったよ。。。orz __import__ 関数を自分定義の関数でオーバーライドできるという事は、 ローカルにライブラリファイルを全く持たないで、import 文を実行したときに ネットワークから直接ファイルを読んでくるってのが可能だと思うんだ。 どっかのサーバに標準ライブラリその他をまるごと置いておけば、 インストール作業を全くすることなく、なおかつコンパクトなスタートアップスクリプトだけを 配布すればよい。これでなんか面白そうな事できないかな。。。。
220 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 02:36:58 ] >>218 SWIG とかで楽できる領域を越えたくない… 標準ドキュメントでいろいろ調べられる点については JNI よりマシだと思った
221 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 03:08:47 ] >>218 CからPythonを呼ぶのは、 Cで書くのマンドクセだから 本当にただ呼び出すだけだ。 PythonからCを使うのは、 Cのライブラリが目的だから これも呼び出すだけだ。 CでPython関数をモリモリは使わんなぁ。 >>219 一般的な問題を話させてもらうと、 ローカルとネットワークはやっぱり違う。 ローカルとネットワークの抽象化をライブラリ層で図ろうとしても、(←やりがいのある作業だ) 必ず実装がアプリ層に漏れてきて、面倒ごとが増える。(←何故か作業が増えている) 上手くいきそうでも、中々うまくいかない。(←みんながイラついてくる) そしてユーザー層まで漏れていく。(←どうしろというんだ) 例えばだけど、 たかが50行のソースを、 py2exe使って依存ファイルを詰め込んだ 巨大な10MBのexeファイルで配るのは非常に馬鹿馬鹿しいことだ。 つーか馬鹿にされる。 でも一番トラブルが少ない。←これ重要だと思うよ
222 名前:183 mailto:sage [2007/12/14(金) 04:01:51 ] >>199 助言ありがとうございます メタクラス、デコレータとかちょっと真剣に勉強してみます
223 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 07:08:06 ] >>219 import hook したいだけならサポートモジュールを作ったことがあるよ
224 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 10:27:15 ] 何でeasy_installを標準パッケージに入れないんだろ? 入れてこそ真価を発揮すると思うんだけど……
225 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 10:41:51 ] >>213 def f(): z=[0] def g(): z[0] = 3 z[0] = 0 g() return z[0]
226 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 13:11:15 ] >>225 ポール・グレアムはそうやっているね。 practical-scheme.net/trans/icad-j.html で、↓こういう反論が来たと。 practical-scheme.net/trans/IsPythonLisp-j.html
227 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 15:18:46 ] Guidoはレキシカル変数が暗示的な変数に見えたんだろうな。 そして self と __アンダ_バ__ を用意したわけだ。
228 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 16:01:05 ] つまり、こう言いたい訳ね。 >>> class F: def __call__(self): self.z = 0 def g(): self.z = 3 self.z = 0 g() return self.z >>> f = F() >>> f() 3 >>>
229 名前:デフォルトの名無しさん [2007/12/14(金) 16:08:05 ] Guido van Rossumって 日本語の発音だとどうなるの? ガイド・ヴァン・ロッサム?
230 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 16:32:20 ] >>229 田中太郎です。
231 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 16:43:52 ] ジード ファン ロスム
232 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 17:03:29 ] slashdot.jp/developers/article.pl?sid=04/07/24/1020202 グイド・ヴァンロッサム氏
233 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 17:31:30 ] ファンデルワールス力とかファンデルヴェルデンとか、オランダ人のvanはファンと読むのが慣例のような気がする
234 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 17:41:18 ] ドイツ語だからな
235 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 18:12:42 ] ふぁんでるわーるすか!
236 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 18:16:00 ] ふるへっへんど
237 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 18:30:16 ] ホィド・ファン・ロシューム
238 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 18:48:25 ] ドイツ語はvon
239 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 19:43:54 ] >>212 ○global z ×nonlocal z まぁ2.5にゃないんですけどね
240 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 00:35:56 ] フォン•ノイマン Von Neuman
241 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 00:45:21 ] ガイドさん治
242 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 08:49:58 ] >>239 ○と×、逆じゃない?
243 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 12:27:13 ] 初めてのPythonの古いほう(初版)を古本屋で買ってしまったんですが 第2版を買いなおした方が良いでしょうか? 2000〜2004の間にどれくらい、言語そのものの拡張と本そのものの 項目が追加されたのかが気になって…。
244 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 12:38:00 ] 基本を覚えちゃって、あとはマニュアルでも読めばいいんじゃね。 プログラム初めてなら新しい方がいいかもしれんね。
245 名前:243 mailto:sage [2007/12/15(土) 13:06:52 ] >>244 ありがとうございます。言語の経験はC++ぐらいなんですが、 Sconsを使っているアプリがWindowsでビルドできなくて 困ってました。 とりあえず、まずは買ってしまった本を読み切るようにします。
246 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 14:17:33 ] 他言語の経験あるなら古い本を読みきろうとか思わずに 公式チュートリアルをバッと読むのがいいとおもう
247 名前:243 mailto:sage [2007/12/15(土) 14:45:53 ] >>246 orz…。チュートリアルを先に見てればよかった…。 でもせっかくなんで両方見ながらやってきます。 どうもありがとうございます。
248 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 16:01:26 ] チュートリアルには、 他言語との違いについてもっと書いてくれるとありがたかった。
249 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 21:06:27 ] Python勉強する人って、他にどんな言語を知ってるんだろう? Javaが嫌になって流れてきた人とか、Perlの汚なさが嫌になった人とか、PythonにLispに類似したものを 見出した人とか、何もバックグラウンドがない素人とか.... どんな人が多いんだろうね?
250 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 21:16:57 ] AWK->Perl->Ruby->Python Javascript C ABEL,AHDL,VHDL ってとこでつね
251 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 21:33:39 ] >>242 うんその通り 今気付いたorz
252 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 21:35:58 ] MSX-BASIC → Python かじってみた言語ならマシン語のハンドアッセンブルから Smalltalk まで他にもたくさんあるけど 自分の目的で使うために習熟したのはこの2つだけ
253 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 22:07:29 ] >>252 オッサン(wwwwwwwwwwww
254 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 22:29:09 ] おっさんだからといって馬鹿にしてはいけない。 ゆとりの俺がいうんだから間違いない。
255 名前:デフォルトの名無しさん [2007/12/15(土) 22:31:26 ] (´-`).。oO(hsp...→vb→python
256 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 22:44:25 ] >>248 他言語との違い を挙げる時、どの言語の例を挙げるのが妥当なのか知りたかったんだけど、簡単には決められない気がするよ。 そもそも、チュートリアルなら下手に内容を詰め込みすぎない方が混乱を防げるような気がするね。 Pythonを勉強する時って、他言語での経験って役に立ったりするのかな?Python自体、すごくシンプルな 言語なので、経験はあるに越したことはないのかも知れないけど、必要ないような気もするね。
257 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 22:45:33 ] >>249 BASIC(高校の授業)->Fortran77(大学の講義)->C(卒研)->Java(趣味)->Python(生きる目的(ジョーク)) 少し体験してみたもの:C++、C#、Scheme、OCaml、その他 色々弄ってきたけどPythonが一番使いやすいね。インデントでブロックを表現する所なんて最高だよ。
258 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 22:53:50 ] >>248 ttp://pc11.2ch.net/test/read.cgi/tech/1192884897/379
259 名前:デフォルトの名無しさん mailto:sage [2007/12/15(土) 22:56:18 ] BASIC→VB(講習)→C++→JavaScript→(DSLいろいろ) →PHP(CGIのため)→Perl(を覚えようとして逃げ帰る)→C++(再覚醒) →Python(ついに見つけたユートピア) って感じ。付き合った期間はC++が一番長いかな。 PrologやHaskellも興味はあるんだけど今の所使い道が無いので…