TIL 7. 파이썬 - 기본 문법, 숫자형, 변수, 문자표현, input(), print()

문승준·2021년 8월 13일
0

Python

목록 보기
1/8
post-thumbnail

파이썬

1. 기본 문법

주석은 #

  • 한글주석 사용할땐 UTF-8 인코딩으로 저장하기
# print('hello world')

# 여러줄은 # 여러개

들여쓰기는 스페이스 4칸

  • 2칸, 4칸, 탭 1칸 모두 가능하지만 4칸 권장
if a == 10:
    print('10입니다')
    

코드블록은 들여쓰기 기준

  • 같은 블록은 들여쓰기 칸 수가 같아야하고, 공백과 탭을 섞어쓰지 않는다.
if a == 10:
    print('10')
    print('입니다')

파이썬 쉘이 아닌
스크립트 파일에서는 출력을 위해 꼭 print() 함수를 사용해야 한다.

2. 숫자 계산

  • 정수(int), 실수(float), 복소수(complex)

  • 정수와 실수는 값이 같아도 구분해서 처리한다

  • 연산자 우선순위가 있으며 괄호()로 순서 조정 가능

  • + - / // % * ** @

정수 계산

  • python3는 정수끼리 나눗셈을 해도 실수 반환
  • 2진수, 8진수, 16진수로도 표현 가능
>>> 4 / 2
2.0       

# 소수점 이하는 버리는 // 연산자 (버림 나눗셈)
>>>  5 // 2
2
>>> 5.0 // 2
2.0

# 나머지를 구하는 % 연산자 (modulo)
>>> 5 % 2
1

>>> 2 ** 10
1024
  • 몫과 나머지를 함께 구하기
    divmod() -> 튜플형으로 반환
# 튜플형으로 반환
>>> divmod(5, 2)
(2, 1)

# 튜플형은 각각 변수에 저장 가능
>>> quotient, remainder = divmod(5, 2)
>>> print(quotient, remainder)
2 1
  • 값을 정수로 만들기 (소수점 이하는 버림)
    int(숫자) int(계산식) int('문자열')
>>> int('10')
10

>>> int(5 / 2)
2
  • 객체의 자료형 알아내기
    type(값) -> 객체는 class로 표현
>>> type(10)
<class 'int'> # 숫자도 객체이다.

실수 계산

  • 실수와 정수를 계산하면 표현범위가 넓은 실수로 계산
  • 실수 값에는 오차가 있다
# 실수 값의 오차
>>> 4.3 - 2.7
1.5999999999999996
  • 값을 실수로 만들기
    float(숫자) float(계산식) float(문자열)
>>> float('5.3')
5.3

>>> type(3.5)
<class 'float'>
  • 복소수
    실수부와 허수부로 이루어진 복소수
    허수에는 i 가 아닌 j 를 사용한다
# 두 실수를 복소수로 만들기
>>> complex(1.2, 1.3)
(1.2+1.3j)

3. 변수와 입력 사용하기

변수 만들기

  • 알파벳과 숫자, _ 로만 구성한다.
  • 숫자로 시작하지 않는다.
  • 대소문자를 구분한다.
  • _ 로 시작할 수 있다.
  • 특수 문자(+, -, *, /, $, @, &, % 등)는 사용할 수 없다.
  • 파이썬의 키워드(if, for, while, and, or 등)는 사용할 수 없다.
# 값을 x 라는 변수에 할당
>>> x = 'hello'
>>> x
'hello'

# 변수의 자료형 알아보기
>>> type(x)
<class 'str'>

# 변수 여러개를 한 번에 만들기
>>> x, y, z = 10, 20, 30
>>> y
20
>>> x, y, z
(10, 20, 30)
  • 변수 삭제 하기
>>> x = 10
>>> del x
  • 빈 변수 만들기
>>> x = None
>>> x
>>>         # 아무것도 출력되지 않음
>>> print(x)
None        # 다른 언어의 null과 같다
  • 할당 연산자
    += -= *= /= //= %=
>>> a = 10    # 변수가 먼저 선언되어야 한다
>>> a += 20   # a = a + 20
>>> a
30
  • 부호 붙이기 + -
>>> x = -10
>>> -x
10

4. 문자표현

  • literal string interpolation
name = input()

print(f"Hello, {name}")

5. 입력 값을 저장하기 input()

  • 매번 다른 값을 변수에 할당하는 방법
  • 프롬프트>>>에 입력한 값을 가져오는 함수
# 입력을 받고있는 상태인지 알기 어렵다
>>> x = input()
               # 입력값 Hello, world!
>>>

>>> x
'Hello, world!'

# 입력을 받는 상태라고 문구 띄우기 (프롬프트)
>>> y = input('문자열을 입력하세요: ')
문자열을 입력하세요: # 입력값 Hello, world! 
>>> y
Hello, world!
  • 입력받은 두 숫자의 합 구하기
# input의 입력 값은 항상 문자열(str)이다
>>> a = input('Write first number: ')
>>> b = input('Write second number: ')
Write first number:   # 입력값 10
Write second number:  # 입력값 20 
>>> print(a + b)
>>> 1020              # 문자열의 합

# input의 입력 값을 정수로 변환
>>> a = int(input('Write first number: '))
>>> b = int(input('Write second number: '))
>>> print(a + b)
30
  • 여러 개의 값을 입력받기
    변수1, 변수2... = input('문자열').split('기준문자열')
# 입력값을 콤마를 기준으로 분리
>>> a, b = input('Write two numbers: ').split(',')
# 입력값 10,20
>>> print(a) 
10
>>> print(b)
20

# 입력값을 정수로 변환하기
>>> a = int(a)
>>> b = int(b)
>>> print(a + b)  # 또는 print(int(a) + int(b))
30
  • map()을 사용해 모두 정수로 변환하기
    변수1, 변수2... = map(int, input('문자열').split('기준문자열'))
>>> a, b = map(int, input('Write two numbers: ').split(','))
# 입력값 10,20
>>> print(a + b)
30

6. 출력하기 print()

  • 여러개의 값이나 변수를 출력하기 (separator 활용)
    print(값1, 값2.., sep='기준문자열')
    print(변수1, 변수2, sep='기준문자열')
>>> print(1, 2, 3)
1 2 3             # sep 값이 없으면 공백으로 구분

>>> print(1920, 1080, sep='x')  # sep 값이 x
1920x1080
  • 줄 바꿔서 출력하기 (개행, 이스케이프 시퀀스)
    \n : 다음줄로 이동
    \t : tab키 (여러 칸 띄우기)
    \\ : \ 문자 자체 출력하기
>>> print(1, 2, 3, sep='\n')
1
2
3
>>> print('1\n2\n3')    # 문자열 안에 \n을 사용
1
2
3
  • 한줄로 출력하기
    print(값 또는 변수, end='문자열')
    print의 기본값은 end='\n'
# end에 빈 문자열을 넣어 \n을 지워주면
>>> print(1, end='')    
>>> print(2, end='')
>>> print(3)
123
  • 파이썬은 변수에 값을 저장하는 것이 아니라 객체를 가리키는 방식이다.
  • 밑줄_로 숫자 구분하기 >>> 10_000_000
    -> 출력값은 10000000으로 변화없음
  • 밑줄_을 사용해서 직전 실행 결과 가져올 수 있다
    -> 코드 실행시 결과가 _변수에 저장되기 때문
profile
개발자가 될 팔자

0개의 댓글