X



pythonがこの先生きのこるには
0001七色波紋 ◆.VgGY5NKtU
垢版 |
2007/01/05(金) 20:26:11
$python kinoko.py this_teacher
0639デフォルトの名無しさん
垢版 |
2009/01/29(木) 20:09:14
>>> def hoge(x):
... if isinstance(x,tuple): return(hoge(*x[:-1]), hoge(x[-1]))
... else: return x
...
>>> hoge(reduce(lambda x,y: (x,y), range(9)))
((((((((0, 1), 2), 3), 4), 5), 6), 7), 8)
>>> def hoge(x):
... if isinstance(x, tuple):
... print x[:-1], x[-1]
... return(hoge(*x[:-1]), hoge(x[-1]))
... else: return x
...
>>> hoge(reduce(lambda x,y: (x,y), range(9)))
((((((((0, 1), 2), 3), 4), 5), 6), 7),) 8
(((((((0, 1), 2), 3), 4), 5), 6),) 7
((((((0, 1), 2), 3), 4), 5),) 6
(((((0, 1), 2), 3), 4),) 5
((((0, 1), 2), 3),) 4
(((0, 1), 2),) 3
((0, 1),) 2
(0,) 1
((((((((0, 1), 2), 3), 4), 5), 6), 7), 8)

こうですか?分かりません><
0640デフォルトの名無しさん
垢版 |
2009/01/29(木) 20:29:54
>>> reduce(lambda x,y: (y,x), range(9))
(8, (7, (6, (5, (4, (3, (2, (1, 0))))))))
>>> hoge(reduce(lambda x,y: (y,x), range(9)))
(8,) (7, (6, (5, (4, (3, (2, (1, 0)))))))
(7,) (6, (5, (4, (3, (2, (1, 0))))))
(6,) (5, (4, (3, (2, (1, 0)))))
(5,) (4, (3, (2, (1, 0))))
(4,) (3, (2, (1, 0)))
(3,) (2, (1, 0))
(2,) (1, 0)
(1,) 0
(8, (7, (6, (5, (4, (3, (2, (1, 0))))))))

>>> hoge((((0,(((1,(2,(3,4))),(5,((6,7),8))),9)),10),(11,12)))
(((0, (((1, (2, (3, 4))), (5, ((6, 7), 8))), 9)), 10),) (11, 12)
((0, (((1, (2, (3, 4))), (5, ((6, 7), 8))), 9)),) 10
(0,) (((1, (2, (3, 4))), (5, ((6, 7), 8))), 9)
(((1, (2, (3, 4))), (5, ((6, 7), 8))),) 9
((1, (2, (3, 4))),) (5, ((6, 7), 8))
(1,) (2, (3, 4))
(2,) (3, 4)
(3,) 4
(5,) ((6, 7), 8)
((6, 7),) 8
(6,) 7
(11,) 12
(((0, (((1, (2, (3, 4))), (5, ((6, 7), 8))), 9)), 10), (11, 12))
0641デフォルトの名無しさん
垢版 |
2009/01/30(金) 00:35:37
メモリの無駄のような気もするけど・・・

>>> for a,b in reduce(lambda x,y:((x and x[0],y),)+(x or ()),range(9)): print a,b
...
(((((((0, 1), 2), 3), 4), 5), 6), 7) 8
((((((0, 1), 2), 3), 4), 5), 6) 7
(((((0, 1), 2), 3), 4), 5) 6
((((0, 1), 2), 3), 4) 5
(((0, 1), 2), 3) 4
((0, 1), 2) 3
(0, 1) 2
0 1
0642デフォルトの名無しさん
垢版 |
2009/01/30(金) 00:37:22
reduce の初期値を指定すればこういう風にもできる

>>> for a,b in reduce(lambda x,y:((x and x[0],y),)+x,range(9),()): print a,b
...
(((((((((), 0), 1), 2), 3), 4), 5), 6), 7) 8
((((((((), 0), 1), 2), 3), 4), 5), 6) 7
(((((((), 0), 1), 2), 3), 4), 5) 6
((((((), 0), 1), 2), 3), 4) 5
(((((), 0), 1), 2), 3) 4
((((), 0), 1), 2) 3
(((), 0), 1) 2
((), 0) 1
() 0
0644デフォルトの名無しさん
垢版 |
2009/01/30(金) 02:45:07
>>637
for a, b in ...
ていうのは uncons のための構文じゃないから、
無理やりそれで、linked list 上を走ろうとしてもできない。

たぶんやろうとしたのはこういうこと?

>>> lst = reduce(lambda x, y: (x, y), range(9))
>>> while lst: lst, x = lst ; print lst, x
...
(((((((0, 1), 2), 3), 4), 5), 6), 7) 8
((((((0, 1), 2), 3), 4), 5), 6) 7
(((((0, 1), 2), 3), 4), 5) 6
((((0, 1), 2), 3), 4) 5
(((0, 1), 2), 3) 4
((0, 1), 2) 3
(0, 1) 2
0 1

0645デフォルトの名無しさん
垢版 |
2009/01/30(金) 02:48:16
ちなみに、また、0 が False であることを使っているので、
一般的にやりたかったら、while lst: の所を、
while isinstance(lst, tuple):
にするとか・・・、
0646デフォルトの名無しさん
垢版 |
2009/01/30(金) 02:51:50
しかし、reduce 自体、「python 的でない」「有効な use case は存在しない」
とされて、3.0 では消された訳だから、うえみたいなタイプのコーディングの仕方
自体、python ではあまり推奨されないことだと思う。
0650デフォルトの名無しさん
垢版 |
2009/02/07(土) 09:09:02
Python使いの諸君!
速く2chでタブが表示されるように左翼活動を開始せよ!
0653デフォルトの名無しさん
垢版 |
2009/03/01(日) 16:58:13
>>652
なんのグラフか説明くれないのか
0654デフォルトの名無しさん
垢版 |
2009/03/01(日) 17:16:04
[Python-porting] Number of Python 3 packages
ttp://mail.python.org/pipermail/python-porting/2008-December/000008.html
0656デフォルトの名無しさん
垢版 |
2009/03/01(日) 19:01:45
パイソン先生が
キノコる、っていう新手の
AVかと...
どんなプレイかと想像しちまったじゃまいか。
0664デフォルトの名無しさん
垢版 |
2009/08/22(土) 08:23:05
やっぱ日本人ならPythonを辞めてRubyに乗り換えるべきなのかな…
書店のコンピュータコーナーにいってみると、
Pythonの書籍はわずかでRuby関連の書籍がどっさり置かれている。
0668デフォルトの名無しさん
垢版 |
2009/08/28(金) 22:07:09
え?
0670デフォルトの名無しさん
垢版 |
2009/09/15(火) 21:14:35
過疎?
0672デフォルトの名無しさん
垢版 |
2009/09/27(日) 22:16:09
Rubyに比べてPythonが優れている点ってなんですか?
0681デフォルトの名無しさん
垢版 |
2009/09/28(月) 15:35:57
ブランドイメージが良いところかな。
googleが使ってたり、先進的なイメージがあったりする。
今注目の言語。
0688デフォルトの名無しさん
垢版 |
2009/12/12(土) 19:44:44
printやfor文if文が関数になった時点でこの言語は終わってる。
なぜあんなに互換性が無くなるほど弄くったのか理解できない。
0694デフォルトの名無しさん
垢版 |
2009/12/12(土) 20:42:01
Lispだってfor(のようなもの)やifは関数にはできない。特殊形式。
forやifのようなものを関数にするとしたら、引数の遅延評価が
必要になる。

エイプリルフールてこれか? だいぶ違うが。
ttps://lists.csail.mit.edu/pipermail/ll-discuss/2005-April/000187.html

それのネタ元
ttp://www.artima.com/weblogs/viewpost.jsp?thread=98196

さらにネタ元
ttp://mail.python.org/pipermail/python-list/2004-August/274787.html
0697デフォルトの名無しさん
垢版 |
2009/12/22(火) 11:16:17
?
0698デフォルトの名無しさん
垢版 |
2009/12/22(火) 20:02:35
if文が関数って、

for i > 10:
    print "hello"

と書けたのが

for(i > 10)
    print("hello");

と書かないといけなくなるってこと?
perlと変わらないじゃん。
pythonは興味あるけどなんか地雷言語っぽいな。
python2.5辺りのコードは見た限り、凄くシンプルな印象だったのに、残念だ。
0705デフォルトの名無しさん
垢版 |
2010/01/08(金) 19:25:32
いいねえパイソン。
俺は好きだよ。
コード打ってれば勝手にソースが整理されるし。
イベントの受信のためにいちいちリスナを作らなくても普通に関数を書くだけで済むところが特にいい。
0706デフォルトの名無しさん
垢版 |
2010/04/25(日) 04:09:29
>>> a=[]
>>> a.append(a)
>>> a
[[...]]
>>> a[0]
[[...]]
>>> a[0][0]
[[...]]
>>> eval('a'+'[0]'*100)
[[...]]
>>> eval('a'+'[0]'*10000)
[[...]]
>>> eval('a'+'[0]'*1000000)
Segmentation fault
0714デフォルトの名無しさん
垢版 |
2010/07/14(水) 13:25:15
print文がこの先生きのこるには
0715デフォルトの名無しさん
垢版 |
2010/07/19(月) 04:22:13
print といえば最近こんなの見つけた

class QuickOutputter(object):
def __lt__(self, msg):
print msg
return self
o = QuickOutputter()

o< "hello"
0719デフォルトの名無しさん
垢版 |
2010/11/17(水) 09:58:05
コードうってれば勝手にインデントしてくれるから好きって、はぁ?

あのー死ぬほどリファクタリングしにくいんですけどー
ていうかー巷に転がってるコードって品質の低いゴミが多いですよねー(ぐんにょり
Bicycle Repair Manをデフォで言語仕様に加えるべきだと思うわ
0720デフォルトの名無しさん
垢版 |
2010/11/17(水) 14:02:56
>あのー死ぬほどリファクタリングしにくいんですけどー

そんなことない
リファクタリングもしやすい

>ていうかー巷に転がってるコードって品質の低いゴミが多いですよねー(ぐんにょり

これは半分同意
まともなのもあるけど書きなぐったひどいのも多い
だけどその事情はrubyperlphpでもなじ
0721デフォルトの名無しさん
垢版 |
2010/11/18(木) 12:39:18
Rubyメインだけど、Pythonにはあまりそういうイメージ無いなあ
なんつーかお堅い人が使ってるイメージだから
酷いコードとか皆無に見えてそこだけは羨ましいと思ってたんだが、そうでもないのか

PerlはCGI全盛期に書かれた奴がかなり酷いし
PHPはお手軽Web言語って立ち位置だから仕方ない感じ
Rubyは品質が低いっつーか、無駄にテクいことをやろうとして読みにくいのが多いイメージ
0722デフォルトの名無しさん
垢版 |
2011/01/15(土) 20:45:41
     _,,...,_
  /_~,,..::: ~"'ヽ
 (,,"ヾ  ii /^',)
    :i    i"
    |(,,゚Д゚)
    |(ノ  |)
    |    |
    ヽ _ノ
     U"U
0726721
垢版 |
2011/02/14(月) 18:49:03
>>724
あ、それわかるwっていうかそれが原因でPythonistaになったw

DSLとか吐き気するわー。特にコンテキストすり替え型のやつ。
0727721
垢版 |
2011/02/15(火) 16:43:00
>>726
何で俺の名前騙ってんだよw
0728723
垢版 |
2011/02/16(水) 15:03:00
>>721
ごめん、誤爆したw自分で言うのもなんだが、珍しい誤爆。
0729デフォルトの名無しさん
垢版 |
2011/05/20(金) 19:08:13.56
       _,..-――-:..、    ⌒⌒
     /.:;;;;;;;;;;;;;;;;;;;;;::.\      ^^
    / .::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::..ヽ
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  :::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::   _,,,......,,__
   :::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::/_~ ,,...:::_::;; ~"'ヽ
     :::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::: (,, '"ヾヽ  i|i //^''ヽ,,)    どうすれば、この先生きのこれるのか・・・。
      ::::::::::::::::::::::::::::     ^ :'⌒i    i⌒"
        ::::::::::::          .(|  ,;;;;;;|
                     (ノ...,;;;;;;|
-―'――ー'''‐'ー'''―‐'―''''―‐'''ー'''.|  ,;;;;;;|'-''――'`'
 ,, ''''  `、 `´'、、,   '''    ''' ヽ _ノ 、、,
    ,,,   ''  ,,   '''''      ''''' U"U  ,,,,
0736デフォルトの名無しさん
垢版 |
2011/07/08(金) 20:28:52.19
かなり浸透してるから
0738デフォルトの名無しさん
垢版 |
2011/12/16(金) 00:40:35.37
|....,,__
|_::;; ~"'ヽ
| //^''ヽ,,)
|  i⌒"
| ∀`) < 誰もいない きのこるならいまのうち
|⊂
| ノ
      _,,,......,,__
  /_~ ,,...:::_::;; ~"'ヽ
 (,, '"ヾヽ  i|i //^''ヽ,,)
   ^ :'⌒i    i⌒"
      |( ´∀`) < きのこ のこーのこ げんきのこ ♪
      |(ノ   |つ
      |     |
     ⊂ _ ノ
       ""U
      _,,,......,,__
  /_~ ,,...:::_::;; ~"'ヽ
 (,, '"ヾヽ  i|i //^''ヽ,,)
   ^ :'⌒i    i⌒"
     (´∀` )| < エリンギ まいたけ ブナシメジ ♪
    ⊂|  (ノ |
      |     |
      ヽ _ ⊃
      .U""
|
| ミ
| ミ  サッ!
| ミ
|
レスを投稿する


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