[백준/python]4358번 생태학 - string
python 포맷팅 - 소수점 자릿수 표현
python의 포맷팅 방법에는 3가지가 있다. %, format, f-string 중에서 f-string을 이용하는 방법에 대하여 알아보자.
f-string
- python 3.6부터 사용할 수 있는 문법이다. 문자열 앞에 f를 붙이고 중괄호 안에 변수를 넣으면 된다.
-
을 사용해서 표현할 자릿수를 지정해준다.
a,b= 1,3
print(f'{a}+{b}={a*b}')
print(f'{a}/{b}={a/b:.3f}' # 소수점 3자리까지 표현
4358번 생태학
문제 풀이
-
주어지는 입력의 값의 개수를 모르기 때문에 sys.stdin.readline을 통해 입력값을 받고 입력값이 없다면 루프를 중단하는 방식으로 풀었다.
- python dictionary를 이용해 단어가 이미 주어졌다면 value값에 1을 더해주고 처음 주어지는 단어라면 key를 새로 등록한다.
- dictionary를 정렬하고 포맷팅을 이용해서 출력한다.
코드
import sys
line = sys.stdin.readline
dic={}
count=0
while True:
word = line().rstrip()
if not word:
break
count+=1
if word in dic:
dic[word]+=1
else:
dic[word]=1
for word in dic:
dic[word] = round(dic[word]/count*100 , 4)
sorted_dic = sorted(dic.items())
for info in sorted_dic :
print(f'{info[0]} {info[1]:.4f}')
댓글남기기