IF문
기본 예제
# 기본적인 형태의 조건문 예시이며
# 파이썬에서는 들여쓰기를 중요시해야한다!!!!
money = True
if money:
print("택시를 타고 가라")
print("aa")
else:
print("걸어 가라")
IF문 조건안에는 여러가지 형태를 통해 사용할 수 있다.
# 비교연산자
money = 2000
if money >= 3000: # False
print("택시를 타고 가라")
print("aa")
else:
print("걸어 가라")
#------------------------#
# or 둘중에 하나라도 참이면 True
# and 둘다 참이여야 True
# not 은 반대 (뒤에것이 바뀐다)
money = 2000
card = 1
if money >= 3000 or card: # True
print("택시를 타고 가라")
print("aa")
else:
print("걸어 가라")
#-----------------------#
# in 뒤에는 리스트나 튜플등이 들어감
# 1이 [1,2,3]에 있냐? 라는 뜻
if 1 in [1, 2, 3]:
print("택시를 타고 가라")
else:
print("걸어 가라")
조건문에서 아무일도 하지않게 설정하고 싶다면??
pocket = ['paper', 'cellphone']
card = True
if 'money' in pocket: # money가 pocket안에 있으면 통과(pass)
pass
elif card: # 다중조건 판단할때 elif 사용 (else if와 같음)
print("택시를 타고 가라")
else:
print("걸어가라")
조건부 표현식
score = 70
# if score >= 60:
# message = "success"
# else :
# message = "failure"
# 위와같은 형태를 파이썬에서는 조건부 표현식으로 간결하게 쓸 수 있다
# 성공일때 조건을 먼저 써주고 다음에 조건식을 써주는 형태
# 조건부 표현식에서는 else를 꼭 써주어야 한다.
message = "success" if score >= 60 else "failure"
# 다른언어에서는 삼항 연산자 ?로 표현하는거와 비슷
print(message)
반복문 - while문
treeHit = 0
while treeHit < 10:
treeHit = treeHit + 1
print("나무를 %d번 찍었습니다." % treeHit)
if treeHit == 10:
print("나무 넘어갑니다.")
# 마찬가지로 파이썬에서는 들여쓰기를 중요시해야한다!!!
#-----------------------------------------#
coffee = 10
money = 300
while money:
print("돈을 받았으니 커피를 줍니다.")
coffee = coffee - 1
print("남은 커피의 양은 %d개 입니다." % coffee)
if not coffee:
print("커피가 다 떨어졌습니다. 판매를 중지합니다.")
break
# money는 300으로 아직 있기때문에 무한정으로 도는데 break문을 만나서 반복문(while)문을 빠져나감
#-----------------------------------------#
a = 0
while a < 10:
a = a+1
if a % 2 == 0: # continue를 만나는거는 짝수일 경우
continue # 아래를 수행하지않고 넘어가서 while문 처음으로 돌아감
print(a)
# 결과값 : 1 3 5 7 9
반복문 - for문
# 기본적인 for문
test_list = ['one', 'two', 'three']
for i in test_list:
print(i)
# 다양한 for문의 사용
a = [(1, 2), (3, 4), (5, 6)]
for (first, last) in a: # a에서 하나씩 빼와서 넣는다 first = 1, last = 2
print(first + last) # 더해서 출력하므로 3
# 결과값 : 3 7 11
# 종합적으로 확인1
marks = [90, 25, 67, 45, 80]
number = 0
for mark in marks: # in이기 때문에 하나씩 빼온다 차례로
number = number + 1
if mark >= 60:
print("%d번 학생은 합격입니다." % number)
else:
print("%d번 학생은 불합격입니다." % number)
# 종합적으로 확인2
marks = [90, 25, 67, 45, 80]
number = 0
for mark in marks: # in이기 때문에 하나씩 빼온다 차례로
number = number + 1
if mark < 60:
continue
print("%d번 학생 축하합니다 합격입니다." % number)
range 함수
sum = 0
for i in range(1, 11): # 1이상 11미만!!
sum = sum + i # 1부터 10까지 더하겠다!
print(sum)
반복문 종합적 예시(구구단)
for i in range(2, 10): # 바깥쪽 i for문이 돈다
for j in range(1, 10): # 안쪽코드인 j먼저 for문이 다 돌고
print(i*j, end=" ")
# end는 print안에 사용할수 있는 옵션
# ,를 하고 end한다음 " " 이렇게 적어주면 이어서 띄어쓰기를 써주겠다는 뜻
print('')
리스트 내포(List comprehension)
# 리스트 내포(파이썬에서 쓰기 편하게 하기위해 사용)
result = [num * 3 for num in a]
# num*3을 넣고 싶은데 num은 뭐냐면 a에서 꺼내온 값이다.
# 아래의 내용을 한줄로 편하게 사용하기위해!!!
result = []
for num in a:
result.append(num*3)
#------------------------------------#
# 조건문 추가
result = [num * 3 for num in a if num % 2 == 0]
result = []
for num in a:
if num % 2 == 0:
result.append(num*3)
# 결과적으로
# 리스트 내포방식은 하고자하는것을 제일 앞에 적어준다 x*y를 하고싶은 것
result = [x*y for x in range(2, 10) for y in range(1, 10)]
result = []
for x in range(2, 10):
for y in range(1, 10):
result.append(x * y)
# 결과적으로 x곱하기 y한 값을 추가하고싶은게 목적
'Dev > python' 카테고리의 다른 글
파이썬 모듈 (0) | 2020.09.21 |
---|---|
파이썬 함수(입출력) (0) | 2020.09.17 |
파이썬 자료형(2) (0) | 2020.09.15 |
파이썬 자료형 (0) | 2020.09.15 |
파이썬의 시작 (0) | 2020.09.14 |