문자열.append()는 쓸 수 없음.
리스트.append()는 가능
문자열은
문자열 += 추가할 str
a[i:j+1][::-1]
- start < end일 때: step은 양수여야 함 (왼쪽 → 오른쪽)
- start > end일 때: step은 음수여야 함 (오른쪽 → 왼쪽)
- 슬라이싱은 항상 start부터 end 전까지입니다
a[i:j+1:-1]로 쓰면?a = ['a', 'b', 'c', 'd', 'e']
a[1:4][::-1] # ✅ ['d', 'c', 'b']
a[1:4:-1] # ❌ [] (결과 없음)
왜냐면 start=1, end=4, step=-1은
왼쪽부터 오른쪽 방향인데 역순(-1) 이라 조건 충돌이 생깁니다.
파이썬은 이런 경우 "읽을 수 있는 방향이 아예 없음"으로 보고 빈 리스트를 반환.
''.join(리스트)리스트를 하나의 문자열로 만들어준다.
join은 문자열 리스트에만 사용
def solution(my_strings, parts): answer = '' for i in range(len(my_strings)): s, e = parts[i] answer += my_strings[i][s:e+1] return answer
my_strings[i][s:e+1]→ 끝 인덱스를 포함하기 위해e+1answer에 차례대로 잘라붙임
if is_suffix in a:a 리스트안에 is_suffix가 있으면 True
str.startswith(prefix)반환값
- 시작하면 True
- 아니면 False
ex) s = "hello" s.startswith("he") # True s.startswith("x") # False(시작 위치 지정) "abcdef".startswith("c", 2) # True
ord() 와 chr()| 함수 | 설명 | 예시 |
|---|---|---|
ord('A') | 문자를 아스키 코드로 | 65 |
chr(65) | 아스키 코드를 문자로 | 'A' |
for i in range(26):
chr(ord('A') + i) # A~Z 생성