728x90
반응형

프로그래밍/파이썬 28

파이썬 - 날짜 계산(기념일, 기준일 계산)

기준일과 특정일을 입력 받아서 두 날짜 사이의 차이를 계산하는 코드를 작성해보면 아래와 같다. from datetime import datetime # 기준일 입력 받기 base_date_str = input("기준일을 YYYY-MM-DD 형식으로 입력하세요: ") base_date = datetime.strptime(base_date_str, '%Y-%m-%d') # 특정일 입력 받기 specific_date_str = input("특정일을 YYYY-MM-DD 형식으로 입력하세요: ") specific_date = datetime.strptime(specific_date_str, '%Y-%m-%d') # 두 날짜의 차이 계산 delta = specific_date - base_date # 기준일을 1일..

파이썬 - 양력 음력 변환 (입력값 이용)

Korean Lunar Calendar를 이용해서 양력에서 음력, 음력에서 양력으로 원하는 변환을 선택하고 날짜를 입력 받아서 선택한 변환을 적용하여 음력간지(연주, 월주, 일주)와 같이 변환 결과를 알려주는 코드를 작성해 보겠다. 이번에도 동일하게 Korean Lunar Calendar를 사용하므로 계산은 '한국천문연구원' 기준이며, 네트워크 연결이 불필요하다. 변환가능한 날짜의 범위 역시 기존과 동일하게 아래와 같다. 음력 변환 : 1000년 01월 01일 부터 2050년 11월 18일까지 지원 양력 변환 : 1000년 02월 13일 부터 2050년 12월 31일까지 지원 from korean_lunar_calendar import KoreanLunarCalendar calendar = KoreanL..

파이썬 - 양력 음력 변환

Korean Lunar Calendar를 이용해서 양력에서 음력, 음력에서 양력으로 날짜를 변경해주고 음력간지(연주, 월주, 일주)를 알려주는 코드를 작성해 보겠다. Korean Lunar Calendar의 계산은 '한국천문연구원' 기준이며, 네트워크 연결이 불필요하다. 변환가능한 날짜의 범위는 아래와 같다. 음력 변환 : 1000년 01월 01일 부터 2050년 11월 18일까지 지원 양력 변환 : 1000년 02월 13일 부터 2050년 12월 31일까지 지원 from korean_lunar_calendar import KoreanLunarCalendar calendar = KoreanLunarCalendar() # params : year(년), month(월), day(일) calendar.set..

파이썬 - 블랙잭 게임

블랙잭 게임의 코드 작성하기전에 블랙잭의 룰을 먼저 알아보겠다. 간단한 텍스트로 진행되고, 컴퓨터와 1:1 플레이를 할 수 있는 블랙잭 게임이므로 아래의 세가지 룰 정도만 알아두고 적용하면 될 것 같다. 1. 힛(Hit) 처음 2장의 상태에서 카드를 더 뽑는 것을 Hit이라고 한다. 제스처로는 검지 손가락으로 테이블을 톡 내려주면 된다. 21이 되지 않는 한 얼마든지 원하는 만큼 카드를 뽑을 수 있다. 반면, 카드의 수 합산이 21이 넘으면 그 즉시 지게 되므로 뽑아서 높은 숫자를 만들되 얼마나 욕심을 부리지 않고 적당한 때에 멈추느냐가 블랙잭의 실력. 이 경우는 자신만이 아니라 딜러에게도 해당되어, 자신의 숫자가 낮더라도 딜러는 17 이상이 되기 전까지는 무조건 카드를 더 받아야 하기 때문에(일명 De..

파이썬 - 슬롯머신 게임

100개의 토큰을 가지고 결과에 따라서 토큰을 획득하거나 잃는 규칙으로 간단한 슬롯머신 게임의 코드를 파이썬으로 구현하면 아래와 같다. import random # 슬롯머신 결과 생성 def spin(): return random.choice(["Cherry", "Bell", "Lemon", "Orange", "Star", "Skull"]) # 게임 진행 def play(): tokens = 100 # 초기 토큰 개수 while True: print() print(f"You have {tokens} tokens.") if tokens

파이썬 - 야구게임

상대방이 생각한 3자리 숫자를 맞추는 야구게임의 규칙 게임 참가자는 상대방이 생각한 3자리 숫자를 맞추기 위해 3자리 숫자를 말한다. 상대방은 말한 숫자와 비교하여 세 자리 중에 하나의 숫자가 같고 자리도 같은 경우 "스트라이크(S)"로, 하나의 숫자는 맞지만 자리가 다른 경우 "볼(B)"로 알려준다. 맞는 숫자가 없을 경우 "아웃(O)"으로 알려준다. 게임 참가자는 상대방이 알려준 스트라이크와 볼의 수를 바탕으로 다시 1번 과정을 반복한다. 게임 참가자는 상대방이 생각한 숫자를 모두 맞출 때까지 1~3번의 과정을 반복한다. 예를 들어, 상대방이 숫자 123을 생각한 경우, 게임 참가자가 456을 말하면, 상대방은 "스트라이크: 0, 볼: 0"이라고 알려준다. 이어서 게임 참가자가 789를 말하면, 상대..

파이썬 - 음원 MR / Vocal 분리 Spleeter

Spleeter 설치 conda install -c conda-forge ffmpeg libsndfile pip install spleeter MR / Vocal 분리 명령어 spleeter separate -p spleeter:2stems -o output audio_example.mp3 Vocals (singing voice) / accompaniment separation (2 stems) Vocals / drums / bass / other separation (4 stems) Vocals / drums / bass / piano / other separation (5 stems) - 원본 audio파일 : audio_example.mp3 - 원본 audio파일과 동일한 폴더에서 명령어 실행 - ..

파이썬 - for 반복문 중복2

'New File' 아이콘을 클릭하고 파일 이름을 'for3.py'로 생성한 후, 아래의 코드를 입력한다. aa = ['A', 'B', 'C'] # 리스트 'aa'에 반복할 대상(요소) 저장 bb = ['1', '2', '3'] # 리스트 'bb'에 반복할 대상(요소) 저장 for x in aa: # 변수 'x'에 리스트'aa'의 첫번째 요소 부터 마지막 요소까지 차례로 대입 for y in bb: # 변수 'y'에 리스트'bb'의 첫번째 요소 부터 마지막 요소까지 차례로 대입 print(x) # 변수 'x' 출력 print(y) # 변수 'y' 출력 for xx in aa: # 변수 'xx'에 리스트'aa'의 첫번째 요소 부터 마지막 요소까지 차례로 대입 print(x) # 변수 'x' 출력 코드 작성..

파이썬 - for 반복문 중복1

'New File' 아이콘을 클릭하고 파일 이름을 'for2.py'로 생성한 후, 아래의 코드를 입력한다. aa = ['A', 'B', 'C'] # 리스트 'aa'에 반복할 대상(요소) 저장 bb = ['1', '2', '3'] # 리스트 'bb'에 반복할 대상(요소) 저장 for x in aa: # 변수 'x'에 리스트 'aa'의 첫번째 요소 부터 마지막 요소까지 차례로 대입 for y in bb: # 변수 'y'에 리스트 'bb'의 첫번째 요소 부터 마지막 요소까지 차례로 대입 print(x) # 변수 'x' 출력 print(y) # 변수 'y' 출력 코드 작성이 완료되면, 'Run' 탭에서 'Run and Debug'를 클릭하거나, Powershell에서 'python for2.py'를 입력해서 작..

파이썬 - for 반복문

'New File' 아이콘을 클릭하고 파일 이름을 'for.py'로 생성한 후, 아래의 코드를 입력한다. aa = ['A', 'B', 'C'] # 리스트 'aa'에 반복할 대상(요소) 저장 for x in aa: # 변수 'x'에 리스트 'aa'의 첫번째 요소 부터 마지막 요소까지 차례로 대입 print(x) # 변수 'x' 출력 코드 작성이 완료되면, 'Run' 탭에서 'Run and Debug'를 클릭하거나, Powershell에서 'python for.py'를 입력해서 작성된 'for.py'의 코드를 실행시키면, 리스트 'aa'의 요소인 'A', 'B', 'C'가 순서대로 출력되는 것을 확인할 수 있다.

728x90
반응형