LoginSignup
2
1

More than 5 years have passed since last update.

rubyとpythonの基本的なやつ対応表メモ

Last updated at Posted at 2019-02-24

pythonのこれってrubyの何にあたるの?ということをざっくり書いていきます。あくまでメモです。
rubyをちょっと(1ヶ月程度)学んだ人がprogateのpythonをやって学んだことが基本です。

配列、ハッシュ

ruby python
配列 リスト
ハッシュ 辞書

名前が違うだけで、記述方法は一緒。

each文

ruby

オブジェクト.each do |変数|
  実行する処理1
  実行する処理2
end

python


for 変数 in オブジェクト:
    実行する処理1
    実行する処理2

「:」忘れがち
半角4つ分インデントが重要。これがないとfor文の中身だと認識されない。
hamlみたいに、pythonはインデントの有無が意味を持ちます。

if文

ruby


if 条件式1 then
  条件式1が真の時に実行する処理
elsif 条件式2 then
  条件式1が偽で条件式2が真の時に実行する処理
elsif 条件式3 then
  条件式1及び条件式2が偽で条件式3が真の時に実行する処理
else
  全ての条件式が偽の時に実行する処理
end

python


if 条件式1:
    条件式1が真の時に実行する処理
elif 条件式2:
    条件式2が真の時に実行する処理
elif 条件式3:
    条件式3が真の時に実行する処理
else:
    全ての条件式が偽の時に実行する処理

elseifじゃなくてelsifじゃなくてelif
正直覚えにくい

while文

ruby


while 条件式 do
  実行する処理1
  実行する処理2
end

python


while 条件式:
    実行する処理1
    実行する処理2

continuebreakが使える。

関数

ruby

#定義
def 関数名(引数1、引数2、…)
  処理1
  処理2
end

#実行
関数名(引数)

python

#定義
def 関数名(引数1引数2、…):
    処理1
    処理2

#実行
関数名(引数)

モジュールの呼び出し

ruby

#ファイルを読み込む
require 'ファイルのURI' 

python

#sample.pyを読み込む
import sample

#sample.pyのクラスを読み込む
from sample import クラス名

モジュール名.関数()と書くことで、モジュール内の関数を実行可能

クラス

ruby

#クラスの継承
class 子クラス < 親クラス
end

#Sampleというクラスを定義
def クラス名
  def メソッド名
    処理
  end
end

#インスタンスの作成
sample_instance = Sample.new

#初期値の設定
def initialize(引数)
  処理
end

python

#クラスの継承
class 新しいクラス名(元となるクラス名):

#Sampleというクラスを定義
class Sample:
    処理

#インスタンスの作成
sample_instance = Sample()

#初期値の設定
def initialize(self,引数):
    処理

クラス名を大文字から始めるのは変わらない

メソッド

ruby

#定義
def メソッド名
  処理
end

#呼び出し
メソッド名

python

#定義
def メソッド名(self,引数):
    処理

#呼び出し
インスタンス.メソッド名(引数)

第1引数には必ずselfを使用。selfには、インスタンス自身が代入されている。呼び出す際の引数は、selfは記載しない。

2
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1