이 글은 '열혈강의 Python 개정판ver.2'를 참고로 작성하였습니다.
'열혈강의 Python 개정판ver.2' 이강성저 프리렉
RaspberryPI에 Raspbian을 사용하였습니다.
파이썬 기본 자료형
문자열
문자열은 텍스트표현을 위한 자료형으로
큰따옴표(") 혹은 작은따옴표(')로 묶여진 문자들의 집합입니다.
>>> print "Hello Python"
Hello Python
>>> print 'Hello Python'
Hello Python
>>>
>>> s='Hello Python'
>>> s[0]
'H'
>>> s[5]
' '
>>> s[6]
'P'
>>> s[-1]
'n'
3개의 인자를 갖는 슬라이싱도 있습니다.
string[start:stop:step]
>>> s[4:10:1] #정방향 4~9까지
'o Pyth'
>>> s[4:10:-1] #역방행 4~9까지인데
#시작위치와 끝위치가 정방향
''
>>> s[10:4:-1] # 10~5까지 역방향
'ohtyP '
>>> s[::-1] #문자열 뒤집기
'nohtyP olleH'
>>> s[::2] #2칸 단위로
'HloPto'
+연산자를 이용해 문자열을 연결할 수도 있고
*연산자를 이용해 여러번 반복할 수도 있습니다.
>>> 'Hello' + ' ' + 'Python'+'!!'
'Hello Python!!'
>>> 'Hello' + ' ' + 'Python'+('!!'*3)
'Hello Python!!!!!!'
>>> len(s)
12
>>> 'hello' in s
True
>>> 'hello' not in s
False
리스트
리스트는 대괄호'[]'를 사용해 임의의 객체 여러개를 저장하는 자료형입니다.
문자열과 유사하게 사용될 수 있습니다.
>>> L = [1,2,3]
>>> len(L)
3
>>> L[1:]
[2, 3]
>>> L+L
[1, 2, 3, 1, 2, 3]
>>> L*2
[1, 2, 3, 1, 2, 3]
>>> L[::-1]
[3, 2, 1]
>>> 4 in L
False
튜플
튜플 또한 문자열 과 유사하게 활용됩니다.
튜플은 괄호('()')를 사용합니다.
>>> T=(1,2,3)
>>> len(T)
3
>>> T[1:]
(2, 3)
>>> T+T
(1, 2, 3, 1, 2, 3)
>>> T*2
(1, 2, 3, 1, 2, 3)
>>> T[::-1]
(3, 2, 1)
>>> 2 in T
True
위 처럼 튜플도 리스트나 문자열처럼 활용가능하지만
리스트같은 메서드는 지원하지는 않습니다.
>>> T
(1, 2, 3)
>>> T.reverse()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'tuple' object has no attribute 'reverse'
>>> T.append(5)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'tuple' object has no attribute 'append'
리스트와 튜플의 또한가지 차이점은
튜플은 값 변경을 할 수 없지만,
리스트는 값변경이 가능하다는 점입니다.
>>> T[0]=100
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
>>> L
[2, 3, 4]
>>> L[0]=100
>>> L
[100, 3, 4]
사전
사전은 안드로이드의 hashMap과 비슷한 느낌입니다.
하나의 키(key)에 그에 대응하는 하나의 벨류(value)를 갖습니다.
이 키-벨류를 여러개 포함 할 수 있습니다.
>>> dic={'one':'banana','two':'apple','three':'monkey'}
>>> dic['one']
'banana'
>>> dic['four']='dog'
>>> dic
{'four': 'dog', 'three': 'monkey', 'two': 'apple', 'one': 'banana'}
>>> 'dog' in dic
False
>>> 'four' in dic
True
>>>
그 외
자료형을 확인하는 방법은 내장함수인 type()메서드를 사용합니다.
>>> type(dic)
<type 'dict'>
>>> type(L)
<type 'list'>
>>> type(T)
<type 'tuple'>
>>> type(123)
<type 'int'>
>>> type('asdf')
<type 'str'>
파이썬에서 사용할 수 있는 자료형들을 확인하려면
아래와 같이 입력하면 됩니다.
>>> import types
>>> dir(types)
댓글