Pythonについて(アンチ専用)
■ このスレッドは過去ログ倉庫に格納されています
Pythonが嫌いな人のためのスレッドです。 ■関連スレ Rubyについて(アンチ専用) Part002 http://pc11.2ch.net/test/read.cgi/tech/1200210768/
PythonにはRubyのような熱狂がないから反動もないのでアンチスレは盛り上がらない ここは重複スレです 元スレはこちら http://pc11.2ch.net/test/read.cgi/tech/1200210768/ ================================ 糸冬 了 ================================ Blenderに採用されて世話になっている手前、Ruby使いだけどアンチできない 安置じゃないけれど len(x) よりむしろ x.len と記述したかった あーそれは思った。len(hoge)ってvbsかよwって。 for i in range(1, len(hoge) - 1) :とかも萎えたな。 自由度ありすぎなlispは正規表現libraryすら標準のものがないらしい pythonは不自由なのがよいのかも でも不自由を極めると日本語プログラム言語「なでしこ」になっちゃうしな 不自由と感じるかある種のエレガンスと感じるかによって好き嫌いがわかれるのだろう rubyに比べてなんとなくかっこよく見えるからむかつく >>13 シーケンスの要素をループ内で使いたいなら for i in hoge: と書けばいい。 シーケンスの要素とカウンタを同時に得たいなら、 for c, i in enumerate(hoge): とすればいい。 enumerateを知らないやつは厨房。 >>17 ruby よりかっこいいんで Python 使ってる enumerate と iteritem ってどう違うの? help(dict().iteritems)を実行すればおk iteritems は辞書(ハッシュ、連想配列)の話、enumerate は一般のイテレータについて番号つけるって言うもの >>> hoge = {'hage': 'fuga', 'hige': 'moga'} >>> [(k, v) for k, v in hoge.iteritems()] [('hage', 'fuga'), ('hige', 'moga')] >>> [(k, v) for k, v in enumerate(hoge)] [(0, 'hage'), (1, 'hige')] >>> なにこのアンチスレ(w Pythonの人たちは親切だなあ(wwww 安置スレだったか すまんこorz >>> [(c, k, v) for c, (k, v) in enumerate(hoge.iteritems())] [(0, 'hage', 'fuga'), (1, 'hige', 'moga')] >18 要素でなくて、インデックスが欲しい時はどうすんのさ。 (´-`).oO(順番という概念のない辞書の要素にインデックス…) >>27 for idx, __ in enumerate(L): something(idx) よくみろ 要素に番号振ってるんじゃなくて キーに番号振ってるんだよ 20あたりで辞書型のメソッドが出てきて、それ以来アンチスレに似つかわしくないこの流れ。 ・ライブラリの命名規則がばらばら ・なにをするにも import sys, os ・既存の組込みクラスにメソッドが追加できない ・遅い ・self self self ・return return return ・print文、exec文ってなによ ・正規表現リテラルが無いよ ・lambdaが式しか受け付けないよ >>32 (´-`).oO(アンチのレベルが低すぐるのが問題なんだよなぁ。。。) まず荒らしとアンチの違いから教える必要があるようだ...orz... IronPythonのipc.pyでコンパイルされたexeが激遅で萎えた print文はpython的にキモいけどなくなったらなくなったで すげー不便になりそう。schemeみたいに仕様だけは美しいけど 使えない言語になりそう。 Python3 で関数になる >>> print("hoge", 4, 5.67) hoge 4 5.67 蛇(というか爬虫類全般)が苦手なので、名前を聞いただけで尻込みしてしまう。 逆に考えるんだ おっぱいぱーそん→おっぱいそん と考えるんだ >>38 >IronPythonのipc.pyでコンパイルされたexeが激遅で萎えた >>44 >オライリーの本が買えない アンチって貧乏なのかな...? 和製の初心者本が誰を対象にして書いたのかわからんクソ本ばかり (´-`).oO(お金がなくて立ち読みしたので内容がよく理解できていないんだろうか...) >>44 オライリーのやつはヘビじゃなくて ヘビに食べられる動物が載ってる。 貧乏でもPythonならドキュメントが揃ってるだろ 頭が弱いとオンラインドキュメントも読めないんだろうなぁ 日本語で書かれた出版物には大したものがないのでオンラインドキュメントを読みましょう 2.5 の日本語訳はまだありませんがきちんと読めば 2.4 でも充分に事足ります 2.4に載ってなくて重要な標準モジュールは hashlibぐらいかな。 >>1 のwikiに書いてあると思う。 × アンチ専用 × 低賃金基地外ITドカタ隔離専用 1のwikiを2時間探しましたが見つかりませんでした。 >>42 >>>> print("hoge", 4, 5.67) >hoge 4 5.67 この仕様はウンコだよなあ なんで勝手に空白が入ったり改行がついたりするんだよ 空白いれたくなければ、 print("%s%s%s" % (hoge, 4,5.67) とすりゃいいんじゃないの。 改行いれたくなければ標準出力様にお願いしなさい:-) print("%s%s%s" % (hoge, 4,5.67)) )が足りなかった (´-`).oO(無知を仕様のせいにしてウンコとけなすのか...) print 関数は互換性重視だろ。sep, end で調節できる。 print("hoge", 4, 5.67, sep="", end="") 自分のアプリにパイソン組み込んでみた。 久しぶりに脳汁がとまらない。 2008-02-25 15:34:56 という文字列から datetime のインスタンスを作りたいとき >>> time.strptime('2008-02-25 15:34:56', '%Y-%m-%d %H:%M:%S') (2008, 2, 25, 15, 34, 56, 0, 56, -1) から得られると思って 下のように実行してみたら >>> datetime.datetime(time.strptime('2008-02-25 15:34:56', '%Y-%m-%d %H:%M:%S')) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: function takes at least 3 arguments (1 given) となってしまいました >>> datetime.datetime(2008,2,25,15,34,56) datetime.datetime(2008, 2, 25, 15, 34, 56) だと問題ないのに何がいけないんでしょうか? >>> datetime.datetime(*(time.strptime('2008-02-25 15:34:56', '%Y-%m-%d %H:%M:%S')[0:6])) datetime.datetime(2008, 2, 25, 15, 34, 56) >>> datetime.datetime.strptime('2008-02-25 15:34:56', '%Y-%m-%d %H:%M:%S') datetime.datetime(2008, 2, 25, 15, 34, 56) >>65 >print("%s%s%s" % (hoge, 4,5.67) こんなコードを何の疑問にも思わないお前のオツムがあっぱれ %の優先順位が無駄に強すぎてイラつく print "%d" % 3 + 5 これはエラー print "%d" % (3 + 5) こうしないとダメ print "%d"% 3 + " is the answer." とかするときのためなのかもしれないが、こんな見にくいのこそ print ("%d"% 3) + " is the answer." とか print "%d is the answer." % 3 ってやるから必要ないし。 %は演算子なのさ。 "%d" % 3 + 5の%は,文字列を左辺に,数値を右辺に取って,結果として文字列を返す。 その後文字列に数値を足そうとしているのでエラーになる。 それだけのこと。超シンプル。 演算子の優先順位は型によって変わらないから 数値型とか考えると % が + よりも強いのは自然だと思うが 文字列の場合は % の右辺は常に括弧で囲むようにするといいよ なにこの協力的なアンチスレ(wwwwwwwwwwwww ああ、昔 print '%s%s%s' % A, B, C みたいなのでハマったの思い出したよ。 タプルは括弧いらないんじゃなかったのか?って。 ここは頭の弱い人はPythonを使えないことを証明するためのスレですね(w 変な挙動だから、よく知らないと戸惑うというだけの話でしょ。 演算子の優先順位云々ってのは算数レベルの知識だってことにいいかげん気付けよ。 タプルを自動展開するフォーマッティングはGuido とかも問題を感じてて たとえば次みたいなときに何かおかしい >>> "%s"%1 '1' >>> "%s"%(1,) '1' >>> "%s"%((1,),) '(1,)' ということが指摘されてて、実際3.0ではこの仕組みは無くなる。 >>87 タプルが括弧いらないのはその通りだけど、 演算子の順位としては最弱(and or より更に弱い)なので、 その場合後ろの方が独立したexprになってしまう。 まあ、確かにカンマと+の順位とか普段考えないので嵌るといえば嵌る >>92 Python脳の人がPythonに一切疑問を抱かないのは知ってるから、 そんなに一所懸命「後戻りできなくなったボクの脳を見て!」ってアピールしなくていいです。 と、さんすうにも四苦八苦なゆとりが申しております。 算数が平仮名なら、それより先に四苦八苦を平仮名にしないと 演出としてダメダメだと思うよ。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.1 2024/04/28 Walang Kapalit ★ | Donguri System Team 5ちゃんねる