Love Every Moment

〔모두를 위한 파이썬〕연산자, 데이터 타입, 타입 변환 본문

PROGRAMMING::LANGUAGE/Python

〔모두를 위한 파이썬〕연산자, 데이터 타입, 타입 변환

해 송 2021. 4. 20. 16:53
반응형

 

1. 연산자(Operators)

 

 

  •   +     -     *     /     **     %
  • Precedence: Parenthesis - Power - Multiplication - Addition - Left to Right

 

C언어와 다른점: 

(1)  ** 가 거듭제곱 연산자로 쓰인다

(2)  + 가 string 에 string 을 더하는 연산자로 쓰일 수 있다

 


 

2. 데이터 타입(Data Type)

 

 

  • Variables, literals, and constants have a "type"
  • type() 함수로 해당 변수의 타입을 알 수 있다

 

올바른 예시 (1)

>>> eee = 'hello ' + 'there'

>>> print(eee)

hello there

 

올바른 예시 (2)

>>> ddd = 4 + 1

>>> print(ddd)

5

 

*** type(1) 의 결과는 <class 'int'> 이지만 type(1.0) 의 결과는 <class 'float'> 이다!

 


 

3. 타입 변환(Type Conversions)

 

 

(1) Conversion between Integers and Floats

 

>>> i = 42

>>> f = float(i)

>>> print(f)

42.0

>>> type(f)

<class 'float'>

 

파이썬 2.0 까지는 C언어처럼 integer / integer 의 결과 또한 integer 로 반환했기에 부정확한 결과가 나왔다.

하지만 파이썬 3.0 부터는 integer division 의 결과로 floating point 를 반환하기에 정확한 값을 얻을 수 있다.

ex) python 2.0: >>> print(9 / 2) 의 출력 결과: 4

      python 3.0: >>> print(9 / 2) 의 출력 결과: 4.5

 

 

(2) Conversion between Strings and Integers

 

>>> sval = '123'

>>> type(sval)

<class 'str'>

여기서 바로 print(sval + 1) 하면 에러 발생하므로 변환 먼저 해준다

 

>>> ival = int(sval)

>>> type(ival)

<class 'int'>

>>> print(ival + 1)

124

 

*** C언어에서의 atoi() 를 string 에 포함된 character 하나하나에 적용시켜 integer 로 변환한다고 생각하면 된다

 

 


 

 

4. 사용자 입력(User Input)

 

 

nam = input('Who are you? ')

print('Welcome', nam)

 

위와 같은 프로그램을 실행하면

Who are you?   라는 문구가 화면에 뜨고 사용자의 입력을 기다린다.

사용자가 "Chuck" 이라고 입력하면 바로 "Welcome Chuck" 이라는 문구가 화면에 출력된다.

 

C언어와 다른점:

  • C:  scanf(%s, 변수명) 으로 사용자 입력을 받고 printf("Welcome %s, 변수명);
  • Python:  변수명 = input() 으로 사용자 입력을 받고 print('Welcome', 변수명)
  • C언어처럼 %s 와 같은 placeholder 를 쓰지 않아도 자동으로 한칸 띄어쓰기하고 덧붙임

 

연습: 유럽식 엘리베이터 층수에서 미국식 엘리베이터 층수로 변환하여 출력하기
C언어에서는 주석을 달려면  '//' 을 사용하지만 파이썬에서는 '#' 을 사용한다. 

 


 

강의 사이트

 

모두를 위한 파이썬 (PY4E)

부스트코스 무료 강의

www.boostcourse.org

 

반응형
Comments