나의 풀이
def solution(s):
s1=list(s)
print(s1)
result=""
idx =0
for i in range (len(s1)):
if s1[i] == ' ':
result+=" "
idx =0
else:
if idx % 2 ==0:
result+=s1[i].upper()
else:
result+=s1[i].lower()
idx+=1
return result
▶ idx 변수를 통해서 인덱스를 별도로 관리하자
▶ idx+=1을 통해서 후위 연산을 만들자
다른 사람의 풀이
def solution(s):
a=[]
s=s.split(" ")
for i in range(len(s)):
for j in range(len(s[i])):
if j%2==0:
a.append(s[i][j].upper())
else:
a.append(s[i][j].lower())
a.append(" ")
print(a)
#['T', 'r', 'Y', ' ', 'H', 'e', 'L', 'l', 'O', ' ', 'W', 'o', 'R', 'l', 'D', ' ']
c="".join(a[:-1])
return c
s="try hello world"
▶ 단어 한 덩어리를 다 돌았을 때 " " 공백 1칸을 추가해 준다.
▶ 단어 한 덩어리씩 전체 단어를 다 순회했을 경우에는 리스트의 맨 마지막에 " "공백 한 칸이 추가 된다.
▶ 그러므로 a의 리스트의 모든 문자를 join함수로 조인하되, 마지막 " " 공백 한 칸을 제거하기 위해
a리스트의 첫번째 요소부터 맨 마지막 요소 직전까지 슬라이싱 한다.
'프로그래머스(파이썬) > LV.1(파이썬)' 카테고리의 다른 글
예산→ 미리 전부 더하고 비교하기 +pop()★ (0) | 2022.12.16 |
---|---|
3진법 뒤집기★★→int('숫자문자열', n진수):n진수를 10진수로 전환 (0) | 2022.12.16 |
같은 숫자는 싫어 → 이전값을 저장하기 위한 임시변수(value)★★+중복제거★★ (0) | 2022.12.15 |
행렬의 덧셈(2차원 배열끼리 덧셈)→ 2차원 배열 선언시 주의★★+zip()★★ (1) | 2022.12.15 |
부족한 금액 계산하기 (0) | 2022.12.15 |