機能 |
python |
ruby |
出力 |
```python
print("abc")
```
|
```ruby
puts "abc"
```
|
埋込 |
```python
print("私の名前は%sです" % name)
```
|
```ruby
puts "私の名前は#{name}です"
```
|
if |
```python
if a == b:
print("OK")
```
|
```ruby
if a == b
puts "OK"
end
```
|
ifelse |
```python
if a == b:
print("OK")
elif a > b:
print("WARN")
else:
print("NG")
```
|
```ruby
if a == b
puts "OK"
elsif a > b
puts "WARN"
else
puts "NG"
end
```
|
リスト/配列 |
```python
names=["Tanaka","Yamada","Suzuki"]
```
|
```ruby
names=["Tanaka","Yamada","Suzuki"]
```
|
スライス |
```python
names=["Tanaka","Yamada","Suzuki"]
names[0] # "Tanaka"
names[-1] # "Suzuki"
```
|
```ruby
```
|
文字列分割 |
```python
s = 'one,two,three'
l = s.split(',')
# ['one', 'two', 'three']
```
|
```ruby
```
|
繰り返し |
```python
for name in names:
print(name)
for i, name in enumerate(names):
print(i, name)
```
|
```ruby
names.each do|name|
puts name
end
names.each_with_index do |name, index|
puts "#{index}. #{name}"
end
# ブロック変数の記述は|配列の要素として扱う変数名, インデックス番号として扱う変数名|
```
|
辞書/ハッシュ |
```python
user = {"name":"Suzuki","age":20}
```
|
```ruby
# 書き方その1
user = {"name" => "Suzuki","age" => 20}
# 書き方その2
user = {:name => "Suzuki", :age => 20}
```
|
何もない |
```python
None
```
|
```ruby
nil
```
|
メソッド |
```python
# 定義
def hello:
print("HELLO")
def introduction(name):
print("私は%sです。" % name)
print("私は#{name}です。")
def add(x, y):
return x + y
# 呼出
hello()
introduction("suzuki")
add(5, 6)
```
|
```ruby
# 定義
def hello
puts "HELLO"
end
def introduction(name)
puts "私は#{name}です。"
end
def add(x, y)
return x + y
end
# 呼出
hello
introduction("suzuki")
add(5, 6)
# 別の書き方
def introduction_myself name, age
puts "私は#{name}です。"
puts "年齢は#{age}です。"
end
introduction_myself "suzuki", 20
```
|
メソッド(キーワード引数使用) |
```python
# 定義
def introduction(name, age):
print("私は%sです。" % name)
print("年齢は%iです。" % age)
# 呼出
introduction(age=20, name="suzuki")
```
|
```ruby
# 定義
def introduction(name:, age:)
puts "私は#{name}です。"
puts "年齢は#{age}です。"
end
# 呼出
introduction(age: 20, name: "suzuki")
```
|
クラス |
```python
class Menu:
name = None
menu = Menu()
menu.name = "コーヒー"
```
|
```ruby
class Menu
attr_accessor :name
end
menu = Menu.new
menu.name = "コーヒー"
```
|
イニシャライズ |
```python
# 省略
def __init__(self, name):
self.name = name
menu = Menu("コーヒー")
```
|
```ruby
# 省略
def initialize(name)
self.name = name
end
menu = Menu.new("コーヒー")
```
|
継承 |
```python
class 新しいクラス名(もととなるクラス名):
```
|
```ruby
class 新しいクラス名 < もととなるクラス名
```
|
and or |
```python
## and条件記法
A and B
## or条件記法
C or D
```
|
```ruby
## and条件記法
A && B
A and B
## or条件記法
C || D
C or D
```
|
パッケージ管理システム |
```python
pip install ipython==7.9
```
|
```ruby
gem install rails -v 5.1.6
```
|
機能 |
```python
```
|
```ruby
```
|
機能 |
```python
```
|
```ruby
```
|