Python 6

[파이썬/python] 요일 찾기, 윤년 구하기 - jupyter notebook

년, 월, 일을 입력 받아서 요일을 구하고 윤년인지 판별한다. 조건 - 서기 1년 1월 1일은 월요일이다. - 요일은 서기 1년 1월 1일부터 입력된 날까지의 날수를 모두 더한 값을 7로 나누어 나머지를 이용하여 구한다. 윤년을 구하는 공식 - 4로 나누어지는 해는 윤년이다. - 100으로 나누어지는 해는 윤년이 아니다. - 400으로 나누어지는 해는 윤년이다. 입력함수, 윤년 판별 함수, 요일을 구하는 함수로 총 3개를 만들었다. 요일을 구하는 함수에서 return을 할 때 파이썬에서는 switch가 없기 때문에 딕셔너리를 사용했다. []안의 수와 일치하는 key의 값을 return 한다. ln[1] %%writefile leapyear.py import datetime def input_date():..

Programing/PYTHON 2020.04.28

[파이썬/python] 데코레이터(dacorator), 시간 계산 타임 체크(Time check) - jupyter notebook

1. 데코레이터(decorator)을 사용하는 간단한 실습이다. __init__을 할 때 문구를 만들어주고 함수의 시작과 끝에 문구를 출력한다. my_function에서 들어온 이름에게 인사를 한다. ln[1] class verbose: def __init__(self, f): print("initializing verbose.") self.func = f def __call__(self,str1): print("begin", self.func.__name__) self.func(str1) print("end",self.func.__name__,"\n") @verbose def my_function(str1): print("hello,",str1, "!") print("program start\n") m..

Programing/PYTHON 2020.04.27

[파이썬/python] 랜덤 숫자 lamda함수, 사칙연산 - jupyter notebook

1. 간단한 lambda 함수 사용 문제이다. 0부터 5까지 랜덤한 숫자를 불러오고 특정 숫자인 2가 나오면 종료한다. random을 사용하려면 import해주어야한다. ln[1] import random #iter(object(=호출가능한객체), sentinel(=반복을끝낼값)) i = iter(lambda : random.randint(0,5), 2) while True: print(next(i), end=' ') cs while문을 사용한 방법이다. 종료할 때 stop iteration이 나온다. ln[1] for i in iter(lambda: random.randint(0,5),2): print(i, end=' ') cs for문을 사용한 방법이다. 깔끔하다. 2. 사칙연산 실습이다. ln[1]..

Programing/PYTHON 2020.04.26

[파이썬/python] 문자의 개수 구하기, 대소문자 변경하기 - jupyter notebook

입력된 문장에 쓰인 문자의 개수를 구한다. 새로운 문자는 딕셔너리에 1로 추가되고 기존에 있는 문자는 +1이 되도록 for문을 사용했다. 대소문자가 따로 입력되지 않도록 lower()을 사용한다. 또한 여백이 들어가지 않도록 isalpha()로 검사해준다. 대문자는 소문자로, 소문자는 대문자로 변환한다. islower()로 소문자인지 판별하고 맞으면 upper()을 해주고 아니면 lower()을 해서 출력한다. 파이썬은 자동 줄바꿈이 되기 때문에 끝에 end=""를 넣어주면 자동줄바꿈이 되지 않는다. ln[1] %%writefile chan.py def chan(): while 1: count_char = {} #숫자 입력 w = input("Input : ") if w == 'STOP': #종료 ret..

Programing/PYTHON 2020.04.25

[파이썬/python] 피보나치 수열 return과 yield - jupyter notebook

1. 피보나치 수열 - return return을 사용하기 때문에 해당하는 숫자 하나만 return 된다. 실행시키는 방법은 두가지가 있는데 두가지를 동시에 사용하기 위해서 __name__을 사용했다. ln[1] %%writefile fibonacci.py def Fibonacci(n): f1, f0 = 0,1 for i in range(n): f1, f0 = f0, f1+f0 return f1 if __name__ == "__main__": n = int(input("input: ")) print(Fibonacci(n)) cs 1-1 %run 사용 ln[2] %run fibonacci.py cs __name__에 걸려서 input을 이용해서 출력할 수 있다. 1-2 import 사용 Fibonacci(..

카테고리 없음 2020.04.24

[파이썬/python] 입력받은 문장 거꾸로출력하기 - 문자별, 문장별 역순

입력받은 문장 거꾸로 출력하기 jupyter notebook을 처음 썼던 과제인데 확실히 어색하다. 파이썬이 더 쉽다고 하지만 아직은 C가 더 익숙한 느낌. 언어보다는 jupyter notebook이 낯설어서 그런 것 같기도 하다. 코드 올리는 것도 다른 것보다 조금 귀찮은 방법을 써야한다. ln[1] %%writefile Inverseln.py text = input("Input: ") t_inversed = '' for char in text: t_inversed = char + t_inversed print(t_inversed) Colored by Color Scripter ln[2] %run Inverseln.py 출력결과 두번째는 문장 단위로 거꾸로 출력하기 근로를 하던 중 연혁을 오름차순에서 ..

Programing/PYTHON 2020.04.22