Python 3 入門! (他の言語から移住してくる人向け) #python

  • 54
    いいね
  • 0
    コメント

pythonってなんだよ!

スクリプト言語
動的型付け
クラス型オブジェクト指向
関数型プログラミングも可能
リフレクティブ
wikiより)

Googleが使ってたりして俺の中で有名になりました(昔の話です)

pythonと言えば強制インデントです

インデントがブロック 1 を表現しているので
インデントの統一とインデントを意識することが必要です
これだけ注意しておけば最初は大丈夫
インデントが強制なので誰が書いてもある程度読みやすい!

pythonと言えば非互換性アップデート

python2からpython3において
非互換性のアップデートがありました。
print文がprint関数になりました
print 1,2,3からprint(1,2,3)の記述に変わりました
他の非互換性のアップデートは知りません

基本の構文から

お決まりの「ようこそpythonの世界へ」

へろおわあるど

print("Hello World")

ということで読めば分かる
のでどんどん行きます

if文 else文

if __name__=="__main__":
    print("スクリプト実行時に実行されるよ")
a=2
if a%15==0:
    print("FizzBuzz")
elif a%5==0:
    print("Buzz")
elif a%3==0:
    print("Fizz")
else:
    print(a)

if文else文もそこまで変わってないですよね
え?変わってる?
まぁ慣れますよ
※elifだけ注意してくださいね

みんなだいすきfor文

for文です。

for item in [0,1,2,3,4,5]:
  print(item)

みんな大好きとか言うけどこれFor Eachじゃねえかよ!!とか思った貴方
まぁまぁ落ち着いてください

いつも書くようなカウンターでイテレートするようなやつは
pythonだと以下のようになります

for item in range(0,6):
    print(item)

いやだからさこれFor Each文じゃねえかよ!!とか思った貴方
pythonにはこれしかないのです。
for文と呼ぶ物は。ね、分かりやすいでしょう?
ちなみに上のfor文と下のfor文は同じ処理です

whileなんて知らねえ関数定義教えろ!!

というわけでかわいそうなwhileちゃん・・・
関数定義は以下の通りです

def fibo(n):
  if n == 0 or n == 1: return 1
  return fibo(n - 1) + fibo(n - 2)

簡単ですね!
インデントに注意してくださいね。

関数のデフォルト値だって!?

def function(arg='default'):
   print('print ' + arg)

function()          #→print default
function("test")    #→print test

おい、変数定義忘れてんぞ!!

強い型付けの言語から来たあなたならお気づきかもしれません
変数宣言はございません
代入したその時から使えます!
(いや代入してなくても使えますけどエラー出るはず)

Javaユーザのみなさん、タプルですよ!!

def f(n):
    return (n-1,n,n+1)

タプルを返却できます。

インクリメント!?

存在しません

みんな大好き三項演算子!!仕事で使うんじゃねえ!?

  #a=1のとき10が代入、その他の場合20
x = 10 if a == 1 else 20

こればっかりは読みづらいです
三項演算子というよりかは式になってますね

終わり

終わりです。
気が向いたら厚みを増やします


  1. 要は{}とかの可読性のために字下げするべきところを字下げしなきゃダメ!にしました