[내일배움캠프] DAY12 - 개인 과제 제출, 파이썬 실력쑥쑦3, 아티클 스터디

채은·2025년 12월 12일

1. 개인 과제
2. 파이썬 실력쑥쑥
3. 아티클 스터디

.
.
.

1. 개인 과제

어제 자기 전에 2단계까진 다 풀어놨음
오늘은 3단계만 풀었음
개인 과제

.

.

2. 파이썬 실력쑥쑥3

  • 느낀점
    혼동되는 개념들에 대해서 자료를 많이 찾아보는 것뿐만 아니라 코드를 입력해서 출력되는 결과물을 통해 비교하며 이해해봐야겠다.
    Pandas, NumPy 사용 전에 리스트에 대한 개념을 좀 더 다지고 예제를 많이 풀어둬야겠다
  • 배운점
    print와 return 개념이 혼동스러웠는데 출력값을 보니 이해하기 쉬웠다.
    if 조건문과 삼항연산자을 비교해볼 수 있었고, 삼항연산자는 아웃풋을 결정짓는다는 면에서 오히려 함수에 가깝다는 것을 알게 되었다.
  • 어려웠던 점
    실습 문제 풀이가 어려웠다. 아직까진 문제를 보고 활용할 문법과 해당 문법의 사용방법이 빠르게 떠오르진 않아, 시간이 꽤 소요된다. 반복해서 여러 예제를 풀어나가면서 개선해나갈 예정이다.
  • 인사이트
    막히는 부분이 있을 때, 한가지 방법을 반복하기 보다 다각도로 접근해보는 것이 훨씬 효율적이다. 같은 자료를 여러번 보기보단, 다른 자료, 다른 방법을 통해 해결책을 찾아봐야겠다.

.

.

3. 아티클 스터디

파이썬 초보자가 저지르는 10가지 실수

몰랐던/헷갈리는 개념 정리

문자열 치환하는 3가지 방법

  • replace
org_string = "Hello World!"
new_string = org_string.replace("Hello", "Hi")
print(new_string)  # 결과 : "Hi World!"

.replace해서 기존내용, 바꿀내용 순서대로 적음

.

  • translate
org_str = "Hello World!"
table = str.maketrans('l', 'A')
new_str = org_str.translate(table)
print(new_str)  # 결과 : "HEllo World!"

이번에 개인과제 풀면서 내가 사용했던 거.
얘는 여러개를 한번에 깔끔하게 바꿀 수 있음.

내가 작성했던 코드

def equipment_code_decoder(code_list):
    converted_code = 0
    for code in code_list:
      a_table = code.maketrans('영일이삼사오육칠팔구', '0123456789')
      converted_code = code.translate(a_table)

여기서 0~9까지 한번에 적고 테이블에 저장해두면 한번에 바뀜
순서는 replace랑 똑같이 기존내용, 바꿀내용
근데, 이걸 replace 해서 바꾸겠다? 그러면 .replace(영,0).replace(일,1).replace(이,2) 이렇게 해서 환연 지현원규 헤어지는 카톡창 길이만큼 길어지는거임~

.

  • 정규 표현식
import re

text = "I like apple and banana."
replaced_text = re.sub(r"apple|banana", "fruit", text)
print(replaced_text)  # 결과 : "I like fruit and fruit."

re.sub()라는 걸 사용함
좀 낯설어서 gpt한테 예시 좀 많이 만들어 달라함

예시 1: 숫자를 전부 #로 치환

text = "user1234_id567"
result = re.sub(r"\d", "#", text)
# 'user####_id###'

예시 2: 여러 개의 공백을 하나의 공백으로

text = "이건    공백이     많아요"
result = re.sub(r"\s+", " ", text)
# '이건 공백이 많아요'

예시 3: 이메일 아이디 마스킹

text = "contact me at abcdef@gmail.com"
result = re.sub(r"(\w{2})\w+(@)", r"\1***\2", text)
# 'contact me at ab***@gmail.com'

여기서 쫌 신기한 거
()랑 \숫자 표현이 좀 신기했음ㅎㅎ

예시 4: 날짜 형식 통일

text = "2024/01/03, 2024-02-10"
result = re.sub(r"(\d{4})[/-](\d{2})[/-](\d{2})", r"\1.\2.\3", text)
# '2024.01.03, 2024.02.10'

예시 5: 특수문자 제거

text = "Hello!! Python@@@###"
result = re.sub(r"[^\w\s]", "", text)
# 'Hello Python'

근데, 개인 과제에서처럼 한번에 여러 단어를, 각각 바꾸고 싶다면 translate이 제일 나음. gpt가 가능은 하다고 코드를 만들어 줬는데 코드블럭이 완전 뚱뚱했음.

.
.
.

오늘의 소감

새롭게 알게된 점 & 어려웠던 점

내일의 목표

profile
내일배움캠프 사전교육 수강중

0개의 댓글