AI/Python

[프로그래머스 기초] 헷갈리는 개념 정리(문자열, 리스트 : 원본 변경 함수, 새로운 값 return 해주는 함수, 메모리 주소 값 출력, 값 출력)

brave_sol 2024. 6. 16. 21:05
구분 원본 수정 (return 있거나 없음) 원본 유지 (새로운 값 return)
문자열   (1) strip → 새로운 문자열
abc = "123456"
d = abc.strip("6")
print(abc,d) # 123456 12345

(2) split → 새로운 리스트
abc = "123456"
d = abc.split()
print(abc,d) # 123456 ['123456']

(3) upper/lower/swapcase  → 새로운 문자열
abc = "abcDEF"
d = abc.upper()
e = abc.lower()
f = abc.swapcase()
print(abc,d,e,f) # abcDEF ABCDEF abcdef ABCdef

(4) replace → 새로운 문자열
abc = "abcDEF"
d = abc.replace('b','X')
print(abc,d) # abcDEF aXcDEF
리스트 (1) append → return 없음
abc = [1,2,3,4,5]
d = abc.append(6)
print(abc,d) # [1, 2, 3, 4, 5, 6] None

(2) sort → return 없음
abc = [1,5,3,2,4]
d = abc.sort()
print(abc,d) # [1, 2, 3, 4, 5] None

(3) remove → return 없음
abc = [1,2,3,4,5]
d = abc.remove(3) # 3값을 삭제
print(abc,d) # [1, 2, 4, 5] None

(4) pop → 삭제한 값을 return
abc = [1,2,3,4,5]
d = abc.pop(3) # 3번 인덱스의 값 삭제
print(abc,d) # [1, 2, 3, 5] 4
 
공통(iterable)
*문자열포함
  (1) map  → 메모리 주소값(list로 변환필요)
abc = "123456"
d = map(int,abc)
print(abc,d) # 123456 <map object at 0x0000028236BCA530>

(2) 슬라이싱
abc = "abcDEF"
d = abc[:2]
print(abc,d) # abcDEF ab

(3) join 합치기
abc = "abcde"
d = '+'.join(abc)
print(abc,d) # abcde a+b+c+d+e

(4) sorted 정렬 → 새로운 리스트
abc = "dagsdb"
d = sorted(abc)
print(abc,d) # dagsdb ['a', 'b', 'd', 'd', 'g', 's']

 

반응형