본문 바로가기

개발일지/Python159

파이썬 [class 기초원리] - 정리판1 class(클래스)기본 # 객체지향 프로그래밍 # 객체 사용의 장점은 코드 재사용, 모듈화에 좋다고 한다. # class의 첫글자는 대문자가 관례 # 이건 클래스라고 부른다. # 클래스는 "속성"과 "객체"라는 이름의 "기능" 이렇게 크게 2가지 요소로 구성된다. # 클래스는 처음 만들때 뼈대를 만들어놓고, 사용을하면서 필요한 부분을 덧붙여가는 식으로 # 만든다고 생각하면 된다. # 따라서 init의 부분에 오는 속성은 반드시 자주변동되지 않으며, 범용적으로 쓰일때 필요한요소 # 정도로 생각하면 좀 더 도움이 되는것 같다. class Car: # 여기서 self는 상위클래스 Car를 의미한다. # 여기는 속성. # 사실 좀 디데일하게 생각해보면 뭐가 속성이고 뭐가 객체인지 구분은 불분명하나 # 속성은 좀 더 외관상 치중된 느낌.. 2022. 5. 20.
파이썬 패키지 기초 원리, site-packages 내가 이용원하는 모듈이 int용 addCal float용 addCal 이면 같은 이름이기때문에 헷갈릴수 있지 않은가 때문에 이걸 구별해주기 위해서 패키지라는 개념을 사용한다. ==================================== 우선 패키지를 위해서는 초기작업이 좀 많이 필요하다. 본 예제를 위해서 상위폴더 1개 상위폴더 내부 파일 1개 중위폴더 2개 중위폴더 내부 파일 각 4개씩 이렇게 만들어보도록 하겠다. ================================= 그리고 상위폴더 A를 만들었을때 그에 해당하는 중위폴더 A-1, A-2를 만들고 상위폴더 A에 해당하는 파일1개 aa를 만들었을때, 이 3개는 동등한 위치에 있게된다. 그리고 aa는 중위폴더 A-1, A-2에 있는 모듈파일들을.. 2022. 5. 19.
파이썬 선형검색으로 내가 찾는 숫자가 난수리스트에 있는지 확인하는 알고리즘 # 선형검색 # 숫자로 이루어진 릿그트에서 사용자가 입력한 숫자를 검색하는 모듈을 다음 요건에 따라 만들자 # 1. 검색 모듈은 선형 검색 알고리즘을 이용하자 # 2. 리스트는 1부터 20까지의 정수 중에서 난수 10개를 이용하자 # 3. 검색 과정을 로그로 출력하자. # 4. 검색에 성공하면 해당 정수의 인덱스를 출력하고, 검색 결과가 없다면 -1을 출력하자 # 내가 만든코드 import random as rd list_main = rd.sample(range(1,20),10) searching_number = int(input('찾으려는 숫자 입력: ')) print(list_main) for a,b in enumerate(list_main): if searching_number == b: print.. 2022. 5. 19.
Day2. 챕터3 그리디 - 큰 수의 법칙 # 내 답안 import random as rd N = rd.sample(range(2,1001)) M = rd.sample(range(1,10001)) K = rd.sample(range(1,10001)) # 여기까지 작성했다. # 그리고 드는생각이 "배열의 크기"가 2부터 1001라고 하는데 이건 어떻게 활용하란거지? # 게다가 숫자가 더해져야하는 수가 M이고 번갈아 나열이 가능한게 K라고 할때 # 이 수들이 만약 천단위든 만단위든 나오면 도대체 결과값이 얼마가 되는거냐 # 라는 생각이 들어서 더이상 진행하질 못했다. # 뭔가 아직은 알고리즘의 문제를 파악하는게 모호하다. # 솔직히 말하자면 뭐 알고리즘 문제마다 뭔가 말을 말같지 않게 하다 말고 # 풀어보라는 느낌인데; 암튼 내가 익숙해져야하는 문제.. 2022. 5. 18.