2012의 게시물 표시

파이선 배우기 #1

화면에 간단한 문자열을 출력해보고, 주석에 대해서도 알아보겠다.

다음을 텍스트 편집기에 입력하고 ex001.py란 이름으로 저장해둔다.
1 print"Hello"
터미널에서 python ex001.py라고 입력한 후 실행하면,
누구나 쉽게 예상할 수 있듯이 화면에 Hello를 출력한다.

한 줄 더 추가해 보자.
1 print"Hello" 2 print"How are you?"
한글 출력은 어떤가? 다음과 같이 수정해 보자.
1 print"안녕" 2 print"방가방가"
인코딩을 지정할 필요가 있다며 오류를 뿜는다. 수정하자. 인코딩은 소스 파일의 첫 번째 혹은 두번째 라인에 적는다.
1 #!/usr/bin/python 2 # -*- coding: utf-8 -*- 3 print"안녕" 4 print"방가방가"
파일을 utf-8형식으로 저장한 때에는 별 문제가 없겠으나 좀 더 확실히 해두자면,

1 print u"안녕"
이렇게 해야 옳다.

이는 문자열의 길이를 출력해보면 그 차이를 확인해 볼 수 있다.
1 printlen("안녕하세요") 2 printlen(u"안녕하세요")
#으로 시작하는 이후의 문장은 주석문으로 인식된다.
1 print"Hello" 2 #print "How are you?"

소스코드 작성 규칙

파이선의 소스 코드를 작성하는 데에는 다른 프로그래밍 언어들과는 다른 특징들이 있다.

줄은 개행문자로 구분된다.

줄 끝에 세미콜론(;)이 사용되지 않는다. C 또는 Java 등과 다른 특징 중 하나이다.

파이썬에서 하나의 명령은 하나의 줄에 입력한다.

명시적으로 두 개의 줄을 하나로 연결하고자 하는 경우에는 역슬래시(\)를 사용한다.
1 if1900< year <2100and1<= month <=12 \ 2 and1<= day <=31and0<= hour <24 \ 3 and0<= minute <60and0<= second <60:# Looks like a valid date 4 return1
괄호 ( (, {, [ )로 둘러 쌓인 여러 줄은 하나의 줄로 연결된 것으로 인식된다.
1 month_names = ['Januari','Februari','Maart',# These are the 2 'April','Mei','Juni',# Dutch names 3 'Juli','Augustus','September',# for the months 4 'Oktober','November','December']# of the year
#은 주석의 시작을 나타내며, 해당 줄의 끝까지 주석으로 인식된다.

빈 줄은 무시된다.

문장을 시작하기 전의 들여쓰기는 문장의 그룹을 묶는 것으로 파이썬 언어에 있어서 매우 중요한 특징이다.
1 defperm(l): 2 # Compute the list of all permutations of l 3 iflen(l) <=1: 4 return[l] 5 r = [] 6 for i inrange(len(l)): 7 s = l[:i] + l[i+1:] 8 …

값의 표현

문자열 문자열은 따옴표(" 또는 ')로 묶어서 표현한다.
print"Hello"
따옴표를 3단으로 묶기도 한다. 3단 따옴표 안에서는 이스케잎 하지 않은 개행문자나 따옴표를 사용할 수 있는 장점이 있다.
print"""Hello, 'Python'."""
특수문자를 나타내기 위해서 역슬래시(\)가 사용될 수 있다.
print"\n"
문자열 앞에 접두어로 r 또는 R을 붙이면 Raw String을 나타내며, u 또는 U를 붙이면 유니코드 임을 나타낸다. 파이썬 3부터는 b 또는 B를 사용해서 바이트 표현임을 나타낼 수 있다. u 또는 b 뒤에 r을 함께 사용할 수도 있다. Raw 모드는 이스케잎 문자가 많이 사용될 때 유용하다.
print"\u0062"print ur"\u0062"
문자열을 결합하려면 + 연산자를 사용하거나 공백문자를 사용한다.
print"Foo"+"Boo"print"Foo""Boo"
정수 정수는 10진수, 16진수, 8진수, 2진수로 표현할 수 있다. 16진수는 0x, 8진수는 0o, 2진수는 0b로 시작한다.

큰 정수를 표현할 때는 숫자 뒤에 l 또는 L을 붙인다.

부동소수 소수점을 사용하거나 e를 사용해 지수로 표현된 숫자는 부동소수다.

허수 허수를 표현할 떄는 숫자 뒤에 j 또는 J를 붙인다.

연산자

+       -       *       **      /       //      %
<<      >>      &       |       ^       ~
<       >       <=      >=      ==      !=      <>

비교연산자 <>와 !=는 같은 의미이다. !=를 사용하는 것이 바람직하다.



(       )       [       ]       {       }      @
,       :       .       `       =       ;
+=      -=      *=      /=      //=     %=
&=      |=      ^=      >>=     <<=     **=
이들은 구분자로 사용된다.

키워드

and      
del      
from    
not      
while
as      
elif    
global  
or      
with
assert  
else    
if      
pass    
yield
break    
except  
import  
print
class    
exec    
in      
raise
continue
finally  
is      
return
def      
for      
lambda  
try