#!/usr/bin/env python # coding: utf-8 # *** # *** # # 2. 파이썬 언어의 기본문형 # *** # *** # *** # ## 1 파이썬 예약어 및 내장 함수 # *** # ### 1-1 예약어 (Reserved Words) # - 예약어 (또는 키워드) # - 파이썬에서 이미 문법적인 용도로 사용되고 있기 때문에 변수명등의 식별자로 사용하면 안되는 단어들 # ### 1-2 예약어의 종류 알아보기 # In[2]: import keyword print(keyword.kwlist) print() print(len(keyword.kwlist)) # python3에 추가됨 : 'False', 'None', 'True', 'nonlocal' # python3에서는 제거됨 : 'exec', 'print' # # Python2 : # ['and', 'as', 'assert', 'break', 'class', # 'continue', 'def', 'del', 'elif', 'else', # 'except', 'exec', 'finally', 'for', 'from', # 'global', 'if', 'import', 'in', 'is', 'lambda', # 'not', 'or', 'pass', 'print', 'raise', 'return', # 'try', 'while', 'with', 'yield'] # # 31 # ### 1-3 내장 함수 (Built-in Function) # - 별도의 모듈(Module)의 추가 없이 기본적으로 제공되는 함수들 # - 참고 사이트 # 1. 내장(Built-in) 함수: https://docs.python.org/3.6/library/functions.html # - 대표적인 내장 함수 # - abs, max, min, pow, chr, str, range, type, ... # - abs(x) # - 수치형 자료 x에 대해 x의 절대값을 반환하는 함수 # In[3]: print(abs(3)) print(abs(-3)) # - max(s) # - 시퀀스 자료형(문자열, 리스트, 튜플)을 입력받아 그 자료가 지닌 원소 중 최대값을 반환하는 함수 # In[4]: print(max(1, 2)) print(max([1, 2, 3])) print(max("python")) # - min(s) # - 시퀀스 자료형(문자열, 리스트, 튜플)을 입력받아 그 자료가 지닌 원소 중 최소값을 반환하는 함수 # In[5]: print(min(1, 2)) print(min([1, 2, 3])) print(min("python")) # - pow(x,y) # - 수치형 자료형 x, y에 대해 x의 y승을 반환하는 함수 # In[6]: print(pow(2, 4)) print(pow(3, 3)) print(pow(2, -1)) # - chr(i) # - 정수 형태의 Unicode값을 입력으로 받아 그에 해당하는 문자를 반환하는 함수 # - 인수 i의 범위: 0부터 0x10ffff (Decimal표현으로 1114111) 까지 # In[7]: print(chr(97)) print(chr(65)) print(chr(48)) # - str(object) #
str(object='') -> str# - 임의의 객체 object에 대해 해당 객체를 표현하는 문자열을 반환하는 함수 # - Create a new string object from the given object. # In[8]: print(str(3)) print(str([1, 2])) # - range #
# range(stop) -> range object # range(start, stop[, step]) -> range object# - 수치형 자료형으로 start, stop, step 등을 입력받아 start부터 stop까지의 정수값들이 순차적으로 들어 있는 range object를 리스트로 반환하는 함수 # - Python2에서는 range()의 결과로 곧바로 리스트가 반환됨 # - 인수가 하나(stop)인 경우 # - 0(디폴트 값)부터 stop-1까지의 정수 리스트를 반환한다. # - 인수가 두 개(start, stop)인 경우 # - start부터 stop-1까지의 정수 리스트를 반환한다. # - 인수가 세 개(start, stop, step)인 경우 # - start부터 stop-1까지의 정수를 반환하되 각 정수 사이의 거리가 step인 것들만 반환한다. # # In[2]: print(range(10)) print(range(3, 10)) print(range(3, 10, 2)) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] # [3, 4, 5, 6, 7, 8, 9] # [3, 5, 7, 9] print() print(list(range(10))) print(list(range(3, 10))) print(list(range(3, 10, 2))) # - type(object) # - 임의의 객체 object의 자료형을 반환하는 함수 # In[25]: print(type(-1)) print(type('abc')) print(type([1, 2, 3])) #
int(x=0) -> integer # int(x, base=10) -> integer# In[16]: print(int(3.14)) # For floating point numbers, this truncates towards zero. 0이 되는 방향으로 소숫점 이하를 버림 print(int()) # return 0 if no arguments are given. 그냥 int()는 0을 리턴 # In[1]: # k = int(raw_input('int : ')) k = input('str : ') print(k) print(type(k)) print() k = int(input('int : ')) print(k) print(type(k)) # In[2]: # Python3에서 input()의 기능 # Read a string from standard input. The trailing newline is stripped. # In[29]: get_ipython().run_line_magic('pinfo', ' input') # In[52]: k = input('expr:') print(k) # expr:30 + 50 # 80 # ### 4-2 콘솔 출력 # - print: 화면에 자료를 출력하는 보편적인 statement # - 하나의 print로 두 개 이상의 자료를 출력할 때에는 , 사용 # In[53]: print(4 + 5, 4 - 2) # - 세미콜론(;)은 순차적으로 입력된 각 statement를 분리함 # In[54]: print(1); print(2) # - Python2에서 기본적으로 print는 마지막에 줄바꿈을 수행한다. 그러나 콤마(,)가 마지막에 있으면 줄바꿈을 하지 않음 # - Python3에서는 콤마를 붙이나 안붙이나 상관없이 줄바꿈을 수행 # In[3]: print(1), print(2) #1 2 print() print(1) print(2) # - print를 여러번 사용하여 두 개 이상의 자료를 newline 없이 출력할 때에는
end=' '
를 사용 (디폴트는 end='\n'
)
# In[8]:
print(1, end=", ")
print(2)
print()
print(1, end=" ")
print(2)
# - +연산자는 숫자와 문자열에 대한 연산을 지원하지 않는다.
# In[60]:
print(12 + 'spam')
# In[61]:
print('12' + 'spam')
# 참고 문헌: 파이썬(열혈강의)(개정판 VER.2), 이강성, FreeLec, 2005년 8월 29일