[점프 투 파이썬] - 파이썬 초보 탈출 (16 ~20)

2023. 8. 1. 21:06·공부/파이썬

Q16.

나의 코드 : 

alp = {
    '.-': 'A',
    '-...': 'B',
    '-.-.': 'C',
    '-..': 'D',
    '.': 'E',
    '..-.': 'F',
    '--.': 'G',
    '....': 'H',
    '..': 'I',
    '---': 'J',
    '-.-': 'K',
    '.-..': 'L',
    '--': 'M',
    '-.': 'N',
    '---': 'O',
    '.--.': 'P',
    '--.-': 'Q',
    '.-.': 'R',
    '...': 'S',
    '-': 'T',
    '..-': 'U',
    '...-': 'V',
    '.--': 'W',
    '-..-': 'X',
    '-.--': 'Y',
    '--..': 'Z'
}

total = []

arr = '.... .  ... .-.. . . .--. ...  . .- .-. .-.. -.--'

for trans in arr.split('  '):
    for alpa in trans.split(' '):
        total.append(alp[alpa])
    total.append(' ')

print("".join(total))

계속 시도해봐도 잘 안풀려서 정답을 본 후 다시 풀어보았다.

 

정답 : 

dic = {
    '.-': 'A', '-...': 'B', '-.-.': 'C', '-..': 'D', '.': 'E', '..-.': 'F',
    '--.': 'G', '....': 'H', '..': 'I', '---': 'J', '-.-': 'K', '.-..': 'L',
    '--': 'M', '-.': 'N', '---': 'O', '.--.': 'P', '--.-': 'Q', '.-.': 'R',
    '...': 'S', '-': 'T', '..-': 'U', '...-': 'V', '.--': 'W', '-..-': 'X',
    '-.--': 'Y', '--..': 'Z'
}

def morse(src):
    result = []
    for word in src.split("  "):
        for char in word.split(" "):
            result.append(dic[char])
        result.append(" ")
    return "".join(result)

print(morse('.... .  ... .-.. . . .--. ...  . .- .-. .-.. -.--'))

 

 


 

Q17.

나의 정답 : 

a[.]{3,}b

2번 a....b

 

 

정답 : 

import re

p = re.compile("a[.]{3,}b")

print(p.match("acccb"))		# None
print(p.match("a....b"))	# 매치 객체 출력
print(p.match("aaab"))		# None
print(p.match("a.cccb"))	# None

 

 


 

Q18.

나의 정답 : 

m.start()은 2, m,end()는 8이니 결과는 10

 

 

정답 : 

import re

p = re.compile('[a-z]+')
m = p.search("5 python")
print(m.start() + m.end())		## 10 출력

 

 


 

Q19.

나의 코드 : 

import re

phone = """
park 010-9999-9988
kim 010-9909-7789
lee 010-8789-7768
"""

change = re.compile("(\d{3}[-]\d{4})[-]\d{4}")
result = change.sub("\g<1>-####", phone)

print(result)

계속 시도해봐도 잘 안풀려서 정답을 본 후 다시 풀어보았다.

 

정답 : 

import re

s = """
park 010-9999-9988
kim 010-9909-7789
lee 010-8789-7768
"""

pat = re.compile("(\d{3}[-]\d{4})[-]\d{4}")
result = pat.sub("\g<1>-####", s)

print(result)

 

 


 

Q20.

나의 코드 : 

import re

num = re.compile(".*[@].*[.](?=com$|net$).*$")

print(num.match("naver@naver.com"))
print(num.match("daum@daum.net"))
print(num.match("temp@temp.t"))

계속 시도해봐도 잘 안풀려서 정답을 본 후 다시 풀어보았다.

 

정답 : 

import re

num = re.compile(".*[@].*[.](?=com$|net$).*$")

print(num.match("pahkey@gmail.com"))
print(num.match("dkin@daum.net"))
print(num.match("lee@myhome.co.kr"))

 

'공부 > 파이썬' 카테고리의 다른 글

[파이참/Pycharm] parameters/argument(args) 입력받는 방법  (0) 2024.11.04
[점프 투 파이썬] - 파이썬 초보 탈출 (11 ~ 15)  (0) 2023.07.16
[점프 투 파이썬] - 파이썬 초보 탈출 (6 ~ 10)  (0) 2023.07.16
[점프 투 파이썬] - 파이썬 초보 탈출 (1 ~ 5)  (0) 2023.07.14
[점프 투 파이썬] - 7장 정규 표현식 살펴보기  (0) 2023.07.13
'공부/파이썬' 카테고리의 다른 글
  • [파이참/Pycharm] parameters/argument(args) 입력받는 방법
  • [점프 투 파이썬] - 파이썬 초보 탈출 (11 ~ 15)
  • [점프 투 파이썬] - 파이썬 초보 탈출 (6 ~ 10)
  • [점프 투 파이썬] - 파이썬 초보 탈출 (1 ~ 5)
월월
월월
  • 월월
    서벅돌의 성장일기
    월월
  • 전체
    오늘
    어제
    • 분류 전체보기 (121)
      • TIL (2)
      • Server (29)
        • spring (8)
        • node.js (16)
        • 기타 (5)
      • App&Web (17)
        • Web (1)
        • Android (16)
        • iOS (0)
      • 공부 (59)
        • 깃&깃허브 (3)
        • 파이썬 (17)
        • 유니티 (4)
        • 자료구조 | 알고리즘 (15)
        • 자바 (3)
        • 운영체제 (8)
        • AI와 데이터 (9)
      • 대외활동 (12)
        • NPC 동아리 (1)
        • UMC 동아리 (11)
      • 대학교 (1)
        • 교직 (1)
      • 기타 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • 글 관리
  • 링크

  • 공지사항

    • Notice
  • 인기 글

  • 태그

    자바
    루아
    Lua
    Python
    C
    코틀린
    안드로이드
    java
    Unity
    파이썬
    Android
    kotlin
    mysql
    유니티
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
월월
[점프 투 파이썬] - 파이썬 초보 탈출 (16 ~20)
상단으로

티스토리툴바