파이썬 독학기 [Broken Reports] - Empire of Code
IT 어떻게든 혼자 해결해보자/IT 파이썬 독학 입문기2018. 4. 10. 21:47
import string
import re
def golf(broken_report):
br = broken_report.split(",")
report = []
for i in br:
x = 0
for x in range(len(i)-1):
if re.findall('[A-Z]+',i[x]):
if re.findall('[1-9]+',i[x+1]):
report.append(i[x]+i[x+1])
m = []
for x in string.ascii_uppercase:
for y in range(1,10):
m.append("%s%d" % (x, y))
c = 0
for j in report:
c += (m.index(j)+1)
return c
짧게 하는게 목표인데 정규표현식 사용하는 건 맞는거 같은데 수치 구하는 방식이 잘못되었나봐요.
100자 이하로 작성하는게 목표인데.. 역시
https://gist.github.com/a1ip/의 힘들 빌려야 하겠죠? ㅋㅋ
import re
golf=lambda r:sum([ord(a)*9-585+int(b) for a,b in re.findall('[A-Z][1-9]',r)])
우워아.. 너무한 거 아닌가ㅋㅋㅋㅋ
lambda함수(간단한 함수 정의 def랑 비슷함)에 ord(ascii구하는 내장함수), 리스트 컴프리헨션이군요.
이정도 함수를 쉽게 써낼려면 고민을 많이 해봐야겠어요.. ㄷㄷㄷ
'IT 어떻게든 혼자 해결해보자 > IT 파이썬 독학 입문기' 카테고리의 다른 글
"Python Console" 파이썬으로 배우는 알고리즘 트레이딩 스터디 자료 (0) | 2018.05.07 |
---|---|
"Series 기초" 파이썬으로 배우는 알고리즘 트레이딩 스터디 자료 (0) | 2018.05.07 |
파이썬 독학기 [Bird Language] - Empire of Code (0) | 2018.04.10 |
파이썬 독학기 [Pearl Box] - Empire of Code (0) | 2018.04.05 |
패키지 Strat! 도트를 이용한 모듈의 관리체계 (0) | 2018.03.07 |
댓글