본문 바로가기

Python/개념32

파이썬 비동기 1. 동기(Synchronous)- 작업이 순차적으로 실행되는 것 - 하나의 작업이 끝나기 전에는 다음 작업을 시작하지 않음 동기 원리             def func1():              print('1')              print('2')              print('3')          def main():              func1()           main()     1 2 3  시간차를 두었을 때            # main 함수는 smile 함수가 종료될 때까지 기다림        # smile 함수가 종료되기 전에 main 함수에서 더 처리해야 할 일이 있다면? --> 비동기        import time          def smile(.. 2024. 6. 3.
데이터베이스와 MongoDB 연결 1. 데이터베이스와 MongoDB 연결   * MongoDB 새로운 Project 만들기더보기        설치하기             #MongoDB와 연결하기 위한 드라이버 모듈을 설치(설치 후 "세션 다시 시작 및 모두 실행")          !python -m pip install "pymongo[srv]"==3.11  런타임 다시 실행  import            from pymongo import MongoClient    MongoDB와 연결하기             url = 'mongodb+srv://leesarah721:9mTiuY6G1vsxBg4A@cluster0.s6fyzfr.mongodb.net/?retryWrites=true&w=majority&appName=Cluste.. 2024. 6. 3.
Day 11. 재귀호출 1. 재귀호출(recursive call) - 함수 안에서 동일한 함수를 호출하는 형태 - 여러 알고리즘, 고급 정렬 알고리즘 작성시 사용됨 재귀 호출(recursion)은 함수가 자기 자신을 다시 호출하는 기법을 말합니다. 재귀 호출을 사용하면 복잡한 문제를 간단하고 우아하게 풀 수 있지만, 잘못 사용하면 프로그램의 성능에 문제가 발생할 수 있습니다. 무한 재귀: 재귀 함수의 기본 케이스가 없거나 잘못되면 함수는 무한히 자신을 호출하게 됩니다. 이렇게 되면 프로그램은 결국 스택 오버플로우 에러를 발생시키게 됩니다. 성능: 재귀 호출은 간단하고 우아하게 보일 수 있지만, 반복문을 사용한 코드보다 더 많은 메모리와 시간을 소모할 수 있습니다. 특히 파이썬에서는 재귀 호출에 제한이 있으므로 (기본적으로 10.. 2024. 3. 29.
Day 9. 과제 _ 파일 입출력을 이용한 단어장 만들기 문제) 아래 조건을 만족하는 영어 단어장을 만들어보자 * 1.등록하기, 2.출력하기, 3.저장하기, 4.불러오기, 5.종료하기 6.수정하기 7.삭제하기 * 1을 선택했을 경우 * 단어를 입력하세요: apple * 뜻을 입력하세요: 사과 * 레벨을 입력하세요: 1 * 등록되었습니다. * 2를 선택했을 경우 * apple : 사과 (레벨 1) * 3을 선택했을 경우 * 저장되었습니다. (파일에 저장, words.txt) * 4를 선택했을 경우 * 프로그램 시작 시 기존에 단어장 파일이 존재하는지 확인하고 그 파일에 있는 데이터를 메모리에 불러옴(없으면 스킵) * 5를 선택했을 경우 * 프로그램을 종료합니다. * 6을 선택할 경우 * 수정할 단어를 선택하세요: apple * 선택한 단어가 없습니다.or * a.. 2024. 3. 27.
LIST