2008-11-06
リスト内包
JavaとPython | |
JavaプログラマのしかじろうはPythonの「リスト内包」にはびっくりしたよ!
下記の二つの結果が(だいたい)同じという衝撃。
Python
list = [1,2,3,4,5,6,7,8,9,10] print [v for v in list if v > 5]
Java
int list[] = {1,2,3,4,5,6,7,8,9,10}; for(int i : list){ if(i > 5){ System.out.print(i); } }
応用
以下は配列の中身を合計する例。
list = [1,2,3,4,5,6,7,8,9,10] print sum([v for v in list]) 55
ディクショナリも作れる。
Javaで言うMap。
list = [1,2,3,4,5,6,7,8,9,10] print dict([(v,v*10) for v in list]) {2: 20, 4: 40, 9: 90, 8: 80, 6: 60, 1: 10, 3: 30, 10: 100, 7: 70, 5: 50}
2008-11-05
ユークリッド距離
集合知, Javaとpython | |
推薦 〜ユークリッド距離〜
X軸Y軸で表された2つのアイテムの評価から、
評価した二人の近さを求める。
ユークリッド距離 = 同じ軸の差の2乗を足したものの平方根。
x1 = 3
y1 = 2
x2 = 1
y2 = 5
print 1/1+sqrt(pow(x1-x2,2)+pow(y1-y2,2))
覚える関数
#乗算 以下は3の2乗 pow(3,2) #平方根 以下は4の平方根 sqrt(4)
Javaで書いたら
double x1 = 3.0; double y1 = 2.0; double x2 = 1.0; double y2 = 5.0; double powx = Math.pow(x1-x2, 2); double powy = Math.pow(y1-y2, 2); double sqrt = Math.sqrt(powx + powy); double recom = 1/1+sqrt; System.out.print(recom);
ZediaYour atrlice perfectly shows what I needed to know, thanks!
iaacko7FGo6x , [url=http://haqovwwwvvfj.com/]haqovwwwvvfj[/url], [link=http://gbtbygfjnrzu.com/]gbtbygfjnrzu[/link], http://yfjggejiwbah.com/
Online Lenders bad credit online loans <a href="http://loansonline.cars">cash loans online</a> loan online http://loansonline.cars - bad credit payday lenders
Online Loans loans online no credit check <a href="http://loansonline.cars">online loan application</a> loan online <a href=http://loansonline.cars>installment loans online</a>
ぱっとみ、いみがわかりませんでした。