とんちゃんといっしょ

Cloudに関する技術とか日常とかについて書いたり書かなかったり

研修受けてきた

本日は1日研修。
VMPlayer上でCentOS動かしていたのでプログラムが動く環境だ!


Ruby入ってないし・・・


Pythonが入っていたので軽く触ってみた。

>>> print"Hello World!"
Hello World!

print関数があるけどputs関数がないので微妙。
あとよく聞くインデントによるブロック表現に関しても実験

>>> for i in range(1,101):
...     if i%3<1:
...             if i%5<1:
...                     print"FizzBuzz"
...             else:
...                     print"Fizz"
...     else:
...             if i%5<1:
...                     print"Buzz"
...             else:
...                     print i

書きにくい・・・


まずfor文の使い方が分からなかったので休憩時間にiPhoneで調べた。
次にRangeの作り方もわからずにRubyの記法をいろいろ試して分からず同様に調べた。
基本的にインデントする前には":"がいるみたいだな。


ショートコーディングはこんな感じらしい

for i in range(100):print i%3/2*"Fizz"+i%5/4*"Buzz"or-~i


文字列に数値を乗算して表示させよとしてるところは工夫してるなと思った。
Rubyでやろうとすると

i%3/2*"Fizz"

ここの部分が

"Fizz".*i%3/2

にしておかないとエラーが出る。
あとPythonは""(空文字列)もfalse扱いのようなので

+i%5/4*"Buzz"or-~i

の部分で空文字のとき-~iが表示されるらしい。
Rubyの場合はnilかfalse以外はすべてtrueなのでこの方法は使えないらしい。


とりあえずrangeの使い方とかループの使い方はRubyの方が楽な感じ。
やっぱり触ったばっかりだしPythonはまだ馴染まんなー


一応研修は真面目に受けてたよ!
でも1回だけ同期に起こされた(ぉ