본문 바로가기

WIL

02/08 WIL - 심화 프로젝트 1주차

주요 공부 내용

Python

카타

<문제 36. 문자열 다루기 기본> : 숫자 여부 판단 매서드 - ISNUMERIC() 매서드, ISDIGIT() 매서드

고수의 답

def solution(s):
    #함수를 완성하세요

    return s.isdigit() and len(s) in [4,6]

 

포인트 : 문자열의 숫자 여부 판단 함수 사용

str.ISNUMERIC(=ISDIGIT()):

  • 문자열에 대해 숫자 여부 판단해줌
  • 문자열이 아니면 에러 발생(따옴표 안의 것만 판단!)

<문제34. 문자열 내림차순으로 배열하기 : SORTED() 매서드, SORT() 매서드, ''.JOIN() 함수>

오답

def solution(s):
    return ''.join(sorted(s, reverse = True))

join 함수

  • 리스트에 있는 각 요소를 합쳐 하나의 문자열로 만들어주는 함수
  • 형태 : '구분자'.join(리스트)   *구분자 : 점, 쉼표 등등

그 외포인트

  • 문자열에 대해 sorted()는 매서드가 아닌 함수임! => SORTED(문자열)
  • *SORT 매서드 : 문자열.SORT()

<문제 32. 내적> : ZIP 함수

def solution(a, b):

    return sum([x*y for x, y in zip(a,b)])

포인트

  1. for문에서 요소 두 개 이상 할당 가능
  2. zip 함수
    • 둘 이상의 배열을 '순서대로' 짝지어줌
    • 배열의 길이가 다를 경우 짧은 쪽 기준으로 맞춰짐

<문제 33. 약수의 개수와 덧셈> : 제곱근의 성질

def solution(left, right):
    answer = 0
    for i in range(left,right+1):
        if int(i**0.5)==i**0.5:
            answer -= i
        else:
            answer += i
    return answer

포인트 정리

  • i**0.5 : i의 제곱근 구하는 식
  • 약수의 성질
    • 제곱근이 정수로 표현 가능 : 약수의 개수 홀수 => i의 제곱근에서 정수만 취한 부분 = i제곱근
    • 제곱근이 정수로 표현 불가능 : 약수의 개수 짝수 => i의 제곱근에서 정수만 취한 부분 != i 제곱근

TMI

  • 본격적으로 프로젝트 진행중! 확실히 지난번에 비해 주제가 어느 정도 미리 정해지고 나니 작업하는게 상당히 수월한 것 같다. 적어도 지금까지는 지난번 기초 프로젝트 때처럼 꼭두새벽까지 작업해야할 일은 없는 것 같고, 전반적인 틀이 잡혀있으니 회의도 비교적 적게 하는 듯? 거기에 더불어 이번에도 팀원들 간 티키타카가 잘 맞는다! 이대로만 잘 진행될 수 있길!
  • 팀 편성이 매번 좋아서 팀워크가 좋고 티키타카가 좋으니 자존감이 계속해서 오르는 기분
  • 프로젝트가 잘 되는 것과는 별개로, 통계든 수학이든 추후에라도 진짜 공부 많이 해야겠다고 틈틈이 느끼는 중. 아니 오늘은 증감률 구하는 방법만 챗gpt에 두 번 물어봤어서...자괴감 느끼고 괴로웠다.
  • ADsP 자격증 시험이 딱 2주 뒤인데 어제 밤까지 전혀 생각하지 않고 있었음ㅋㅋㅋ그거 말고도 통계 공부니 뭐니 이것저것 할 것 많은데 프로젝트가 그나마 좀 널널하니...설 연휴에 조금씩이라도 해야겄다.

 

'WIL' 카테고리의 다른 글

03/15 WIL  (0) 2024.03.15
02/29 WIL  (0) 2024.02.29
WIL 02/02  (0) 2024.02.02
1/26 WIL  (0) 2024.01.26
1/12 WIL  (1) 2024.01.12