1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Python練習問題】関数の応用編

Last updated at Posted at 2024-09-29

前回に引き続き、関数編です。
今回は特に初学者がつまづきやすいポイントにフォーカスを当てた内容です。

2.様々な引数

Q.2-1:次のコードを実行した結果を答えなさい

def concatenate(s1, s2="World!"):
    return f"{s1}  {s2}"

# 使用例
print(concatenate("Hello")) 

Q.2-2:次のコードを実行した結果を答えなさい

def concatenate(s1, s2="World!"):
    return f"{s1}  {s2}"

# 使用例
print(concatenate("Hello", "World!")) 

Q.2-3:次のコードを実行した結果を答えなさい

def concatenate(s1="Hello", s2="World!"):
    return f"{s1}  {s2}"

# 使用例
print(concatenate("Good Morning")) 

Q.2-4:次のコードを実行した結果を答えなさい

def append_if_even(num, list=[]):
    if num % 2 == 0:
        list.append(num)
    return list

# 使用例
print(append_if_even(2)) 
print(append_if_even(4)) 
print(append_if_even(6)) 

Q.2-5:次のコードを実行した結果を答えなさい

i = 5

def print_num(arg=i):
    print(arg)

i = 6
print_num()

Q.2-6:次のコードを実行した結果を答えなさい

def concatenate(s1="Hello", s2="World!"):
    return f"{s1}  {s2}"

# 使用例
print(concatenate(s2="SpringField!")) 

Q.2-7:次のコードを実行した結果を答えなさい

def concatenate(s1="Hello", s2="World!"):
    return f"{s1}  {s2}"

# 使用例
print(concatenate(s2="SpringField!", s1="Thanks")) 

Q.2-8:次の関数の呼び出し方法として正しいものには◯を、誤っているものには✗を答えなさい

def add(a, /, b, *, c):
    print(a + b + c)

1

add(10, 20, 30, 40, 50)

2

add(10, 20, 30)

3

add(10, 20, c=30)

4

add(10, b=20, c=30)

5

add(a=10, b=20, c=30)

Q.2-9:次の関数の呼び出し方法として正しいものには◯を、誤っているものには✗を答えなさい

def sum_print(*args):
    result = 0
    for i in args:
        result += i     
    print(result)
sum_print(10, 20, 30, 40, 50)

2

sum_print(10)

3

sum_print()

4

sum_print(10, args=20)

5

sum_print(args=10)

Q.2-10:次の関数の呼び出し方法として正しいものには◯を、誤っているものには✗を答えなさい

def sum_print(start, *args):
    result = start
    for i in args:
        result += i     
    print(result)

1

sum_print(10, 20, 30, 40, 50)

2

sum_print(10)

3

sum_print()

4

sum_print(10, args=20)

5

sum_print(args=10)

6

list = [1, 2, 3, 4, 5]
sum_print(list)

7

list = [1, 2, 3, 4, 5]
sum_print(*list)

Q.2-11:次の関数の呼び出し方法として正しいものには◯を、誤っているものには✗を答えなさい

def cart(**kwargs):    
    print(kwargs)
cart(apple=10, orange=20)

2

cart(10)

3

cart()

4

cart(10, kwargs=20)

5

cart(kwargs=10)

dict = {"apple":10, "grape":20}
cart(**dict)

3.スコープ

Q.3-1:次のコードを実行した結果を答えなさい

a=100
def add(a, b):
    return a + b

# 使用例
result = add(10, 20)
print("足した結果は"+ str(result) +"です") 

Q.3-2:次のコードを実行した結果を答えなさい

minus=100
def add(a, b, c=minus):
    return a + b - c

# 使用例
result = add(10, 20)
print("計算結果は"+ str(result) +"です") 
print("a,bの和から"+ str(minus) +"を引きました") 

Q.3-3:次のコードを実行した結果を答えなさい

minus=100
def add(a, b, c=minus):
    return a + b - c

# 使用例
minus = 10000
result = add(10, 20)
print("計算結果は"+ str(result) +"です") 
print("a,bの和から"+ str(minus) +"を引きました") 
1
1
0

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
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?