[점프 투 파이썬] - 파이썬 초보 탈출 (16 ~20)
·
공부/파이썬
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 = '.... . ... .-.. . . .--. ... . .- .-. .-.. ..
[점프 투 파이썬] - 파이썬 초보 탈출 (11 ~ 15)
·
공부/파이썬
Q11. 나의 코드 : import sys 정답 : 1. sys 모듈 import sys sys.path.append("c:/doit") import mymod 2. PYTHONPATH 환경 변수 사용하기 >set PYTHONPATH=c:\doit >python >>>import mymod 3. 현재 디렉터리 사용하기 >cd c:\doit >python >>>import mymod Q12. 나의 풀이 : 7이 출력될 것이다. [1, 2, 3][3]으로 인해 IndexError가 일어나 +3이 되고, finallu로 +4가 되어 7이 된다. 정답 : result의 초깃값은 0이다. try문 안의 [1, 2, 3,][3] 이라는 문장 수행 시 IndexError가 발생하여 except IndexError 구..
[점프 투 파이썬] - 7장 정규 표현식 살펴보기
·
공부/파이썬
정규 표현식(Regular Expressions) : 복잡한 문자열을 처리할 때 사용하는 기법. 파이썬 포함 문자열을 처리하는 모든 곳에서 사용 (파이썬만의 고유 문법이 아님). 간단히 '정규식'이라고도 부름. 정규 표현식은 왜 필요한가? 다음과 같은 문제 가정 주민등록번호를 포함하고 있는 텍스트가 있다. 이 텍스트에 포함된 모든 주민등록번호의 뒷자리를 * 문자로 변경해 보자. 정규식을 모를 경우 : 전체 텍스트를 공백 문자로 나눈다(split). 나뉜 단어가 주민등록번호 형식인지 조사한다. 단어가 주민등록번호 형식이라면 뒷자리를 *로 변환한다. 나뉜 단어를 다시 조립한다. data = """ park 800905-1049118 kim 700905-1059119 """ result = [] for lin..
[점프 투 파이썬] - 6장 하위 디렉터리 검색하기
·
공부/파이썬
특정 디렉터리부터 그 하우 ㅣ모든 파일 중 파이썬(*.py)만 출력해 주는 프로그램 1. 코드 작성 def search(dirname): print(dirname) search("C:/") 2. 디텍터리에 있는 파일 검색할 수 있도록 소스 변경 import os def search(dirname): filenames = os.listdir(dirname) for filename in filenames: full_filename = os.path.join(dirname, filename) print(full_filename) search("C:/") 3. 확장자가 .py인 파일만 출력하도록 코드 변경 import os def search(dirname): filenames = os.listdir(dirna..
[점프 투 파이썬] - 6장 탭을 4개의 공백으로 바꾸기
·
공부/파이썬
필요한 기능은? 문서 파일 읽어 들이기, 문자열 변경하기 입력받는 값은? 탭을 포함한 문서 파일 출력하는 값은? 탭이 공백으로 수정된 문서 파일 1. 파일 작성 import sys src = sys.argv[1] dst = sys.argv[2] print(src) print(dst) 2. 정상적으로 출력되는지 확인 https://replit.com 에서 실행했다. ~/chapt6$ python ch06-5.py a.txt b.txt a.txt b.txt 3. 원본 파일 a.txt 작성 a.txt Lifeistooshort Youneedpython 4. 탭을 공백 4개로 변환할 수 있도록 코드 변경 import sys src = sys.argv[1] dst = sys.argv[2] print(src) pr..
[점프 투 파이썬] - 6장 간단한 메모장 만들기
·
공부/파이썬
필요한 기능은? 메모 추가하기, 메모 조회하기 입력받는 값은? 메모 내용, 프로그램 실행 옵션 출력하는 값은? memo.txt 1. 입력으로 받은 옵션과 메모를 출력하는 코드 작성 import sys option = sys.argv[1] memo = sys.argv[2] print(option) print(memo) 2. 명령을 수행 오늘은 https://replit.com 에서 실행했다. ~/chapt6$ python ch06-4.py -a "Life is too short" -a Life is too short 3. 입력으로 받은 메모를 파일에 쓰도록 코드 변경 import sys option = sys.argv[1] if option == '-a': memo = sys.argv[2] f = open..
[점프 투 파이썬] - 6장 게시판 페이징하기
·
공부/파이썬
함수 이름은? getTotalPage 입력 받는 값은? 게시물의 총 건수(m), 한 페이지에 보여 줄 게시물 수(n) 출력하는 값은? 총 페이지 수 1. 총 페이지 수를 구하는 방법 총 페이지 수 = (총 건수 / 한 페이지당 보여 줄 건수) + 1 2. 공식 제대로 적용되는 지 확인 def getTotalPage(m, n): return m // n + 1 print(getTotalPage(5, 10)) print(getTotalPage(15, 10)) print(getTotalPage(25, 10)) print(getTotalPage(30, 10)) 마지막 출력이 3이지만 4가 출력되는 문제가 발생 3. 알맞은 코드로 변경 def getTotalPage(m, n): if m % n == 0: retu..
[점프 투 파이썬] - 6장 3과 5의 배수 합하기
·
공부/파이썬
입력받는 값은? 1부터 999까지(1000 미만의 자연수) 출력하는 값은? 3의 배수와 5의 배수의 총합 생각해 볼 것은? 하나. 3의 배수와 5의 배수는 어떻게 찾지? 둘. 3의 배수와 5의 배수가 겹칠 때는 어떻게 하지? 1. 1000 미만의 자연수 어떻게 구할지 생각 1.1 while문 사용 n = 1 while n < 1000: print(n) n += 1 1.2 ramge 함수 사용 for n in range(1, 1000): print(n) 2. 3과 5의 배수 구하는 법 %연산자 사용 for n in range(1, 1000): if n % 3 == 0: print(n) 3. 최종 result = 0 for n in range(1, 1000): if n % 3 == 0 or n % 5 == ..