출처 한 눈에 읽는 파이썬3기초_goorm edu
-조건문
if elif else 조건식 뒤에 꼭 : 붙이기
비교연산자 and, or, not
요소 in 튜플/리스트/문자열
-제어문
break : 반복문을 중간에 빠져나오고 싶을 때 자신을 직접 포함하고 있는 반복문만 완전히 종료
wordslist = []
while True :
word = input("단어를 입력하세요. 1을 입력하면 중단됩니다.:")
if word == "1" :
break
else :
wordslist.append(word)
for w in wordslist :
print(w, end = ' ')
continue : 현재 반복 중인 순서를 건너 뛰고 싶을 때, 반복문의 흐름을 제어
nums = []
while True :
num = int(input("숫자를 입력하세요. -1 입력시 중단됨:"))
if num == -1 :
break #반복문 탈출
else :
if num % 2 == 1 :
continue #반복문 맨 처음으로
nums.append(num)
for n in nums:
print(n, end = ' ')
-함수 : 특정 기능을 위해 만든 여러 문장을 묶어서 실행하는 코드 블록 단위
함수의 역할
1 지정기능을 실행하는 단위
2 코드의 가독성과 프로그램의 효율성 증대
사용자가 만든 함수에 인자를 전달하면 연산 결과가 반환됨
#함수 정의
def 함수 이름(매개변수1, 매개변수2...):
실행구문
...
return 반환 값
#함수 호출
함수 이름(전달인자1, 전달인자2...)
#주민번호 앞 7자리를 입력하면 나이, 생일, 성별을 계산하여 반환하는 함수
def stdInfo(rrn) :
if int(rrn[6]) == 3 or int(rrn[6]) == 4 :
biryear = int(rrn[0]+rrn[1]) + 2000
else :
biryear = int(rrn[0]+rrn[1]) + 1900
age = year - biryear + 1
birmonth = int(rrn[2] + rrn[3])
birday = int(rrn[4] + rrn[5])
if rrn[6] == "2" or rrn[6] == "4" :
gen = "여자"
else :
gen = "남자"
return [age, birmonth, birday, gen] #리스트 형식으로 반환
year = 2021
stdlist = []
stdrrn = input("주민등록번호 7자리를 입력하세요:")
stdlist.append(stdInfo(stdrrn)) #함수 호출
print(stdlist[0])
함수의 이름이 아주 중요_무슨 기능을 하는지
-함수의 사용 형태
def guide() : #매개변수 X, 반환값 X
print("두 정수를 입력받아 곱한 결과를 출력하는 프로그램입니다.")
def inputnums() : #매개변수 X, 반환값 O
a = int(input("첫번째 정수를 입력하세요:"))
b = int(input("두번째 정수를 입력하세요:"))
return a, b
def multi(num1, num2) : #매개변수 O, 반환값 O
return num1 * num2
def printResult(result) : #매개변수 O, 반환값 X
print("두 수의 곱셈 결과는 %d입니다." %result)
guide()
n1, n2 = inputnums() #반환 값이 두 개이니 두 변수에 초기화
res = multi(n1, n2)
printResult(res)
함수 호출은 코드에서 "함수 이름(전달 인자)"형식, 반환 값이 존재할 경우 함수를 바로 변수에 초기화함
-매개변수
매개변수 - 한 눈에 읽는 파이썬3 기초 (goorm.io)
전달 인자로 입력한 숫자는 순서대로 매개변수에 입력되나 파이썬에서는 함수를 호출할 때 매개변수를 지정하여 인자 전달 가능, 그러나 매개변수를 지정하려면 모든 인자에 해야해서 자주쓰지는 않음
매개변수의 개수는 제한없음, 호출 시 매개변수와 같은 수의 전달 인자를 입력해야함
가변 인자 함수 : 동일한 기능을 수행하지만 매개변수만 다른 함수
"def 함수 이름(*매개변수)" 로 선언, 가변인자는 튜플 형식으로 저장됨
일반 매개변수는 가변 인자 앞에 입력해서 사용
-키워드 매개변수
"def 함수 이름(**매개변수)" 로 선언하면 전달인자를 딕셔너리 형태로 선언 가능
일반 딕셔너리의 개념보다 제약있음
key는 따옴표로 감싸지 않고 변수처럼 입력하여 사용해야함
키워드 매개변수와 가변 인자 같이 사용 가능
def func(*nums, **kwargs) :
print(nums)
print(kwargs)
num = 10
func(1, 3, 5, 7, apple="사과", a = num, num = 4)
키워드 형태의 인수 뒤에 키워드 형태가 아닌 인수는 올 수 없음
def func(**kwargs, *nums) : 로 순서 바꿀 수 없음
'Programming > Python' 카테고리의 다른 글
파이썬 클래스, 클래스 변수 (0) | 2022.01.08 |
---|---|
파이썬 함수 반환값부터 (0) | 2022.01.07 |
파이썬 튜플부터 (0) | 2022.01.05 |
파이썬 문자열 이어서 (0) | 2022.01.04 |
파이썬의 날 (0) | 2022.01.03 |
댓글