7을 구하지 못해서 답안지를 찾아보려고 했다. 이 회사 문제집은 접근 방법이 마음에 들지 않는 경우가 있었다. 그래서 모든 경우를 찾아보기로 했다.
파이썬 f-string과 eval()을 이용하면 계산된 결과를 얻을 수 있다. 0을 나누는 경우에는 zero division error가 생긴다. 그래서 try ~ except로 이용한다.
calc = ['+', '-', '*', '/']
for cal1 in calc:
for cal2 in calc:
for cal3 in calc:
expr = f"(5 {cal1} 5) {cal2} (5 {cal3} 5)"
try:
result = eval(expr)
except ZeroDivisionError:
result = None
if result == 1:
print(expr)
from matplotlib import font_manager
font_dirs = ["/usr/share/fonts"]
font_files = font_manager.findSystemFonts(fontpaths=font_dirs)
for font_file in font_files:
font_manager.fontManager.addfont(font_file)
이렇게 하면 등록된 글꼴을 이용해서 matplotlib에서 사용할 수 있다.
plt.rcParams['font.family'] = 'D2Coding'
파일명과 등록된 글꼴명이 다른 경우가 많다. 그럴 경우에는 다음의 코드를 이용해서 글꼴을 파악한다.
font_list = font_manager.fontManager.ttflist
for font in font_list:
print(f"Path: {font.fname}, Name: {font.name}")