Python Basics for Data Science - PART 1

Python Basics for Data Science - PART 1

(파이낸스 데이터 사이언스를 위한 파이썬 언어 기초)

주석, 변수와 값, 기본 데이터 타입, 타입 전환, print() 출력

2017 FinanceData http://fb.com/financedata

Hello, Python!

In [1]:
print("Hello, World!")
Hello, World!

주석 (comment)

실행하지 않는 내용으로 주로 코드에 대한 설명을 위해 사용

In [2]:
# 한 줄짜리 주석
In [18]:
s = """
여러 줄에 
걸친 
문자열 
입니다
"""

s
Out[18]:
'\n여러 줄에 \n걸친 \n문자열 \n입니다\n'
In [19]:
"""
여러 줄의
주석을 만드는데도 사용하죠
"""
Out[19]:
'\n여러 줄의\n주석을 만드는데도 사용하죠\n'

변수와 값

변수(variable)에 값(value)을 할당(assign)

In [5]:
# = 는 변수(my_var)에 값(10)을 할당(assign)하는 연산자(operator)
my_var = 10
print (my_var)
10

기본 데이터 타입

엑셀의 데이터 타입(type)에는 숫자값과 텍스트(문자열)이 있으며, 덧붙여 논리값이 있다. 파이썬에서 주로 사용하는 데이터 타입도 비숫하다. 다만 숫자값을 정수(int)와 실수(float)를 구분한다.

주로 사용하는 파이썬의 데이터 타입에는,

  • 정수(int): 0, 10, 20
  • 실수(float): 0.1, 3.14, .015
  • 불린(bool): True, False
  • 문자열(str): 'Hello', "World"
In [20]:
a = 7
b = 1.23
c = True
d = '문자열'

a, b, c, d
Out[20]:
(7, 1.23, True, '문자열')
In [21]:
type(a), type(b), type(c), type(d)
Out[21]:
(int, float, bool, str)
In [8]:
# 데이터 타입

print( type(1) )
print( type(1.) )
print( type("hello") )
print( type(str(1.)) )
print( type(print) )
<class 'int'>
<class 'float'>
<class 'str'>
<class 'str'>
<class 'builtin_function_or_method'>

파이썬에는 복소수(complex) 타입등 더 다양한 타입들이 있지만, 우선은 문자열(str), 정수(int), 실수(float), 불린(bool) 4가지 정도의 타입만 알아도 파이썬을 충분히 활용할 수 있다.

타입 변환

우리가 처리하는 데이터들은 숫자가 많지만, 대부분 원천 데이터는 문자열 형태로 저장되어 있다. 문자열(str)을 수치형 타입(int, float)로 바꾸거나 출력이나 포맷팅을 위해 수치를 문자열로 바꾸는 경우들도 있다. 이처럼 서로 다른 데이터 타입을 바꾸어는 작업을 타입 변환(type conversion)이라고 한다.

In [9]:
s ='9.14'
print(type(s))

f = float(s)
print(f)
<class 'str'>
9.14

부동소수점(float)을 정수(int)로 바꾸면 소수점 이하 자리가 버림(floor)된다.

In [10]:
x = 3.6
print(x)
print(type(x))
print(int(x))
3.6
<class 'float'>
3

문자열과 문자열에 + 연산이 가능하지만, 문자열과 수치값에 + 연산을 할 수 없다. 연산이 가능하도록 타입을 맞추기 위해 타입 전환을 사용하기도 한다.

"The value of pi is around " + 3.14 # 에러
In [11]:
"The value of pi is around " + str(3.14)
Out[11]:
'The value of pi is around 3.14'

간단한 출력

In [12]:
print ("Hello, python")
print ("Hello, python", 3.14)
print ("Hello, python", 1024 ** 10)
Hello, python
Hello, python 3.14
Hello, python 1267650600228229401496703205376

다양한 출력

  • %f - float
  • %d - decimal (int)
  • %s - str
In [13]:
# 포맷 출력

print ("%s is short, You need %s!" % ("Life", "파이썬"))
print ("Today is Pi (%.2f) day  !" % (3.1415926535))
Life is short, You need 파이썬!
Today is Pi (3.14) day  !
In [14]:
# 포맷 문자열 생성

print("x = %.2f, y = %d, z = %.3f" % (3.1415, 2.8, 0.0150))
x = 3.14, y = 2, z = 0.015
In [15]:
# 포맷 문자열 생성 (Python3 스타일)
print("x = {:.2f}, y = {}, z = {}".format(3.1415, 2.8, 0.015))
print("x = {0:.2f}, y = {1}, z = {2}".format(3.1415, 2.8, 0.015))
print("x = {x:.2f}, y = {y}, z = {z}".format(x=3.1415, y=2.8, z=0.015))
x = 3.14, y = 2.8, z = 0.015
x = 3.14, y = 2.8, z = 0.015
x = 3.14, y = 2.8, z = 0.015

댓글