728x90
01. 리스트(List), 튜플(Tuple)
- 자료를 나열하여 목록으로 처리
- 리스트(List)는 원본 값을 변경 할 수 있으나 튜플(tuple)은 값을 변경할 수 없으며 사용법이 비슷함.
- 사전(Dictionary)은 키와 값의 구조를 제공(JAVA: Map)
- 문자열의 시작 인덱스는 0부터 시작하며 - 인덱스는 문자열의 끝부터 -1을 시작으로 지정함.
- [시작 인덱스: 마지막 인덱스]: 시작 index부터 마지막 index-1 부분까지 문자열 추출
- [: 마지막 인덱스]: 처음부터 마지막 index-1 부분까지 문자열 추출
- [시작 인덱스:] : 시작 index부터 마지막까지 문자열 추출
- [::2]: step을 2로해서 슬라이싱.
1. list 실습
[출력 화면]
index의 사용
--------------------------------------
cat
bat
rat
elephant
elephant
Hello cat
['cat', 'bat']
[10, 20, 30, 40, 50]
bat
50
슬라이스의 이용
--------------------------------------
['cat', 'bat', 'rat', 'elephant']
['bat', 'rat']
['cat', 'bat', 'rat', 'elephant']
['cat', 'bat']
['bat', 'rat', 'elephant']
['cat', 'bat', 'rat', 'elephant']
4
['cat', '고양이', 'rat', 'elephant']
[1, 2, 3, 'A', 'B', 'C']
[1, 2, 3, 1, 2, 3, 1, 2, 3]
--------------------------------------
['봄', '여름', '가을']
봄
여름
가을
계절 1: 봄
계절 2: 여름
계절 3: 가을
True
False
--------------------------------------
봄: 봄
여름: 여름
가을: 가을
--------------------------------------
2
['봄', '여름', '가을', '크리스마스']
['함박눈', '봄', '여름', '가을', '크리스마스']
['함박눈', '봄', '가을', '크리스마스']
['가을', '봄', '크리스마스', '함박눈']
['함박눈', '크리스마스', '봄', '가을']
['A', 'Z', 'a', 'z']
['A', 'a', 'Z', 'z']
▶list1.py
# -*- coding: utf-8 -*-
print('\n index의 사용')
print("--------------------------------------")
spam = ['cat', 'bat', 'rat', 'elephant'] # list
print(spam[0])
print(spam[1])
print(spam[2])
print(spam[3])
print(spam[-1])
print('Hello ' + spam[0])
spam = [['cat', 'bat'], [10, 20, 30, 40, 50]]
print(spam[0])
print(spam[1])
print(spam[0][1]) # bat
print(spam[1][4]) # 50
print("\n 슬라이스의 이용")
print("--------------------------------------")
spam = ['cat', 'bat', 'rat', 'elephant'] # list
print(spam[0:4])
print(spam[1:3])
print(spam)
print(spam[:2]) # ['cat', 'bat']
print(spam[1:])
print(spam[:])
print(len(spam))
spam[1] = '고양이'
print(spam)
spam = [1,2,3] + ['A', 'B', 'C']
print(spam)
spam = [1,2,3] * 3;
print(spam)
print("--------------------------------------")
season=['봄', '여름', '가을', '겨울']
del season[3]
print(season)
for item in season:
print(item)
# range(5): 0, 1, 2, 4
for index in range(len(season)):
print('계절 ' + str(index + 1) + ': ' + season[index])
print('봄' in season)
print('겨울' in season)
print("--------------------------------------")
flower, sea, maple = season # 변수의 갯수와 list의 요소는 일치해야함.
print('봄: ' + flower)
print('여름: ' + sea)
print('가을: ' + maple)
print("--------------------------------------")
print(season.index('가을')) # list index
season.append('크리스마스') # 마지막에 추가
print(season)
season.insert(0, '함박눈') # 지정된 index에 추가
print(season)
season.remove('여름') # 삭제
print(season)
season.sort() # ascending
print(season)
season.sort(reverse=True) # decending
print(season)
season=['a', 'z', 'A', 'Z'] # ASCII 기준 정렬
season.sort()
print(season)
season.sort(key=str.lower)
print(season) # ['A', 'a', 'Z', 'z'] 알파벳 문자 순서에의한 정렬
-------------------------------------------------------------------------------------
2. tuple 실습
[출력 화면]
('hello', 42, 0.5)
(42, 0.5)
3
<class 'str'>
<class 'str'>
<class 'tuple'>
('봄', '여름', '가을', '겨울')
['봄', '여름', '가을', '겨울']
['h', 'e', 'l', 'l', 'o']
('h', 'e', 'l', 'l', 'o')
▶tuple1.py
# -*- coding: utf-8 -*-
eggs = ('hello', 42, 0.5)
print(eggs)
print(eggs[1:3])
print(len(eggs))
print(type('hello')) # <class 'str'>
print(type(('hello'))) # <class 'str'>
print(type(('hello',))) # <class 'tuple'>
season = ['봄', '여름', '가을', '겨울'] # list
season2 = tuple(season) # list -> tuple
print(season2)
season3 = list(season2) # tuple -> list
print(season3)
season3 = list('hello') # str -> list
print(season3)
season3 = tuple('hello') # str -> tuple
print(season3)
-------------------------------------------------------------------------------------
3. list, tuple 실습
[출력 화면]
[6, 2, 3, 4, 5]
------------------------------------------
1
[1, 2, 3]
3
------------------------------------------
[1, 2, 3, 4, 5, 6]
------------------------------------------
5
13
------------------------------------------
False
True
------------------------------------------
(1, 2, 3, 4, 5)
------------------------------------------
1
{'a': 1, 'd': 4, 'c': 3, 'b': 2}
{'a': 1, 'd': 4, 'c': 3, 'b': 7}
4
▶sequence1.py
# -*- coding: utf-8 -*-
# 리스트 선언
list1 = [1, 2, 3, 4, 5]
list2 = ['a', 'b', 'c']
list3 = [1, 'a', 'abc', [1, 2, 3, 4, 5], ['a', 'b', 'c']]
list1[0] = 6
print(list1) # [6, 2, 3, 4, 5]가 출력됨
print("------------------------------------------")
# 리스트 인덱싱
listdata = [1, 2, [1, 2, 3]]
print(listdata[0]) # 1이 출력됨
print(listdata[-1]) # [1, 2, 3]이 출력됨
print(listdata[2][-1]) # [1,2,3]중에서 끝에서 -1번째 3이 출력됨
print("------------------------------------------")
# 리스트 연결
listdata1 = [1, 2, 3]; listdata2 = [4, 5, 6]
print(listdata1 + listdata2) # [1, 2, 3, 4, 5, 6]이 출력됨
print("------------------------------------------")
# 리스트 크기
strdata1 = 'I love python'
strdata2 = '나는 파이썬을 사랑합니다'
listdata = ['a', 'b', 'c', strdata1, strdata2]
print(len(listdata)) # 5가 출력됨
print(len(listdata[3])) # 13이 출력됨
print("------------------------------------------")
# 멤버 체크
listdata =[1, 2, 3, 4]
ret1 = 5 in listdata # False
ret2 = 4 in listdata # True
print(ret1); print(ret2)
print("------------------------------------------")
# 튜플 선언
tuple1 = (1, 2, 3, 4, 5)
tuple2 = ('a', 'b', 'c')
tuple3 = (1, 'a', 'abc', [1, 2, 3, 4, 5], ['a', 'b', 'c'])
# tuple1[0] = 6
print(tuple1)
print("------------------------------------------")
# 사전 선언
dict1 = {'a':1, 'b':2, 'c':3}
print(dict1['a']) # 1이 출력됨
dict1['d'] = 4
print(dict1) # {‘a’:1, ‘b’:2’, ‘c’:3, ‘d’:4}가 출력되나 순서가 틀릴 수 있음
dict1['b'] = 7
print(dict1) # {‘a’:1, ‘b’:7’, ‘c’:3, ‘d’:4}가 출력되나 순서가 틀릴 수 있음
print(len(dict1)) # 4가 출력됨
728x90
'빅데이터 프로그래밍 > Python' 카테고리의 다른 글
[Python] 07. 제어문 - 반복문(while, for문), for 문 실습 (0) | 2017.08.02 |
---|---|
[Python] 06. 제어문 - 분기문(if) - 다양한 if문, if문 실습, Template (2) | 2017.08.02 |
[Python] 04. 시퀀스, 자료형 문자열의 실습, 문자열 선언, 슬라이싱, 연결, 반복, 문자열의 크기, 멤버체크, 문자열 포맷팅 (0) | 2017.08.02 |
[Python] 03. 컴파일, 파이썬 프로그램의 구조, 데이터 형(date type), 연산자(Operator), Library Reference (0) | 2017.08.02 |
[Python] 02. Eclipse neon3 설치, PyDev 플러그인 설치 (0) | 2017.08.02 |
댓글