파이썬 공부 2008/05/22

시작하기
   - 변수
   - 리스트
   - 인터프리터

제어구조
   - while
   - if
   - for

함수
   - 함수
   - 재귀적 용법
   - 지역변수, 전역변수
   - 값을 돌려주기
   - 람다
   - 연습 문제 (구구단)


//-------- 내용

   - 리스트



>>> family = ['father', 'mother', 'I', 'sister']
>>> len( family )
4
>>> family[2]
'I'
>>> family.remove('I')
>>> family
['father', 'mother', 'sister']


   - 인터프리터

텍스트 에디터(메모장 같은 프로그램)를 실행시켜서 아래의 예제를 입력해보세요.

//--- triangle.py 파일 내용 시작

print '직각삼각형 그리기\n'

d = float(raw_input('변의 길이 : '))

for i in range(d+1):

print '* ' * i

area = float((d ** 2) / 2)

print '넓이 : ', area

raw_input()

//--- triangle.py 파일 내용 종료

실행 => D:\Python21>python exam/triangle.py

//--- 실행시 내용

직각삼각형 그리기
변의 길이 : 4
*
* *
* * *
* * * *
넓이 : 8.0

//--------------------------------


   - while

>>> num = 1
>>> while num <= 100:
... print num
... num = num + 1
...


   - if

>>> c = 15 * 5
>>> d = 15 + 15 + 15 + 15 + 15
>>> if c > d: # 만약 c가 d보다 크면
... print 'c > d' # ‘c > d’라고 출력한다.
... elif c == d: # 그렇지 않고 c와 d가 같다면
... print 'c == d' # ‘c == d’라고 출력한다.
... else: # 이도 저도 아니면
... print 'c < d' # ‘c < d’라고 출력한다.
...
c == d

   - for

>>> family = ['father', 'mother', 'I', 'syster']
>>> for x in family: # family라는 리스트의 각각의 원소 x에 대하여:
... print x, len(x) # x와 x의 길이를 출력하라.
...
father 6
mother 6
I 1
syster 6

>>> range(2,7)
[2, 3, 4, 5, 6]
>>> for i in range(4,8):
... print i
...
[ 4, 5, 6, 7 ]

   - 함수

>>> a_list = [3, 4, 62, 27, 83, 956, 26, 58, 3, 78, 168, 64, 78, 8, 4, 6, 75, 81, 69]
>>> def print_list(a): # 지금부터 print_list 함수를 만들겠다는 뜻
... for i in a:
... print i
...
>>> print_list(a_list)


   - 재귀적 용법



>>> def countdown(n):
>>> if n == 0:
>>> print "Blastoff!"
>>> else:
>>> print n
>>> countdown(n-1)


>>> countdown(3)
3
2
1
Blastoff!




   - 지역변수, 전역변수

>>> jjang
'pig dad'

>>> def ban():
... jjang = '07'
... print 'jjang =', jjang
...
>>> ban()
jjang = 07

>>> jjang
'pig dad'


   - 값을 돌려주기

>>> def function(x):
... a = 3
... b = 5
... y = a*x + b
... return y # y 값을 돌려준다
...

>>> c = function(10)

>>> c
35



>>> def exam():
... ans = raw_input('1+2=')
... return 1+2 == int(ans)
...

>>> exam()
1+2=3
1

>>> exam()
1+2=4
0
>>>


raw_input() 이라는 함수는 사용자로부터 문자열 입력을 받는데 쓰이구요, int() 함수는 문자열을 숫자로 바꿔준다.


   - 람다

lambda 인자 : 표현식

>>> def hap(x, y):
... return x + y
...
>>> hap(10,20)
30

==>
>>> (lambda x,y: x+y)(10, 20)
30


map(함수, 리스트)

>>> map(lambda x: x**2, range(5))
[0, 1, 4, 9, 16]

reduce(함수, 순서형 자료)

>>> reduce(lambda x,y: x+y, [0,1,2,3,4])
10
>>> reduce(lambda x,y: y+x, 'abcde')
'edcba'

filter(함수, 리스트)

>>> filter(lambda x: x<5, range(10))
[0, 1, 2, 3, 4]

>>> filter(lambda x: x%2, range(10))
[1, 3, 5, 7, 9]


//---

언제나 그러하듯 예제는 따라하기 쉬우나,
중요한건 응용이라는거지~!!!
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2008/05/22 11:21 2008/05/22 11:21
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/3284

Trackback URL : http://tcbs17.cafe24.com/tc/trackback/3284

« Previous : 1 : ... 3145 : 3146 : 3147 : 3148 : 3149 : 3150 : 3151 : 3152 : 3153 : ... 6391 : Next »

블로그 이미지

- 홍반장

Archives

Recent Trackbacks

Calendar

«   2024/11   »
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Statistics Graph

Site Stats

Total hits:
237165
Today:
282
Yesterday:
1352