본문 바로가기
국비 교육/파이썬

[파이썬] 주석, 연산자, 표준 입출력

by 육츠 2023. 11. 4.
Contents 접기

주석
: 주석은 코드의 실행과 무관한 문장을 기록하기 위한 기능이다.
한 줄 주석: #
C 의 /* */ 처럼 여러 문장 주석하는 것은 따로 없기 때문에 여러줄을 주석으로 만들려면 주석이 필요한 문장을 드래그 후 단축키 ctrl+/ 하면 한 번에 주석 처리가 가능하다.
예외로 jupyter 노트북에는 markdown 을 사용하여 메모 가능하다(커서가 코드 칸에 있다면 Esc 를 누른 후 m 을 누르면 된다. 다시 코드로 되돌리고 싶다면 y를 누르면 된다.)

자료형
파이썬은 객체지향언어이다.  때문에 파이썬의 모든 데이터는 객체이다.(객체: 어떤 변수와 함수의 집합을 의미)
자료형의 종류
- 논리 boolean : 참 True 거짓 False 를 나타내는 자료형 (문자열에서는 비어있으면 False 하나라도 있으면 True / 0 : False)
- 정수 : 소수점이 없는 수
- 실수 : 소수점이 있는 수 
- 복소수 : 제곱해서 음수가 되는 수 (a+bi)
- 문자열 : " ",' ' , (여러줄의 경우) """ """, ''' '''

변수
값에 의해 변수의 타입 결정한다.
변수명은 소문자, 대문자, 숫자, 언더스코어(_) 가능. 하지만 숫자로는 시작할 수 없다
. 예약어를 변수로 사용할 수 없다.
(예약어: 파이썬 인터프리터 내에서 이미 특정 용도로 사용하기 위해 지정된 단어. 예 class, for, finally 등.. )

# 변수 선언 방법
s = '문자열' 
print(s)

연산자
산술 연산자 : +, -, *, /, //, %(mod)

#  산술 연산자
a = 10
b = 35

print(a+b)  # 45
print(a-b)  # -25
print(a*b)  # 350
print(a/b)  # 부동소수점 나누기 0.2857142857142857

print(a//b) # 정수 나누기(몫만) : 0
f = 25.5
g = 3

print(f%g) # 나머지 연산자 : % mod 

# 배수 체크시 자주 사용
print(12%4 == 0)

산술 연산자인  ' + ' 는 문자열을 결합하는데 쓰이며, ' * '는 문자열을 반복하는데 쓰인다.

# + 연산자 : 문자열 결합(연산자 재정의)
# 주의: 숫자와 문자열간의 결합은 불가능
c = "apple"
b = 10

# print(c+b) # type err
print(c+str(b)) # str() : 문자열로 형변환에 사용되는 함수

#  문자열 반복: * 연산자 사용
e = "하"

print(e*3)

그 외 연산자

& : and연산자
둘 다 True 여야 1 나머지는 0
| : OR 연산자
둘다 False 여야 0 아니면 1
^ : XOR 연산자
둘 중 하나만 True일때  1, 아니면 0
not:
True 면 False를 False면 True를 반환
and, or:
논리를 반환하는 논리식
>,<,<=,=< :
크기 비교 연산자
+=,-=,*=:
단항대입연산자
== : 같다, != : 같지 않다
is :
변수의 레퍼런스 값 비교, 같아야 True
in..:
집합내에 특정 데이터가 있는지 판단 (숫자에는 사용안함)
   
# 논리연산자
x = True
y = False

print( x and y)  # False
print( x or y)   # True
print( x ^ y)    # True

# 비교 연산자 
a = 10
b = 11

print(a == b) # False
print(a != b) # True
print(a >= b) # False

삼항 연산자
True 일때 실행될 문장 if 조건식 else False일때 실행될 문장

a = 10
b = 20
result = "a 와 b는 같지 않다" if a != b else "a 와 b는 같다"
print(result)

[문제] 대도시 여부 판단 
[판단조건] 수도이면서 인구가 100만 이상 도시 또는 , 부자가 20만 이상인 도시
[실행예시]
수도입니까? (수도: 1, 수도아님: 0) 인구(단위: 만) 150 부자의 수(단위: 만) : 10 대도시 여부: True
수도입니까? (수도: 1, 수도아님: 0) 인구(단위: 만) 90 부자의 수(단위: 만) : 30 대도시 여부: True
처리조건 : 삼항연산자 이용

isCapital = input("수도입니까? (수도: 1, 수도아님: 0) : ")
citizen = int(input("인구(단위: 만): "))
riches = int(input("부자 수(단위: 만): "))

#  & 정수 값이 와야하는 and

matropolis = True if (isCapital =='1' and citizen>=100) or riches >= 20 else False 

print('대도시 여부:',matropolis)

[문제] A 회사의 주가가 56000 원이고 B회사의 주가가 125,000원이라고 할때 , 어떤 사람이 A 주식 100주와 B 주식 35주를 가지고 있는 주식의 총액을 계산하는 코드를 변수 선언 및 연산자 사용을 이용하여 작성하시오.

a = 56000
b = 125000
print((a*100)+(b*35))

total = (a*100)+(b*35)
print(f"총주식액: {total:,}") 
# 포맷티드 스트링
# 안에 동적으로 담겨야 할때 : {}
# 안에가 숫자면 1000 단위로 ','을 넣음

[문제] 화씨 온도(F)를 섭씨 온도(C)로 변환하는 다음공식을 이용하여 화씨온도가 50도 일때 실제온도를 계산하시오
변환 공식 : C = (F-32) / 1.8

f = 50
c =  (F-32) / 1.8

print(f"섭씨온도는:{c}도 이다."

표준입출력

표준 입력
입력 받은 모든 데이터는 문자열 형식이다.

a = int(input('밑변 입력: ')) 
# 입력 받은 값은 문자열 타입으로 반환 > int 타입으로 변환 
b = int(input('높이 입력:'))

print("넓이는", a*b)

표준 출력
print(value,..., sep = ' ', end = '\n', file = sys.stdout, flush = False )
sep: 값을 화면에 출력할때 출력할 데이터들 사이에 표현하는 문자열. default = 공백
end: 마지막 출력 데이터를 화면에 출력한 후 마지막에 추가되는 문자열, default = new line
file : value를 출력할 객체,flush: 스트림을 강제로 플러시할지 여부

a = 10
b = 20
print(a,b) # sep = ' ' 
print(a,b,sep=',') # , 구분 값
print(a,end=' ')
print(b)

 

'국비 교육 > 파이썬' 카테고리의 다른 글

[파이썬] List  (0) 2023.11.04
[파이썬] 문자열 다루기  (0) 2023.11.04
[파이썬] 제어문, 반복문  (0) 2023.11.04
[파이썬] 아나콘다 설치하기  (0) 2023.11.04