명칭 | 뜻 | 표현형 |
---|---|---|
split | 특정 기호를 기준으로 문자열을 잘라주는 기능 | .split('특정 기호') |
replace | 문자열(a)을 다른 문자열(b)로 바꿔주는 기능 | .replace('a','b') |
count | 해당 문자(a) 개수 세기 | .count('a') |
strip | 불필요한 공백 제거 | .strip() |
lstrip | 왼쪽 공백 제거 | .lstrip() |
rstrip | 오른쪽 공백 제거 | .rstrip() |
upper | 대문자 전환 | .upper() |
lower | 소문자 전환 | .lower() |
리스트에 번호와 공백과 함께 저장되어 있는 포켓몬 이름을 오직 포켓몬 이름만 출력되게 정리하기
poke = ['1.이상해씨 ', '2.이상해풀 ', '3.이상해꽃 ', '4.파이리 ', '5.리자드 ']
pokename = []
for i in poke:
pokename.append(i.split('.')[1].strip())
print(pokename)
for
문을 통해 리스트 요소 하나하나를 i
에 받아온다.i.split('.')
: '1.이상해씨 ' -> '1','이상해씨 ' 로 나눌 수 있다.i.split('.')[1]
을 해주면 첫번째 요소인 번호, 두번째 요소인 포켓몬 이름 중에서 포켓몬 이름을 받아 올 수 있다.strip()
: '이상해씨 ' 받아온 이름에서 공백을 없애줘야하기 때문에 필요없는 공백을 없애주기 위해 사용한다.i.split('.').strip()
: 최종으로 이렇게 작성해주면 원하는 부분을 얻어 올 수 있다.나열되어 있는 여러개의 전화번호를 리스트로 나누어 담고 거기서 '02'로 시작하는 전화번호를 찾아서 세면 된다.
# case 1
tel = "051-467-3812,063-415-6555,02-344-2750,010-469-5158,02-675-9945"
tels = tel.split(',')
seoult = []
for i in tels:
if i.split('-')[0] == '02':
seoult.append(i)
print("서울 사는 사람 수 : ", len(seoult))
split('-')[0] == 02
를 통해 서울 전화번호를 seoult
리스트에 추가해주고(len)seoult
: 리스트의 길이를 구해 서울 사는 사람 수를 구할 수 있다.# case 2
지역번호 = []
for i in tels:
지역번호.append(tels.split('-')[0])
print("서울 사는 사람 수 : ", 지역번호.count('02'))
split('-')[0]
로 지역번호만 저장하는 list를 만들어서count('02')
로 서울 지역번호의 개수를 count한다.금액을 입력받고, 그 금액으로 구매 가능한 제품명을 출력하게 한다.
money = int(input("돈을 넣어주세요 : "))
Menu = "딸기 4000원\t파인애플 5000원\t포도 4000원\t사과 2000원\t감자 3000원\n수박 8000원\t감귤 4000원\t한라봉 7000원\t체리 3000원\t자두 2000원\n아메리카노 3000원\t카페라떼 4000원\t카페모카 4500원\t아인슈패너 6000원\n에스프레소 2000원\t카푸치노 3600원\t아이스티 3000원\t레몬에이드 4000원\n초코우유 1500원\t딸기우유 1500원\t바나나우유 1500원\t커피우유 1500원\n두유 2000원\t헤이즐넛 3000원\t오레오초코 4000원\t얼그레이 6000원"
menu = Menu.replace('\n','\t')
menu = menu.split('\t')
for i in menu:
x = i.split(' ')
if money >= int(x[1][:-1]):
print("구매 가능한 과일 : ", x[0])
replace('\n','\t')
로 나눠줄 특정 기호를 통일해준다.split(' ')[1]
로만 하면 '4000'이 아니라 '4000원' 으로 저장되기 때문에x[1][:-1]
문자열 슬라이싱을 활용하여 맨 마지막 문자 전까지 저장하게끔 해준다.int(x[1][:1])
까지 처리한다.