Python関数の練習


📝 次の例はPython符号化スタンプから来ています.📝
シェアと残りの関数を求めます
😎 以下のソースコードを完了し、xをyで割ったときのシェアと残りの部分を出力します.
x = 10
y = 3
 
 _______________________________________________                                
 _______________________________________________                                
 
quotient, remainder = get_quotient_remainder(x, y)
print('몫: {0}, 나머지: {1}'.format(quotient, remainder))
✅ answer
x = 10
y = 3
def get_quotient_remainder(a, b):
    return a // b, a % b
quotient, remainder = get_quotient_remainder(x, y)
print('몫: {0}, 나머지: {1}'.format(quotient, remainder))
📗 explanation
get quotin残余関数にxとyを加えて商と残余を求める.まず、get quotin resistant関数は2つの値を受け入れるので、def get quotin resistant(a,b):として作成されます.次に、関数では、aをbで割ってreturnとすると、シェアと残数を返す.
ここで、商は整数でなければならないので、「破棄」除算演算子//、残りの演算子%を使用する必要があります.あるいは、int(a/b)などの除算演算子/を使用してintに変換することもできます.各戻り値はカンマで区切られ、特に戻り値として2つの値を返さなければなりません.
しじえんざんかんすう
😎 標準入力として2つの数値を入力します.2つの数値の加算、減算、乗算、除算の結果を出力するには、次のソースコードを完了します.除算の結果は実数でなければならない.
✅ answer
x, y = map(int, input().split())

def calc(a,b):
	return a+b, a-b, a*b, a/b

a, s, m, d = calc(x, y)
print('덧셈: {0}, 뺄셈: {1}, 곱셈: {2}, 나눗셈: {3}'.format(a, s, m, d))
calc関数にxとyを加えて2つの数の加算、減算、乗算、除算を求める.まず、calc関数は2つの値を得るため、def calc(a,b):が作成されます.
関数では、aをbで割った値、aをbで割った値、aにbを乗じた値、aをbで割った値を返します.
ここでの除算結果は実数でなければならないので、除算演算子/を使用する必要があります.特に、各戻り値はカンマで区切られた4つの値を返さなければなりません.
最高の点数の関数を求めます
✅ answer
korean, english, mathematics, science = 100, 86, 81, 91

def get_max_score(*args):
    return max(args)

max_score = get_max_score(korean, english, mathematics, science)
print('높은 점수:', max_score)
max_score = get_max_score(english, science)
print('높은 점수:', max_score)
📗 explanation
get max score関数は、呼び出すたびにパラメータの個数が変化するため、可変パラメータ関数として作成する必要があります.特にget max score(korean,english,mathematical,science)のように、位置引数として引数を使用するため、def get max score(*args):.
関数ではmaxを使用してargsで最大数を求め、返します.
最低点、最高点と平均点の関数を求めます
😎 標準入力には、国語、英語、数学、科学点数が含まれます.次のソースコードを入力して、最高スコア、最低スコア、平均スコアを出力します.平均スコアは予期せぬ出力でなければなりません.
✅ answer
korean, english, mathematics, science = map(int, input().split())

def get_min_max_score(*scrs):
	return min(*scrs), max(*scrs)
def get_average(**kyscrs):
	return sum(kyscrs.values())/len(kyscrs)


min_score, max_score = get_min_max_score(korean, english, mathematics, science)
average_score = get_average(korean=korean, english=english,
                            mathematics=mathematics, science=science)
print('낮은 점수: {0:.2f}, 높은 점수: {1:.2f}, 평균 점수: {2:.2f}'
      .format(min_score, max_score, average_score))
 
min_score, max_score = get_min_max_score(english, science)
average_score = get_average(english=english, science=science)
print('낮은 점수: {0:.2f}, 높은 점수: {1:.2f}, 평균 점수: {2:.2f}'
      .format(min_score, max_score, average_score))
📗 explanation
get min max score関数を使用して最低点と最高点を求め、get average関数は平均点を求める.したがって、2つの関数を作成する必要があります.また、関数を呼び出すたびにパラメータの数が変化するため、可変パラメータ関数として作成する必要があります.
まず、get min max score関数はget min max score(朝鮮語、英語、数学、科学)のように引数を位置引数として入れるので、defget min max score(*args):関数では、minを使用してargsの最小値を求め、maxを使用してargsの最大値を求め、返します.特に、複数の戻り値を返す場合、各戻り値はカンマで区切られます.
get average関数はget average(korean=korean,english=english,数学=数学,science=science)のように引数をキーワード引数とするのでdef get average(*kwargs)を作成できます.関数では平均値を求める必要がありますが、まずsum(kwargs.values()のように、値でディクシャナの値を取得し、sumで加算します.合計をキーの数で除算して戻ります(平均スコアは予期せぬ出力でなければなりませんので、除算演算子/)を使用する必要があります.キーの個数はlen(kwargs)のようにlenで求めることができる.