본문 바로가기

닥치고 공부/공돌이

스크립트 언어1 - Python - 202

먼저 python IDLE를 통해 다음의 내용을 *.py로 저장한다.


a = ['Apple','Banana','Melon','Blueberry','Straw','Orange','Peach']
b = ('Frog','Cat','Puppy')
c = {'Yoda':'good','Darth':'bad'}


-------------------------------------------------------------------------------------------------------------------


Microsoft Windows [Version 6.1.7601]

Copyright (c) 2009 Microsoft Corporation. All rights reserved. C:\Users\DS>python -i e:\test.py // python -i d:\test.py 

python실행과 동시해 e:\경로의 test/py파일을 import한다.


>>> a // a의 List를 보여줌

['Apple', 'Banana', 'Melon', 'Blueberry', 'Straw', 'Orange', 'Peach']

>>> for fruit in a: // 제어문 for을 통해 a의 List를 fruit으로 출력한다. for 문의 기본 문장 구조는 아래와 같다.


for 변수 in 리스트(또는 터블, 문자열):

<수행할 문장 1>

<수행할 문장 2>

...


리스트의 첫 번째 요소부터 마지막 요소까지 차례로 변수에 대입해서 <수행할 문장1>, <수행할 문장2> 등을 수행한다.


... print fruit ... Apple Banana Melon Blueberry Straw

Orange

Peach


>>> range(2) // (2)의 범위

[0, 1] >>> range(5) // (5)의 범위 [0, 1, 2, 3, 4] >>> len(a) 5 >>> range(len(a)) // (a)의 범위는 일곱가지 과일이 있으므로 0~6까지 표시 된다. [0, 1, 2, 3, 4, 5, 6]

>>> for num in range(len(a)): // range(len(a))는 6의 길이 범위를 가지며

... print 'I like ', a[num] // 'I like' 라는 문자와 함께 a의 [1] List 부터 a의 [6]List까지 출력한다. ... I like Apple I like Banana I like Melon I like Blueberry I like Straw

I like Orange

I like Peach


>>> for num in range(len(a)):

... print 'I like %s very much' %a[num] // %s 변수는 우측의 %a의 값이 대입된다. ... I like Apple very much I like Banana very much I like Melon very much I like Blueberry very much I like Straw very much

I like Orange very much

I like Peach very much


>>> for num in [0,1,2,3]: // 리스트 개수를 임의로 지정할 수 있다.

... print 'I like %s very much' %a[num] ... I like Apple very much I like Banana very much I like Melon very much I like Blueberry very much


>>> for num in [0,2,1,4,2,0,3,2,4]: ... print 'I like %s very much' %a[num] ... I like Apple very much I like Melon very much I like Banana very much I like Straw very much I like Melon very much I like Apple very much I like Blueberry very much I like Melon very much I like Straw very much


>>> a ['Apple', 'Banana', 'Melon', 'Blueberry', 'Straw', 'Orange', 'Peach']

>>> enumerate

<type 'enumerate'>


>>> for i, v in enumerate(a): // i, v 순서로 내장함수의 KEY와 Value값을 보여준다. 여기서 Value값은 a의 List가 된다.

... print i,v // 공백 세 칸을 준다 ... 0 Apple 1 Banana 2 Melon 3 Blueberry 4 Straw

5 Orange

6 Peach


>>> for i, v in enumerate(a): ... print 'I like %s and %s' %(a[i], a[i+1]) // 첫째 %s는 a[i] = 0인 Apple이 되고 둘째 %s는 a[i+1] = 1인 Banana가 된다. ... I like Apple and Banana I like Banana and Melon I like Melon and Blueberry I like Blueberry and Straw

I like Straw and Orange

I like Orange and Peach Traceback (most recent call last): File "<stdin>", line 2, in <module> IndexError: list index out of range

// 마지막열은 오류가 난다. Peach이후 List가 Null값이라서

그러므로 min가 max의 함수를 통해 최대 값을 지정해주어야 한다.


>>> min <built-in function min>

>>> max <built-in function max>

>>> min(1,3) 1

>>> max(1,3) 3

>>> for i, v in enumerate(a): // 무엇이 문제점이 있는지 찾기! ... print 'I like %s and %s' %(a[i], a[min(i,i+1)]), i ... I like Apple and Apple 0 I like Banana and Banana 1 I like Melon and Melon 2 I like Blueberry and Blueberry 3 I like Straw and Straw 4

I like Orange and Orange 5

I like Peach and Peach 6


>>> for sth in enumerate(a): ... print sth ... (0, 'Apple') (1, 'Banana') (2, 'Melon') (3, 'Blueberry') (4, 'Straw')

(5, 'Orange')

(6, 'Peach')


>>> i // 이전 구성문에서 KEY MAX값을 출력하는 듯 함 6

>>> v // 이전 구성문에서 Value MAX값을 출력하는 듯 함 'Peach'

>>> x,y,z = (100,200,300) // x,y,z에 각각 터플 100, 200, 300을 대입 >>> z 300 >>> x,y,z = (100,200) // 터플의 변수와 value의 개수가 맞지 않으므로 오류 발생 Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: need more than 2 values to unpack

>>> for fruit in a: ... print fruit ... Apple Banana Melon Blueberry Straw

Orange

Peach

>>> for fruit in a: // if Banana가 있다면 'Call PARK!!!!!!!!!!!!!'을 프린트 한다. ... if fruit == 'Banana': ... print 'Call PARK!!!!!!!!!!!!!!!' ... Call PARK!!!!!!!!!!!!!!!

>>> for fruit in a: ... if fruit == 'Banana': ... print 'its %s, Call PARK!!!!!!!!!!!!!!!' %fruit ... its Banana, Call PARK!!!!!!!!!!!!!!!

>>> bool <type 'bool'> >>> True True

>>> False False

>>> bool(True) True

>>> bool(0) // 0이외의 그 모든 값은 전투 True를 반환 False

>>> bool(1) True

>>> bool(2) True

>>> bool(100) True

>>> bool(-1) True

>>> bool('False') // bool은 대 소문자를 구분한다. True

>>> 'apple' in a False

>>> 'Apple' in a True

>>> 2 < 3 True >>> 2 < 3 True >>> 2 < 3 True >>> 2 > 3 False

>>> 2 == 3 // '=' 이꼴 이호는 '=='으로 사용한다. False >>> 2 != 3 True

>>> 'podo' in a False >>> 'podo' not in a // 긍정이냐 부정이냐의 여부를 데이터 개수에 따라 적절히 사용할 수 있다. True


>>> 1 == 1.0

True

>>> type(1.0) <type 'float'>

>>> y = 9

>>> x

100

>>> x = 5


>>> if x > 4 and y < 10 : ... print 'Yes!!' ... Yes!!

>>> if x > 4: ... print 'yes!!!' ... yes!!!


>>> y = 23

>>> y < 10 False

>>> x > 4 True

>>> if x > 4 and y < 10 : // 연산자 and는 1과 0식 계산으로 곱하기에 해당되고 연산자 or은 1과 0식 계산으로 더하기에 해당됨

... print 'Yes!!' ... // and연산식은 둘 중 하나가 참이기 때문에 결과 값을 보여주지 않음(중립인듯?)

>>> if x > 4 or y < 10 : ... print 'Yes!!' ... Yes!!


'닥치고 공부 > 공돌이' 카테고리의 다른 글

[스크랩]라디안에 대한 깨달음  (0) 2016.02.16
스크립트 언어1 - Python - 201  (0) 2015.04.01
스크립트 언어1 - Python - 102  (0) 2015.03.25
스크립트 언어1 - Python - 101  (0) 2015.03.25
VBA 공부 ①  (0) 2014.08.01