1일(10.04) 파이썬 Scanner, 제어문과 반복문
💻 01_Basic
💾 Ex02
#_*_coding:utf-8
'''
Created on 2022. 10. 4.
@author: admin
'''
#Scanner
print('입력하세요:',end='')
a = input() #문자열
print('a:' ,a)
b= input('입력하세요2:')
print('b:' ,b)
# 입력한 값으로 더하기 연산하기
print('더하기 입력하기')
print(a,'+',b,'=', a+b) #10 + 20 = 1020
print(a,'+',b,'=', int(a)+int(b)) #문자열을 int형으로 바꾸어 연산하여 결과가 나온다. 10 + 20 = 30
#print("%d + %d = %d" % (a,b,a+b)) #TypeError: %d format: a number is required, not str
print("%s + %s = %d" % (a,b,int(a)+int(b))) #10 + 20 = 30
c= int(a)+int(b)
print('{} + {} = {} '.format(a,b,c))#a가 0 번째, b가 1번째 :10 + 20 = 30
print('{1} + {0} = {2} '.format(a,b,c)) #b가 1번째, a가 0번째 :20 + 10 = 30
✔ Scanner
print('입력하세요:',end='')
a = input() -문자열
print('a:' ,a)
b= input('입력하세요2:')
print('b:' ,b)
✔ 입력한 값으로 더하기 연산하기
print('더하기 입력하기')
print(a,'+',b,'=', a+b) #10 + 20 = 1020
print(a,'+',b,'=', int(a)+int(b)) #문자열을 int형으로 바꾸어 연산하여 결과가 나온다. 10 + 20 = 30
#print("%d + %d = %d" % (a,b,a+b)) TypeError: %d format: a number is required, not str
- 함수의 이름을 사용하는것은 좋지 않다!
print("%s + %s = %d" % (a,b,int(a)+int(b))) #10 + 20 = 30
c= int(a)+int(b)
print('{} + {} = {} '.format(a,b,c))#a가 0 번째, b가 1번째 :10 + 20 = 30
print('{1} + {0} = {2} '.format(a,b,c)) #b가 1번째, a가 0번째 :20 + 10 = 30
💻 02_제어문과 반복문
💾 Ex01_if
#_*_coding:utf-8
'''
Created on 2022. 10. 4.
@author: admin
'''
su = input('숫자 입력:')
print('su:' , su) #문자열이므로 숫자로 변형후 출력한다.
#짝수, 홀수 자바코드로 입력해보기
'''
if(su%2=0)
System.out.print('짝수')
else(su%2=1)
System.out.print('홀수')
if
else if
else if
else
파이썬에서는 else if대신 elif를 사용한다.
if
elif
elif
else
'''
#TypeError: not all arguments converted during string formatting
#su 변수가 문자열이므로 int형으로 바뀌지 않으면 타입에러가 발생한다.
if int(su)%2 == 0 :
print('짝수') #파이썬은 들여쓰기가 중요하다! 들여쓰기 안하면 에러발생
print('---') #들여쓰기 하지 않으면 조건에 관계없이 무조건 출력된다.
else :
print('홀수')
print('***')
print('===============')
'''
jumsu = 점수입력
>=90 A학점
>=80 B학점
F학점
'''
jumsu = int(input('점수입력: ')) #입력받자마자 정수로 바꾸면 매번 변수의 자료형을 바꾸지 않아도 된다.
print("jumsu:" ,jumsu)
if jumsu >= 90 :
print('A학점')
elif jumsu >= 80 :
print('B학점')
elif jumsu >= 70 :
print('C학점')
elif jumsu >= 60 :
print('D학점')
else :
print('F학점')
print('하하하ㅏ')
print('===============')
#jumsu 변수에 들어있는 값을 5의배수인지, 10의 배수인지 출력해본다.
if jumsu%5 ==0 :
print('5의 배수 입니다.')
if jumsu%10 == 0: #elif를 사용하면 위의 조건이 참이면 조건이 중복되었을때, 아래로 아래 조건문으로 오지 않으므로 if를 사용해주는것이 좋겠다.
print('10의 배수 입니다.')
✔ 자바에서의 if문
if(su%2=0)
System.out.print('짝수')
else(su%2=1)
System.out.print('홀수')
✔파이썬의 if문
if int(su)%2 == 0 :
print('짝수') : 파이썬은 들여쓰기가 중요하다! 들여쓰기 안하면 에러발생
print('---') : 들여쓰기 하지 않으면 조건에 관계없이 무조건 출력된다.
else :
print('홀수')
print('***')
#TypeError: not all arguments converted during string formatting
#su 변수가 문자열이므로 int형으로 바뀌지 않으면 타입에러가 발생한다
✔ 자바에서 if-else
if
else if
else if
else
✔ 파이썬에서는 else if대신 elif를 사용한다.
if
elif
elif
else
- 점수로 학점계산해보기
jumsu = int(input('점수입력: ')) #입력받자마자 정수로 바꾸면 매번 변수의 자료형을 바꾸지 않아도 된다.
print("jumsu:" ,jumsu)
if jumsu >= 90 :
print('A학점')
elif jumsu >= 80 :
print('B학점')
elif jumsu >= 70 :
print('C학점')
elif jumsu >= 60 :
print('D학점')
else :
print('F학점')
print('하하하')
#jumsu 변수에 들어있는 값을 5의배수인지, 10의 배수인지 출력해본다.
if jumsu%5 ==0 :
print('5의 배수 입니다.')
if jumsu%10 == 0:
- elif를 사용하면 위의 조건이 참이면 조건이 중복되었을때, 아래로 아래 조건문으로 오지 않으므로 if를 사용해주는것이 좋겠다.
print('10의 배수 입니다.')
💾 Ex02_if
#_*_coding:utf-8
'''
Created on 2022. 10. 4.
@author: admin
'''
#str 은 #Assignment to reserved built-in symbol 함수 이름으로 노란색 경고가 뜬다, 함수는 변수명으로 사용하지 않는것이 좋다
word = input('문자열 입력:')
print('word: ',word)
print(word.upper())
print(word.lower())
# 대소문자 확실히 구분해서 입력해야 하지만, upper & lower 함수를 사용해서 대소문 상관없이 출력된다.
if word.upper() == 'apple'.upper(): #문자열 비교 '=='으로 한다.
print('사과')
elif word.upper() == 'grape'.upper():
print('포도')
else :
print('그 밖의 과일')
str은 #Assignment to reserved built-in symbol 함수 이름으로 노란색 경고가 뜬다,
함수는 변수명으로 사용하지 않는것이 좋다
대소문자 확실히 구분해서 입력해야 하지만 upper() , lower() 함수를 사용해서 대소문 상관없이 출력된다.
💾 Ex03_for
#_*_coding:utf-8
'''
Created on 2022. 10. 4.
@author: admin
'''
'''
for(int i=1; i<=10; i++){
syso(i);
}
파이썬의 반복문
for 변수 in 반복할 데이터 :
반목할 문장1
반목할 문장2
'''
#range 반복할 데이터를 range안에 넣는다. 함수로 범위를 지정한다.
#range(시작,끝,증가값): 시작 ~ 끝-1 까지 반복 range(1,10,1) : 1~10까지 1씩 증가한다
#range(시작,끝) : 시작~끝-1, 자동으로 1증가
#range(끝): 0~끝-1 , 1씩 증가
total =0
for i in range(1,10,1) :
print(i)
total += i
print('total: ',total) #들여쓰기하면 반복의 대상이 된다.
for i in range(1,5) : #증가값을 쓰지 않으면 자동으로 1씩 증가된다.
print(i)
print('-----------------')
for i in range(5,1,-1) : #1씩 감소하면서 출력한다 5 4 3 2 까지만 출력된다.
print(i)
print('-----------------')
for i in range(10) : #range(0,10,1) , range(0,10) => 3개 모두 같은 결과를 출력한다.
print(i) # 0~9까지만 출력된다
print('-----------------')
#1~10 사이의 수 짝수의 합, 홀수의 합을 출력해보기
even=0
odd=0
for i in range(1,11) : #1~10
if i%2==0 :
even += i
else :
odd += i
print('짝수 합:',even)
print('홀수 합:',odd)
✔ 자바 반복문
for(int i=1; i<=10; i++){
syso(i);
}
✔파이썬의 반복문
for 변수 in 반복할 데이터 :
반목할 문장1 -들여쓰기를 하면 반복의 대상이된다.
반목할 문장2
- range 반복할 데이터를 range안에 넣는다. 함수로 범위를 지정한다.
- range(시작,끝,증가값): 시작 ~ 끝-1 까지 반복 range(1,10,1) : 1~10까지 1씩 증가한다
- range(시작,끝) : 시작~끝-1, 자동으로 1증가
- range(끝): 0~끝-1 , 1씩 증가
total =0
for i in range(1,10,1) :
print(i)
total += i
print('total: ',total) -들여쓰기하면 반복의 대상이 된다.
for i in range(1,5) : - 증가값을 쓰지 않으면 자동으로 1씩 증가된다.
print(i)
print('-----------------')
for i in range(5,1,-1) : - 1씩 감소하면서 출력한다 5 4 3 2 까지만 출력된다.
print(i)
for i in range(10) : - range(0,10,1) , range(0,10) →3개 모두 같은 결과를 출력한다.
print(i) - 0~9까지만 출력된다
#1~10 사이의 수 짝수의 합, 홀수의 합을 출력해보기
even=0
odd=0
for i in range(1,11) : #1~10
if i%2==0 :
even += i
else :
odd += i
print('짝수 합:',even)
print('홀수 합:',odd)
💾Ex04_for
#_*_coding:utf-8
'''
Created on 2022. 10. 4.
@author: admin
'''
#이중for문
for i in range(1,6) : #천천히 반복돌고
for j in range(7,9) : #빨리 반복돈다.
print(i,j)
print('--------')
print('============')
#구구단 출력해보기
for i in range(2,10) :
print('***',i,'단','***')
for j in range(1,10) :
print(i,'*',j,'=',i*j)
print('---------------')
#continue 와 break
for x in range(5) :
if x == 2 :
continue #continue 아래 문장을 실행하지 말아라 / break를 사용하면 x가 2를 만나게 되었을때 반복문을 완전히 빠져 나간다.
print(x, 'if')
else :
print(x, 'else')
💾Ex05_while
#_*_coding:utf-8
'''
Created on 2022. 10. 4.
@author: admin
'''
i=1
while i<5 : #참이면 while문 안으로 들어와서 5보다 작을때까지만 반복한다.
print(i)
i+=1
#위와 같은것
i=1
while True : #첫글자는 꼭 대문자로 한다 True
if i == 5 :
break
print(i)
i += 1
#숫자입력
#음수 입력할 때까지
#입력한 숫자의 합계, 평균 출력
count = 0
total = 0
while True:
su = int(input('숫자입력:')) # -3
if su<0 :
break
total += su
count += 1
print('total' ,total)
print('평균', total/count)