Ruby - Wikipediaの例をPythonでやってみた−前半戦
例(Python)
基本的なコード
abs(-199) # 199 len("python is hot") # 13 "Dick".index("c") # 2 "".join(sorted(set(list("Nice Day Isn't It?")))) # " '?DINaceinsty"
コレクション
配列の作成と使用法
a = [1, 'hi', 3.14, 1, 2, [4, 5]] print a[2] # 3.14 print a[::-1] # [[4, 5], 2, 1, 3.14, 'hi', 1] #RubyのflattenみたいなのがPythonにないので関数を作成 def flatten(seq): if not seq: return [] if isinstance(seq[0], list): return flatten(seq[0]) + flatten(seq[1:]) return [seq[0]] + flatten(seq[1:]) print flatten(a) # [1, 'hi', 3.1400000000000001, 1, 2, 4, 5] print list(set(flatten(a))) # [1, 2, 4, 5, 3.1400000000000001, 'hi']
ハッシュの作成と使用法
hash = {'water':'wet', 'fire':'hot'} print hash['fire'] # hot print "\n".join("%s is %s" % (k,v) for k,v in hash.items()) #water is wet #fire is hot
制御構造
if len("fablic") > 3: print "ya" else: print "nop" #表示 "ya" n = 0 while n < 3: print "foobar" n += 1 #表示 #foobar #foobar #foobar
繰り返し処理
li = [1, 2, 5, 13, 21] li = map(lambda x :x*2, li) print li # [2, 4, 10, 26, 42] li = [1, 2, 5, 13, 21] n = 0 while n < len(li): li[n] *= 2 n += 1 print li # [2, 4, 10, 26, 42]
指定した回数の繰り返し処理
for i in range(3): print 'foobar' #表示 #foobar #foobar #foobar
とりあえずここまで
(『Ruby - Wikipediaの例をPythonでやってみた−後半戦[完結] - 牌語備忘録 - pygo』に続く)