Wisdom’s Cloud
[PYTHON] 13. 파이썬으로 간단한 프로그램 만들기 본문
[실습 1] 구구단 만들기
함수의 이름은? GuGu로 짓자
입력받는 값은? 2
출력하는 값은? 2단(2, 4, 6, 8, ..., 18)
결과는 어떤 형태로 저장하지? 연속된 자료형이니까 리스트!
>>> def GuGu(n):
... result = []
... i = 1
... while i < 10:
... result.append(n * i)
... i = i + 1
... return result
...
>>> print(GuGu(2))
[2, 4, 6, 8, 10, 12, 14, 16, 18]
[실습 2] 3과 5의 배수 합하기
입력받는 값은? 1부터 999까지(1000 미만의 자연수)
출력하는 값은? 3의 배수와 5의 배수의 총합
생각해 볼 것은? 하나. 3의 배수와 5의 배수는 어떻게 찾지?
둘. 3의 배수와 5의 배수가 겹칠 때는 어떻게 하지?
>>> result = 0
>>> for n in range(1, 1000):
... if n % 3 == 0 or n % 5 == 0:
... result += n
...
>>> print(result)
233168
[실습 3] 게시판 페이징하기
함수의 이름은? getTotalPage
입력받는 값은? 게시물의 총 건수(m), 한 페이지에 보여 줄 게시물 수(n)
출력하는 값은? 총 페이지 수
>>> def getTotalPage(m, n):
... if m % n == 0:
... return m // n
... else:
... return m // n + 1
...
>>> print(getTotalPage(5, 10))
1
>>> print(getTotalPage(15, 10))
2
>>> print(getTotalPage(25, 10))
3
>>> print(getTotalPage(30, 10))
3
[실습 4] 간단한 메모장 만들기
필요한 기능은? 메모 추가하기, 메모 조회하기
입력받는 값은? 메모 내용, 프로그램 실행 옵션
출력하는 값은? memo.txt
# C:/doit/memo.py
import sys
option = sys.argv[1]
if option == '-a':
memo = sys.argv[2]
f = open('memo.txt', 'a')
f.write(memo)
f.write('\n')
f.close()
elif option == '-v':
f = open('memo.txt')
memo = f.read()
f.close()
print(memo)
[실습 5] 탭을 4개의 공백으로 바꾸기
필요한 기능은? 문서 파일 읽어 들이기, 문자열 변경하기
입력받는 값은? 탭을 포함한 문서 파일
출력하는 값은? 탭이 공백으로 수정된 문서 파일
# C:/doit/tabto4.py
import sys
src = sys.argv[1]
dst = sys.argv[2]
f = open(src)
tab_content = f.read()
f.close()
space_content = tab_content.replace("\t", " "*4)
f = open(dst, 'w')
f.write(space_content)
f.close()
[실습 6] 하위 디렉터리 검색하기
# 특정 디렉터리부터 시작해서 그 하위 모든 파일 중 파이썬 파일(*.py)만 출력해 주는 프로그램
# C:/doit/sub_dir_search.py
import os
def search(dirname):
try:
filenames = os.listdir(dirname)
for filename in filenames:
full_filename = os.path.join(dirname, filename)
if os.path.isdir(full_filename):
search(full_filename)
else:
ext = os.path.splitext(full_filename)[-1]
if ext == '.py':
print(full_filename)
except PermissionError:
pass
search("C:/")
'PYTHON' 카테고리의 다른 글
[PYTHON] 15. 파이썬 Final 20제 (2) | 2021.03.03 |
---|---|
[PYTHON] 14. 정규 표현식 (0) | 2021.03.03 |
[PYTHON] 12. 외장 함수 (0) | 2021.02.25 |
[PYTHON] 11. 내장 함수 (0) | 2021.02.25 |
[PYTHON] 10. 예외 처리 (0) | 2021.02.24 |