Pythonのお勉強 Part 26at TECH
Pythonのお勉強 Part 26 - 暇つぶし2ch556:539
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:
print
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
入門書嫁。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch