상세 컨텐츠

본문 제목

[파이썬] 리스트, 튜플, 딕셔너리

파이썬 수업 내용 정리

by 리ㄹl 2023. 3. 16. 17:23

본문


리스트

리스트
--> 자료 타입 상관없이 값을 담을 수 있다.

 ex) list1 = [3, 5, "밥"] 

 

* 요소 추가 
넣을 공간.append(넣을값)

 

* 인덱스 위치 찾는 방법

#index 위치 찾기
#리스트명.index(데이터)
flowers = ["목련", "벚꽃", "장미", "백일홍"]

flowers.insert(flowers.index("벚꽃"), "안개꽃")
print(flowers)

--> 결과
['목련', '안개꽃', '벚꽃', '장미', '백일홍']

 

 

리스트.pop(인덱스)
--> 특정 요소를 삭제 (삭제 할 정보를 사용)

 

* 리스트 복사하기

#리스트 복사하기=> 리스트명.copy()
flowers = ["목련", "벚꽃", "장미", "백일홍"]
flowers1 = flowers.copy()
flowers.clear()
print(flowers1)
#flowers1=flowers도 가능하긴 한데 flowers.clear()하면 flowers1의 내부값도 다 지워짐

 

* 리스트 정렬

# 리스트명.sort() -> 오름차순 정렬(작은 것부터) -> 오래된 날짜순
data = [12, 8, 15, 31, -2]
print(data)
data.sort()
print(data)

 

# 내림차순 (최신 날짜순)
# 리스트명.sort(reverse = True)
data.sort(reverse = True)
print(data)

 

* 문자열 찾기

# 1) 문자열 찾기 find()
# 문자열.find(찾을 문자) --> 찾은 문자의 위치를 알려줌
string1 = "Python is fun!"
print(string1)
print(string1.find("fun"))
print(string1.find("fum")) #없는값 입력 결과: -1나옴

 

* 문자열 치환

# 2) 문자열 치환 replace(기존 데이터, 치환 할 데이터)
#하이픈 제거한 핸드폰 번호 출력
phone = "010-1234-5678"
print(phone)

phone1 = phone.replace("-", "")
print(phone1)​

 

* 문자열 분리하기

# 3) 문자열 분리하기 split(특정문자) -> 리스트로 반환
hello = "have a nice day"
print(hello)

list1 = hello.split(" ")
print(list1)
print(type(list1))

for l in list1:
    print(l)

 

* 리스트를 문자열로 변환

# 4) 리스트를 문자열로 변환 -> 문자열.join(리스트)

text = ""
for l in list1:
    text = text + l

print(text)
# 같은 결과 join으로 연결
text=" ".join(list1)
print(text)

 

 

 


튜플 & 딕셔너리

튜플: 리스트와 달리 수정이 안된다 (아이디나 패스워드 저장시 사용)
--> 병합은 가능 

 

[] 리스트
() 튜플
{} , dict() 딕셔너리

 

딕셔너리 :(콜론)으로 매칭

ex) "name": "황예린"

 

 

* 딕셔너리 사용법

#딕셔너리 생성
member = {"name": "황예린", "age" : 22, "email" : "yerin@hanmail.net"}
print(member)

score = dict([("국어", 80), ("영어", 90), ("수학", 100)])
print(score)

#딕셔너리 요소 추출
#딕셔너리명[key] --> value 요소가 추출됨

print(member["name"])
print(member["email"])
print(score["국어"])

#딕셔너리 요소 추가
#score 딕셔너리에 음악점수 100점 추가
#딕셔너리명[key] = 값  --> 키가 없으면 새로 등록됨, 키가 이미 있으면 수정됨

score["음악"] = 100
score["국어"] = 100

print(score)

 

[코딩연습 6-2]  딕셔너리를 이용하여 성적의 합계와 평균을 구하는 두 가지 방법( for 사용 & 미사용)

"""
딕셔너리를 이용하여 다섯 명 학생들에 대한 성적의 합계와 평균을 구하는 프로그램
"""

scores = {"김채린" : 85, "박수정" : 98, "함소희" : 94, "안예린" : 90, "연수진" : 93}

sm = 0

for key in scores:
    sm = sm + scores[key]

    print("%s: %d" % (key, scores[key]))

avg = sm / len(scores)

print("합계: %d, 평균: %.2f" % (sm, avg))

# for문을 사용하지 않고 딕셔너리의 총합과 평균 구하기
vals = scores.values() # 값만 가져오는 함수
print(vals)

sm= sum(scores.values())
avg = sm / len(scores)
print("합계: %d, 평균: %.2f" % (sm, avg))

 

'파이썬 수업 내용 정리' 카테고리의 다른 글

[파이썬] 조건문과 반복문  (0) 2023.03.16
[파이썬] 기초  (0) 2023.03.14

관련글 더보기