Pythonについて(アンチ専用)
■ このスレッドは過去ログ倉庫に格納されています
0002Matz
垢版 |
2008/02/21(木) 10:38:52
Pythonは糞だよ
0010デフォルトの名無しさん
垢版 |
2008/02/21(木) 21:41:43
安置するも何も、そもそもよく知らない。
0013デフォルトの名無しさん
垢版 |
2008/02/22(金) 00:52:21
あーそれは思った。len(hoge)ってvbsかよwって。
for i in range(1, len(hoge) - 1) :とかも萎えたな。
0014デフォルトの名無しさん
垢版 |
2008/02/22(金) 11:25:13
自由度ありすぎなlispは正規表現libraryすら標準のものがないらしい
pythonは不自由なのがよいのかも
0016デフォルトの名無しさん
垢版 |
2008/02/22(金) 12:48:20
不自由と感じるかある種のエレガンスと感じるかによって好き嫌いがわかれるのだろう
0017デフォルトの名無しさん
垢版 |
2008/02/23(土) 10:03:07
rubyに比べてなんとなくかっこよく見えるからむかつく
0018デフォルトの名無しさん
垢版 |
2008/02/23(土) 12:36:52
>>13
シーケンスの要素をループ内で使いたいなら

for i in hoge:

と書けばいい。

シーケンスの要素とカウンタを同時に得たいなら、

for c, i in enumerate(hoge):

とすればいい。
enumerateを知らないやつは厨房。
0022デフォルトの名無しさん
垢版 |
2008/02/23(土) 17:53:17
iteritems は辞書(ハッシュ、連想配列)の話、enumerate は一般のイテレータについて番号つけるって言うもの
0023デフォルトの名無しさん
垢版 |
2008/02/23(土) 18:00:40
>>> 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')]
>>>
0025デフォルトの名無しさん
垢版 |
2008/02/23(土) 18:10:55
安置スレだったか
すまんこorz

>>> [(c, k, v) for c, (k, v) in enumerate(hoge.iteritems())]
[(0, 'hage', 'fuga'), (1, 'hige', 'moga')]
0032デフォルトの名無しさん
垢版 |
2008/02/23(土) 21:11:37
20あたりで辞書型のメソッドが出てきて、それ以来アンチスレに似つかわしくないこの流れ。
0034デフォルトの名無しさん
垢版 |
2008/02/23(土) 21:18:22
・ライブラリの命名規則がばらばら
・なにをするにも import sys, os
・既存の組込みクラスにメソッドが追加できない
・遅い
・self self self
・return return return
・print文、exec文ってなによ
・正規表現リテラルが無いよ
・lambdaが式しか受け付けないよ
0039デフォルトの名無しさん
垢版 |
2008/02/23(土) 22:51:52
>>38
Quad搭載PC買っちゃいなよ
0040デフォルトの名無しさん
垢版 |
2008/02/24(日) 00:37:11
print文はpython的にキモいけどなくなったらなくなったで
すげー不便になりそう。schemeみたいに仕様だけは美しいけど
使えない言語になりそう。
0044デフォルトの名無しさん
垢版 |
2008/02/24(日) 09:47:35
なので、オライリーの本が買えない
0046デフォルトの名無しさん
垢版 |
2008/02/24(日) 11:06:39
>>38
>IronPythonのipc.pyでコンパイルされたexeが激遅で萎えた
>>44
>オライリーの本が買えない

アンチって貧乏なのかな...?
0057デフォルトの名無しさん
垢版 |
2008/02/24(日) 17:59:45
日本語で書かれた出版物には大したものがないのでオンラインドキュメントを読みましょう
2.5 の日本語訳はまだありませんがきちんと読めば 2.4 でも充分に事足ります
0058デフォルトの名無しさん
垢版 |
2008/02/24(日) 18:05:33
2.4に載ってなくて重要な標準モジュールは
hashlibぐらいかな。
>>1のwikiに書いてあると思う。
0063デフォルトの名無しさん
垢版 |
2008/02/24(日) 22:47:31
ざこには見えない
0064デフォルトの名無しさん
垢版 |
2008/02/24(日) 23:18:29
>>42
>>>> print("hoge", 4, 5.67)
>hoge 4 5.67
この仕様はウンコだよなあ
なんで勝手に空白が入ったり改行がついたりするんだよ
0065デフォルトの名無しさん
垢版 |
2008/02/24(日) 23:25:43
空白いれたくなければ、
print("%s%s%s" % (hoge, 4,5.67)
とすりゃいいんじゃないの。
改行いれたくなければ標準出力様にお願いしなさい:-)
0072デフォルトの名無しさん
垢版 |
2008/02/25(月) 14:01:22
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)

となってしまいました
0073デフォルトの名無しさん
垢版 |
2008/02/25(月) 14:02:15
>>> datetime.datetime(2008,2,25,15,34,56)
datetime.datetime(2008, 2, 25, 15, 34, 56)

だと問題ないのに何がいけないんでしょうか?
0074デフォルトの名無しさん
垢版 |
2008/02/25(月) 14:09:16
>>> 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)
007877
垢版 |
2008/02/26(火) 08:14:13
言っとくけど俺天才だからな
0079デフォルトの名無しさん
垢版 |
2008/02/26(火) 08:24:45
知ってるよ
0082デフォルトの名無しさん
垢版 |
2008/02/26(火) 11:45:51
%の優先順位が無駄に強すぎてイラつく

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
ってやるから必要ないし。

0083デフォルトの名無しさん
垢版 |
2008/02/26(火) 12:25:45
%は演算子なのさ。
"%d" % 3 + 5の%は,文字列を左辺に,数値を右辺に取って,結果として文字列を返す。
その後文字列に数値を足そうとしているのでエラーになる。
それだけのこと。超シンプル。
0084デフォルトの名無しさん
垢版 |
2008/02/26(火) 12:26:28
演算子の優先順位は型によって変わらないから
数値型とか考えると % が + よりも強いのは自然だと思うが
0087デフォルトの名無しさん
垢版 |
2008/02/26(火) 12:59:25
ああ、昔
print '%s%s%s' % A, B, C
みたいなのでハマったの思い出したよ。
タプルは括弧いらないんじゃなかったのか?って。
0093デフォルトの名無しさん
垢版 |
2008/02/26(火) 16:24:12
タプルを自動展開するフォーマッティングはGuido とかも問題を感じてて
たとえば次みたいなときに何かおかしい

>>> "%s"%1
'1'
>>> "%s"%(1,)
'1'
>>> "%s"%((1,),)
'(1,)'

ということが指摘されてて、実際3.0ではこの仕組みは無くなる。

>>87
タプルが括弧いらないのはその通りだけど、
演算子の順位としては最弱(and or より更に弱い)なので、
その場合後ろの方が独立したexprになってしまう。
まあ、確かにカンマと+の順位とか普段考えないので嵌るといえば嵌る
0094デフォルトの名無しさん
垢版 |
2008/02/26(火) 16:45:03
>>92
Python脳の人がPythonに一切疑問を抱かないのは知ってるから、
そんなに一所懸命「後戻りできなくなったボクの脳を見て!」ってアピールしなくていいです。
0096デフォルトの名無しさん
垢版 |
2008/02/26(火) 18:01:31
算数が平仮名なら、それより先に四苦八苦を平仮名にしないと
演出としてダメダメだと思うよ。
0100デフォルトの名無しさん
垢版 |
2008/02/26(火) 23:19:11
3.0っていつごろ出る?
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況