KT AIVLE/Daily Review
240910
bestone888
2024. 9. 10. 22:43
240910
가변인수
In [20]:
def hello(*names):
print(type(names))
for name in names:
print(f'{name}님 안녕하세요')
wrong_input = ['홍길동', '일지매', '강우동']
hello(wrong_input)
print()
hello('a', 'b', 'c')
<class 'tuple'>
['홍길동', '일지매', '강우동']님 안녕하세요
<class 'tuple'>
a님 안녕하세요
b님 안녕하세요
c님 안녕하세요
In [24]:
def Hello(title, *args):
for name in args:
print(f'{name}{title} 안녕하세요')
Hello('선생님', 'a','b','c')
a선생님 안녕하세요
b선생님 안녕하세요
c선생님 안녕하세요
In [30]:
def Hello(*args, title):
for name in args:
print(f'{name}{title} 안녕하세요')
Hello('a','b','c', title = '선생님')
a선생님 안녕하세요
b선생님 안녕하세요
c선생님 안녕하세요
In [40]:
def summ(*nums):
result = sum(x**2 for x in nums)
print(result)
summ(1,2,3,4)
print(1+4+9+16)
30
30
변수 우선 순위
- L: Local 함수 안에서 선언된 변수
- E: Enclosing 함수가 함수를 호출한 경우 안쪽 함수 입장에서 밖의 함수가 선언한 변수
- G: Global 함수 밖에서 선엏나 전역 변수
- B: Built-in 파이썬이 기본적으로 제공하는 함수
In [49]:
age = 20
def test():
age = 30
print('함수 내 age:',age)
test()
print('외부 age:', age)
함수 내 age: 30
외부 age: 20
In [53]:
def test():
member = [1,2,3,4,5]
print('함수 내 member:', member)
member = ['홍','일','한']
test()
print('외부 member', member)
함수 내 member: [1, 2, 3, 4, 5]
외부 member ['홍', '일', '한']
In [55]:
def test():
global member # 외부의 member 참조
member = [1,2,3,4,5]
print('함수 내 member:', member)
member = ['홍','일','한']
test()
print('외부 member', member)
함수 내 member: [1, 2, 3, 4, 5]
외부 member [1, 2, 3, 4, 5]
In [72]:
def test():
global st # 없으면 오류
st = st + 'e'
print('함수 내', st)
st = 'abcd'
test()
print('외부', st)
함수 내 abcde
외부 abcde
In [76]:
def test():
nlist.append(6)
print('함수 내',nlist)
nlist = [1,2,3,4,5]
test()
print('외부',nlist)
# 리스트는 되네?
함수 내 [1, 2, 3, 4, 5, 6]
외부 [1, 2, 3, 4, 5, 6]
내장함수
- all(x) x의 요소 모두 참이면 True
- any(x) x의 요소 중 하나라도 참이면 True
- enumerate(x) 인덱스와 값을 반환
- filter(f,x) 함수 f에 x를 매개변수로 전달해 True인 경우 반환
- isinstance(x,y) x가 y의 인스턴스인지 여부를 True, False로 반환
- zip(x,y) x와 y요소를 쌍으로 묶어서 반환
In [84]:
st = 'abcdef'
for i, s in enumerate(st, start = 1):
print(i, s)
1 a
2 b
3 c
4 d
5 e
6 f
In [91]:
def func(s):
return s == s.upper() and s != ' '
a = "I Have a Dream"
list(filter(func,a))
Out[91]:
['I', 'H', 'D']
In [95]:
print(isinstance(1, int))
print(isinstance('hello', list))
True
False
In [98]:
alist = [1,2,3,4,5]
blist = [6,7,8,9,10]
num_dict = dict(zip(alist,blist))
print(num_dict)
{1: 6, 2: 7, 3: 8, 4: 9, 5: 10}