DataScience
[Python] List/ Dict / Set / 문자열 원소 추가 방법 본문
1. List
1.1. (+), (*) 등의 기호 : 가장 기본적인 리스트의 연산 방법이지만 (+)등의 기호를 사용하면 리스트의 id 값이 변하는 것이 아니라 두 리스트가 더해진 새로운 리스트가 반환된다. 즉 기준 리스트에는 변화가 없기 때문에 기존 리스트를 사용하기 위해서는 기존 리스트에 업데이트 형식으로 다시 값을 할당해야 한다.
a = ["banana", "cherry", "apple"]
a + ["peach"] # (+) 사용
>>> ['banana', 'cherry', 'apple', 'peach']
a * 2 # (*) 사용
>>> ['banana', 'cherry', 'apple', 'banana', 'cherry', 'apple']
1.2. append() : 기존 리스트에 한개의 값을 추가하고자 하는 경우 사용한다. 추가되는 값은 기존 리스트의 마지막 리스트에 추가되며 다른 리스트의 내용을 추가하는경우 하나의 값으로 추가되어 n차원의 구조가 발생된다.
a = ["banana", "cherry", "apple"]
a.append("peach") # 한개 값 추가
>>> ["banana", "cherry", "apple", "peach"]
a.append(["peach", "orange"]) # 다른 리스트 추가
>>> ['banana', 'cherry', 'apple', 'peach', ['peach', 'orange']]
1.3. extend() : 기존의 리스트에 다른 리스트의 내용을 추가하기 위해 사용하는 방법으로 append()와 동일하게 기존 리스트 내용의 마지막에 추가된다.
a = ["banana", "cherry", "apple"]
a.append(["peach", "orange"]) # 다른 리스트 추가
>>> ['banana', 'cherry', 'apple', 'peach', 'orange']
1.4. insert() : insert(넣고 싶은 자리, "넣고 싶은 데이터")의 형태로 append()나 extend()의 경우와 다르게 넣고 싶은 자리에 데이터를 추가 가능하다.
a = ["banana", "cherry", "apple"]
a.insert(1, "peach") # 인덱스 1번에 "Peach" 삽입
>>> ['banana', 'peach', 'cherry', 'apple']
1.5. 슬라이싱[:] : [시작:끝]의 값을 조절하여 해당 위치에 값을 추가하거나 요소의 구간을 잘라내고 덮어쓰는 등의 수정이 가능하다.
a = ["banana", "cherry", "apple"]
a[1:1] = ["peach", "watermelon"] # [시작:끝]의 값을 같게 한다면 해당 위치에 여러 개의 데이터 추가 가능
>>> ['banana', 'peach', 'watermelon', 'cherry', 'apple']
a[1:2] = ["peach", "watermelon"] # [시작:끝]의 값을 다르게 한다면 해당 요소의 구간을 잘라 내고 추가 가능
>>> ['banana', 'peach', 'watermelon', 'apple']
※ 튜플의 경우 추가 및 수정이 불가능하기 때문에 기본적으로 이와 아주 흡사한 리스트로 변경 → 리스트에서 값 변경 → 다시 튜플로 변경을 하는 등 자료유형 변환을 이용하여 수정이 가능하다.
2. Dict
1. 딕셔너리[키값] = value : 딕셔너리에서 특정한 키 값을 다른 값으로 바꾸려면 인덱싱 결과에 바꾸고자하는 value값을 대입하여 키 값의 값을 업데이트 가능하다. 단 없는키의 경우 키 값을 변경하는 것이 아닌 새로운 key : value 값이 생성되는 것이다. 즉 키가 중복되지 않으면 새로운 key : value가 증가하지만 키가 중복될시 맨 나중에 입력한 것으로 업데이트 된다.
dict = {"banana" : 27, "cherry" : 16, "pineapple" : 20}
# 키값 중복으로 value값 수정
dict["banana"] = 30 # 있는 데이터는 수정
print(dict)
>>> {"banana" : 30, "cherry" : 16, "pineapple" : 20}
# 새로운 값 추가
dict["apple"]=20
dict(딕션)
>>> {"banana" : 27, "cherry" : 16, "pineapple" : 20, "apple" : 20}
3. Set
3.1. add() : 한 개의 요소를 추가하는 함수이다.
set = {1, 1, 2, 2, 3, 4, 5, 5} # 중복된 데이터가 없으며 데이터 간에 순서가 없다.
set.add(6)
set
>>> {1, 2, 3, 4, 5, 6}
3.2 update() : 2개 이상의 요소를 추가할때 사용하는 함수로, update() 함수의 경우 Iterable의 형태로만 추가가 가능하기 때문에 숫자형을 여러개 써서 추가하는 것은 불가능하다.
set = {1, 1, 2, 2, 3, 4, 5, 5}
# 이터러블 형태가 아닌 경우
set.update(6,7,8)
set
>>> TypeError: 'int' object is not iterable
# 이터러블 형태로 추가
set.update([6,7,8])
set
>>> {1, 2, 3, 4, 5, 6, 7, 8}
4. 문자열
4.1. (+), (*) 등의 기호를 이용하여 문자열과 문자열을 연결하는 것이 가능하다.
a = ""
for i in range(1,11):
a += str(i)
a
>>> "12345678910"
※. 데이터 타입 정리표
※ 참고 사이트
10+ simple examples to learn python tuple in detail | GoLinuxCloud
Python tuples are collection of comma-separated values. It is identical to a list, except it is immutable. Tuples are useful for storing information that you don’t want to change.
www.golinuxcloud.com
'Programing > Python' 카테고리의 다른 글
[Python] 폴더 및 파일 관리 (0) | 2023.01.25 |
---|---|
[Python] 람다(lambda) 표현식 의 개념 및 사용방법 (1) | 2022.10.13 |
[Python] reverse(),reversed(), sort(), sorted() 함수 비교 및 활용 (0) | 2022.10.09 |