<코딩도장 심사문제 다시 풀며 확인한 것>
요점은 파일명의 숫자를 3자리로 만드는 식인데 분명 다 세 자리가 나오는 답이고 문자열 포멧팅인데 왜 정답처리가 안 되는지 모르겠다.
원래 정답
list(map(lambda x: '{0:03d}'.format(int(x.split('.')[0])) +'.'+ x.split('.')[1], files))
내 풀이
print(list(map(lambda x : '%03d' % int(x.split('.')[0]) + '.' + x.split('.')[1] ,files)))
요점은 어떤 문자열 포멧팅을 쓰는가인데.. 일단 두 방법 다 알고 있어야겠다.
def fib(a):
if a<=1:
return a
else:
return fib(a-1) + fib(a-2)
n = int(input())
print(fib(n))
공식에 대한 이해가 되었으니 다음에는 다른 방법으로도 수열을 구하는 법을 연구해봐야겠다.
def get_min_max_score(*args):
return min(args), max(args)
def get_average(**kwargs):
return sum(kwargs.values()) / len(kwargs)
with open('word.txt', 'r') as file:
words = file.readlines()
for i in words:
i = i.strip('\n')
if i == i[::-1]:
print(i)
file = open('words.txt', 'r') # 비교적 단순한 방법이었음. 문장을 뽑아내는 것이 아님.
sentence = file.read()
word = sentence.split()
for i in word:
if 'c' in i:
print(i.strip(',.')) # ,. 삭제하고 프린트해야 함.