Pythonの初学者は、自分も含めてあるところで躓きます。
引数とかreturnもその一つです。 簡単な例を沢山載せます。
#retrunの使い方1.py 6/22/2020
#① returnは使ってないけれど、関数呼出時に引数(受取人)を関数に送って文面に張り付ける
def 手紙作成(受取人):
print(受取人)
print(‘ 神奈川の苦労人です。’)
print(‘ 今月のニュースを送ります。’)
app=手紙作成(‘Aさん’)
app=手紙作成(‘Bさん’)
次のように主力される。
Aさん
神奈川の苦労人です。
今月のニュースを送ります。
Bさん
神奈川の苦労人です。
今月のニュースを送ります。
—————————————–
#② 引数を二つに増やす
def 手紙作成(受取人, ニュース):
print(受取人)
print(‘ 神奈川の苦労人です。’)
print(ニュース)
print()
自粛撤廃=’6/19より他府県への訪問自粛が撤廃されました。’
app=手紙作成(‘Aさん’, 自粛撤廃)
app=手紙作成(‘Bさん’, 自粛撤廃)
次のように出力される。
Aさん
神奈川の苦労人です。
6/19より他府県への訪問自粛が撤廃されました。
Bさん
神奈川の苦労人です。
6/19より他府県への訪問自粛が撤廃されました。
———————————————–
#③ returnを使う
def 販売税付加(販売額): #セールスタックス10%を付加する関数
return 販売額*1.1
変更後売り上げ=販売税付加(10000) #10000のセールスを関数に送る
print(変更後売り上げ) #–>10000.0
print(販売税付加(10000) ) #–> 10000.0 これでもよい
print(‘{:,}’.format(変更後売り上げ) ) #–> 11,000.0 3桁毎にカンマを入れる
print(f'{変更後売り上げ:,}’)#–> 11,000.0 3桁毎にカンマを入れる
————————————————-
#④ サイコロを作りreturnを使う
from random import randint #標準の整数乱数発生ライブラリー
def my_dice(): #my_disc()と言う関数を定義します。
num = randint(1, 6)
return num #下のprint()へサイコロを目を送る
#サイコロを5回振る
for i in range(5): #
print(my_dice()) —> 1 6 3 5 2
———————————–
#⑤ マイルをメーターに換算する 引数とreturnがある関数
def mile_to_meter(mile):
meter = mile*1609
return meter
distance = mile_to_meter(20)
print(distance) #20マイルをMile_to_meter関数へ渡すと、計算されて表示される–> 32180 (m)と表示される
————————————
#⑥ 1から1000までの足し算 引数とreturnがある関数
def my_addition(number):
total = number*(number+1)/2 #既知の数式
return total
total_number = my_addition(1000)
print(total_number) #—> 500500.0
————————————-
#⑦ 三角形の面積を求める 引数が二つある
def 三角形(底辺, 高さ):
面積 = 底辺 * 高さ/2
return 面積
print(三角形(30, 15)) #—>225.0
————————————-
#⑧ BMI関数を作ろう returnに計算式を使いま
def bmi(weight, height): #kg, cm
return weight/height/height*10000
my_bmi = bmi(60, 170)
print(my_bmi) #20.761245674740486
print(‘{:.1f}’.format(my_bmi)) # 20.8 小数点以下1桁まで表示
入力例:
Enter your weight (kg) —> 60
Enter your height (cm) —> 170
—> 20.761245674740486
Enter your weight (kg) —> 60
Enter your height (cm) —> 170
—> 20.761245674740486
—> 20.8
#⑨ ⑧の関数をスクリプト形式でQ&A式に書き直します。
weight = int(input(‘Enter your weight (kg) —> ‘)) #input()関数は文字列なのでintに変換しないと計算できない
height = int(input(‘Enter your height (cm) —> ‘))
def bmi(weight, height): # kg, cm
return weight / pow(height, 2) * 10000
#return weight/height/height*10000
my_bmi = bmi(weight, height)
print(“貴方のbmiは” + ‘{:.1f}’.format(my_bmi) + “です。”)
入力例:
Enter your weight (kg) —> 60
Enter your height (cm) —> 170
Enter your height (cm) —> 170
—> 貴方のbmiは20.8です。