Set()
순서가 없음, 중복이 허용되지않는다.
인덱싱 슬라이싱 불가능.
교집합( & intersection), 합집합 ( | union ), 차집합 (- , difference)
추가 : add() , 여러개 추가 : update()
삭제 : remove() - 하나만 가능
function
function = method 메서드
입력(input) 값을 주어 처리(process)를 거쳐 출력(output)을 주는 작은 기능
입력 = 매개변수, 파라미터
출력 = 리턴(함수를 종료)
사용방법 : 함수명을 호출
def 함수명(매개변수) :
수행할 문장
...
return 값
ex)
# 더하기 함수 만들기
# 매개변수 : 숫자 2개
# 리턴 : 두 수의 합
# 함수명 : add
def add(a,b) :
sum = a+b
# 호출
sum = add(1,2)
print(sum)
활용해서 계산기 만들어보기
# 두 수를 입력받아, 연산자를 입력받아 결과를 출력.
def add(a,b):
return a+b
def sub(a,b):
return a-b
def mul(a,b):
return a*b
# 나누기는 0으로 나누면 error
def div(a,b):
if b == 0 :
print(" 결과가 -1이면 두번째 숫자를 다시입력해주세요.")
return -1
return a/b
yn = "y"
while yn == "y":
yn = input("연산을 진행하시겠습니까? (y)")
if yn != "y" :
break
num1 = int(input("첫번째 숫자를 입력해주세요: "))
num2 = int(input("두번째 숫자를 입력해주세요: "))
a = input("+, - , * , / 중에 연산자를 골라주세요.")
if a == "+" :
result = add(num1,num2)
print(" 두 수의 합은 %d입니다. " % result)
elif a == "-" :
result = sub(num1,num2)
print(" 두 수의 차은 %d입니다. " % result)
elif a == "*" :
result = mul(num1,num2)
print(" 두 수의 곱은 %d입니다. " % result)
elif a == "/" :
result = div(num1,num2)
print(" 두 수의 몫은 %d입니다. " % result)
else :
print(" 잘못된 연산자를 입력하셨습니다. 다시 입력해주세요 ")
print("계산기 종료!!")
매개변수의 입력값이 많은 함수
- *args 사용 , type 튜플
ex)
def add(*args):
sum = 0
for i in args:
sum = sum + i
return sum
print(add(1,2,3,4,5,6,7))
예제)
# 숫자 하나를 입력받아 그 수가 짝수인지 홀수인지 출력
def div(num):
if num % 2 == 0:
print("짝수")
else:
print("홀수")
a = 13
div(a)
# 숫자 하나를 입력받아 그 수의 약수를 출력해주는 함수
# 약수 : 나누어 떨어지는 수의 집합.
# 6의 약수 : 1 2 3 6
# 12의 약수: 1 2 3 4 6 12
# 12 % 1~12 == 0
#매개변수 : 숫자
#리턴타입 : list[]
def div2(num):
list = []
for i in range(1,num):
if num % i == 0:
list.append(i)
return list
print(div2(a))
# 숫자 하나를 입력받아 그 숫자가 소수인지 아닌지 판별
# 소수 : 1과 자기자신의 수를 제외한 나머지 수는 나누어 떨어지지 않는 수
# 1 2 3 5 7 11 13
# 소수O 소수X
def prime(num):
if len(div2(num)) == 1:
return "소수O"
return "소수X"
print(prime(a))
# num 1~100까지 돌려봤을때 소수만 출력
def div3():
l = []
for i in range(1,101):
if len(div2(i)) == 1 :
l.append(i)
return l
print(div3())
'파이썬 기초 수업정리' 카테고리의 다른 글
수업정리 Day.05 (1) | 2024.07.05 |
---|---|
수업정리 Day03. (0) | 2024.07.03 |
수업정리 Day 02. (1) | 2024.07.02 |
수업정리 day 01. (0) | 2024.07.01 |