본문 바로가기

파이썬35

[알고리즘] 소수 판별 : 에라토스테네스의 체 하나의 수가 소수인지 판별할 때는 간단하게 아래와 같이 짤 수 있다. # n : 소수인지 판단할 숫자 is_prime = 1 for i in range(2, n): if n % i == 0: is_prime = 0 소수를 여러번 판별할 경우 에라토스테네스의 체를 사용하는 것이 효율적이다! 10^12 의 큰 수를 소수 판별시 위의 방법 사용 10^6 이하의 모든 소수를 구할때는 에라토스테네스의 체를 활용!! 에라토스테네스의 체 시간 복잡도 O(nloglogn) 어떤 수가 소수가 아닌지를 판정하는 방식으로 동작 2부터 순서대로 그 수가 소수이면 그의 배수들을 모두 소수가 아님! 예시 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 .. 2023. 5. 9.
[python] 비동기 I/O asyncio 파이썬의 비동기 모듈인 asyncio에 대해 알아보자 일단 동기와 비동기는? 동기(synchronous) 처리는 특정 작업이 끝나면 다음 작업을 처리하는 순차처리 방식 비동기(asynchronous) 처리는 여러 작업을 처리하도록 예약한 뒤 작업이 끝나면 결과를 받는 방식 asyncio(Asynchronous I/O)란? 비동기 프로그래밍을 위한 모듈이며, CPU 작업과 I/O를 병렬로 처리하게 해준다 네이티브 코루틴 만들기 import asyncio async def 함수이름(): 코드 * 네이티브 코루틴 : async def로 만든 코루틴 * 코루틴 : async를 적용한 비동기 함수 이벤트 루프 = asyncio.get_event_loop() 이벤트 루프.run_until_complete(코루틴 객.. 2023. 5. 8.
[python] map 함수 사용법 한 줄에 띄어쓰기로 구분된 문자열이나 숫자를 받을 때 map함수를 사용하는데, map함수에 대해 알아보자 map(Function, iterable Data) 역할 : 반복 가능한 자료형의 모든 요소에 첫번째 매개 변수로 준 함수를 적용한 결과를 반환한 map객체 반환 첫번째 매개 변수 : 함수 두번째 매개 변수 : 반복 가능한 자료형 def add(n): return n + 1 arr = [1, 2, 3] add_arr = map(add, arr) print(add_arr)# map 객체가 출력됨 # map 객체이기 때문에 list로 반환하여 출력 print(list(add_arr))# [2, 3, 4] map함수를 이용한 여러개의 정수 한번에 입력 받기 # map 함수 이용하지 않은 경우 n_list .. 2023. 5. 7.
[python] 문자열 변경 python의 경우 슬라이싱을 통해 문자열을 일무반 수정하는 것은 불가능하다. 그렇기 때문에 문자열을 수정하는 것이 아니라, 새로운 결과 변수를 선언하여 수정해야한다. str = "abcd" str[1] = 'a'# TypeError: 'str' object does not support item assignment replace 함수를 사용할 경우 str = "abcd" print(str.replace('b', 'a')) # aacd 2023. 5. 7.