프로그래밍
-
Python : 모스코드를 소리로 나타내기프로그래밍/Python 2020. 9. 6. 16:16
번역된 모스부호(모스코드)를 소리로 나타내는 코드이다. 행사를 준비하며 만들었던 코드이지만, 그 행사가 코로나19로 인해 무기한 연기되었다... 역시 이 코드 또한 인터넷에 올라온 자료들이 많지 않기에, 글을 올린다. 본인이 맡은 프로젝트를 빠르고 효율성있게 마무리할 수 있기를 바란다. (아무리 간단한 프로젝트여도 예상시간의 적어도 3배는 해야..) 여담으로, 코드에 나와있는 예제 모스코드는, 2020 수능특강 영어 지문의 일부이다. https://stackoverflow.com/questions/33879523/python-how-can-i-generate-a-wav-file-with-beeps 해당 코드를 참고하였다. 중요주석, docstring은 수정하지 않았다. import math import ..
-
PYTHON(파이썬) 리스트에서 특정 값의 모든 위치 찾기프로그래밍/Python 2020. 8. 26. 06:34
파이썬은 (liist).index(target_data)라는 기능을 통해서, 해당 값이 존재하는 인덱스 값을 찾을 수 있게 해준다. 이는 한가지 단점이 있는데 바로 리스트안의 해당 값이 여러번 존재한다면, 가장 작은 인덱스만을 반환하고 나머지는 알 수 없다는 것이다. 이를 해결해주는 간단한 함수를 작성하여 보았다. 이 함수는 주어진 리스트에서 타겟 값이 존재하는 모든 인덱스를 반환해준다. def find_index(data, target): res = [] lis = data while True: try: res.append(lis.index(target) + (res[-1]+1 if len(res)!=0 else 0)) lis = data[res[-1]+1:] except: break return re..
-
범위탐색 알고리즘(Range Algorithm, 구간탐색 알고리즘)프로그래밍/Python 2020. 8. 25. 06:11
이진탐색 알고리즘(Binary Search Alalgorithm)을 응용하였다. 분명히 필요한 기능인데 불구하고 파이썬에서 지원하지 않는다. 도저히 선형탐색으로는 불가능할 정도의 데이터 양이다. (무려 240해..) 범위탐색 알고리즘에 대해 구글링 해보았으나 존재하지 않아, 직접 만들었고 혹시 프로젝트에 필요한 사람이 있을까하고 블로그에 올린다. 부디 나처럼 몇시간을 허비하지 않고 프로젝트의 핵심에 더 신경쓸 수 있기를 바란다. def binary_range_search(data, slices, cycle = False): """USAGE BASE : data = 구간탐색대상(리스트) 1. cycle=True : slices = [minimum,maximum,range] 2. cycle=False : s..
-
ZEN OF PYTHON프로그래밍/Python 2020. 6. 19. 20:48
우연히 '파이썬의 도'라는 모듈을 찾았다. 파이썬언어에 크게 기여한 Tim Peters가 직접 쓴 것이었다. 기본 모듈로 내장되어있었다. import this 를 실행하면 docstring의 내용이 나오게 된다. The Zen of Python, by Tim Peters Beautiful is better than ugly. Explicit is better than implicit. Simple is better than complex. Complex is better than complicated. Flat is better than nested. Sparse is better than dense. Readability counts. Special cases aren't special enough t..