08/05/27 22:52:01
ありがとうございます
NumPyですか
数値計算が目的という訳ではなかったので完全に盲点でしたが、使えそうですね
ちょっと試してみます
557:デフォルトの名無しさん
08/05/28 09:09:02
これからはRuby一色の時代。
PerlもPythonも廃れ、Rubyだけが生き残る新時代
558:デフォルトの名無しさん
08/05/28 09:42:45
その「新時代」になってから勉強しても全然遅くない。
559:デフォルトの名無しさん
08/05/28 12:02:30
for e in dir():
print e
とかで出力されるデータをA-Z, a-z, __??__で
頭文字ごとに改行して出力するにはどうしたら良いですか?
560:559
08/05/28 14:23:42
>>> def print_elem_n(elem):
... print '\n', elem,
...
>>> def print_elem(elem):
... print elem,
...
>>> q=''
>>>
>>> a2z="abcdefghijklmnopqrstuvwxyz"
>>> for e in dir(cssutils):
... if q == '' and q in set(a2z): q = e[0]
... if e[0] in set(a2z):
... if q != e[0]:
... print_elem_n(e)
... q=e[0]
... else:
... print_elem(e)
書けた…添削きぼん
print文の、改行の取り扱いに嵌る orz
561:デフォルトの名無しさん
08/05/28 14:35:40
>>> a2z="abcdefghijklmnopqrstuvwxyz"
>>> a2z=range(ord('a'), ord('z')+1)
562:デフォルトの名無しさん
08/05/28 14:35:53
groupby使ってみるといいんじゃない?
from itertools import groupby
from operator import itemgetter
for k, g in groupby(sorted(dir(str)), itemgetter(0)):
print ", ".join(g)
563:デフォルトの名無しさん
08/05/28 14:36:51
>>560
printだけ書けば改行できるのに。
lastchar = dir()[0][0]
for e in dir():
if e[0] != lastchar:
lastchar = e[0]
print e,
これじゃダメ?
564:デフォルトの名無しさん
08/05/28 14:37:50
インデント消えちゃったけど、まぁ分かるよね?w
565:デフォルトの名無しさん
08/05/28 14:54:57
>>562
便利なもんがあるんだなー
こんな普通な奴しか思いつかなかった
def f(seq):
d = {}
for s in seq:
d.setdefault(s[0], []).append(s)
for k in sorted(d.iterkeys()):
print ','.join(d[k])
566:563
08/05/28 15:07:07
Python始めて1週間の俺には", ".join(g) の部分がよく分からなかったが、
gのシーケンスを", "で区切った文字列が得られるのか。
567:デフォルトの名無しさん
08/05/28 15:18:09
むしろ g は glue の g かもしれないぜ
568:デフォルトの名無しさん
08/05/28 17:07:40
>>563
for e in dir():
1. if 違う要素かどうか判定: 改行\n + フラグを更新する
2. 要素を出力する
㌧。ノートにでもまとめて整理しとく乙
569:デフォルトの名無しさん
08/05/28 17:19:04
>>566
個人的には
リスト.join(区切り文字)
の方がわかりやすいと思ってる。
570:デフォルトの名無しさん
08/05/28 17:27:24
1. FAQ嫁
2. Ruby使え
3. 俺もそう思う
571:デフォルトの名無しさん
08/05/28 17:43:04
引数にジェネレータを与えられるのはstr.joinの一つの利点だと思う
572:563
08/05/28 17:51:18
>>569
俺も文脈的に直感的でないと思うけど、文字列クラスにjoinメソッドがあるという
形だからしょうがないね。
静的関数として提供した方がいい気がするが、元々静的関数だったのが廃止されて
メソッドになったのね。
573:デフォルトの名無しさん
08/05/28 19:13:53
djangoを使ってみようと思っています。
それでまずはmodelを定義してデータを入れるところまではできま
した(sqlite3とかで直接DBの中身見て入ったのを確認した)。
だけど、manage.py shellでデータを確認しようとしても見れません。
具体的にはhoge.objects.all()とかってやっても[]が表示されるだ
けです。
これはなぜなんでしょうか?
あと、adminのhogeの画面でも
5 hoges
のように表示されるだけで、DBに格納したデータをいじれたり、見
る事ができない状態です。
何かアドバイスがいただければ助かります。よろしくお願いします。
574:デフォルトの名無しさん
08/05/28 20:13:19
うちではみれてる
575:デフォルトの名無しさん
08/05/28 23:51:30
ディショナリをそのキー名の変数にするってどうすればいいんですか?
つまり
a{hoge:1,foo:2,bar:3}
を↓のようにしたいです。
hoge = 1
foo = 2
bar = 3
576:デフォルトの名無しさん
08/05/28 23:56:27
>>575
入門書嫁。