본문 바로가기

Python24

pseudo code(슈도코드, 의사코드)란? 본 글에서는 pseudo code(슈도코드, 의사코드)에 대해 설명한다. pseudo code가 무엇인지, 사용하는 이유, 작성하는 방법, 예시를 알아보자. pseudo code(슈도코드, 의사코드) 컴퓨터 프로그램의 동작이나 알고리즘을 인간이 사용하는 언어로 작성한 것을 말한다. 작성자와 다른 사람이 이해할 수 있는 일상적인 언어(한국어, 영어 등)으로 작성하면 된다. 프로그래밍과 달리 정해진 문법이 없어 자유로운 작성이 가능하다. pseudo code는 어떤 상황에 사용하나? 장점이 있나? - 통상 작성할 프로그램의 로직을 자연어를 통해 작성하고 이를 바탕으로 코딩을 하는 방식으로 활용한다 - 바로 코딩하는 것에 비해 문제에 대해 조금 더 명확한 사고가 가능하다. - 잘 작성한 pseudo code는.. 2023. 1. 11.
[Python 이메일 발송] 파일 첨부하여 Gmail 보내기 (SMTP) 파이썬 smtplib 라이브러리와 Gmail 계정을 이용하여 파일을 첨부한 메일을 전송해보자. 사전 준비 파이썬 코드를 통해 Gmail을 보내기 위해선 "IMAP 사용" 설정이 필요하다. 설정 방법 1. 설정 진입 : 메일 보낼 계정으로 Gmail 접속 후 우측 상단 톱니바퀴 - 모든 설정 보기 2. 전달 및 POP/IMAP -> IMAP 사용 체크 -> 변경사항 저장 IMAP 사용 설정은 메일 계정의 외부 접속에 대한 보안 설정 과정으로 필수이다. 생략하고 진행하게 되면 로그인 시도가 차단되었다는 보안 메일을 받게 된다. 인터넷에서 메일을 송수신할 때는 SMTP(Simple Mail Transfer Protocol)이라는 규약을 사용한다. 파이썬 프로그램(Client)와 메일 Server, Server.. 2023. 1. 8.
[예외처리] Exception Handling - try, except, else, finally, raise 예외처리란 코드의 에러를 처리하는 문법, 방법을 말한다. "세상에 완벽한 프로그램은 없다"라는 말이 있다. 누구든 파이썬으로 코드를 작성하고 프로그램을 실행하다 보면 에러를 만나게 되어 있는데 그런 예외 상황을 대처하기 위해 예외처리를 하는 것이다. 예외처리의 기본 구문은 아래와 같다. try: 예외가 발생할 수 있는 코드 except: 예외가 발생했을 경우 실행되는 코드 예외처리를 하지 않은 예시를 보자. print(1/0) print('python') # 실행 결과 ZeroDivisionError: division by zero 첫번째 줄에서 에러가 발생하고 두번째 줄은 실행되지 않는다. 프로그램은 에러를 출력하며 즉시 종료되는 것이다. 예외처리를 통해 에러가 발생하더라도 프로그램이 종료되지 않도록 .. 2023. 1. 7.
[Python methods] 인스턴스 메소드, 클래스 메소드, 스태틱 메소드 파이썬 Class에서 선언하는 메소드의 종류로 인스턴스(Instance) 메소드, 클래스(Class) 메소드, 스태틱(Static) 메소드가 있다. 모두 클래스 내부에 작성되는 공통점이 있는데, 각각의 메소드의 개념과 서로 어떤 차이점이 있는지 알아보자. 1. 인스턴스 메소드 (Instance method) - 객체를 이용하여 메소드를 호출한다. - 다른 객체에 영향이 없고 메소드를 호출한 해당 객체에만 영향을 준다. - 메소드의 첫번째 파라미터로 객체 자기 자신을 의미하는 self를 사용한다. 2. 클래스 메소드 (Class method) - 클래스를 이용하여 메소드를 호출한다. - 클래스 객체 전체에 영향을 준다. - 메소드의 첫번째 파라미터로 클래스를 의미하는 cls를 사용한다. - 생성된 객체의 .. 2023. 1. 6.
[DAY 10] getter, setter, name mangling getter, setter : 객체의 내부 변수에 접근할 때 특정 메소드를 거쳐서 접근할 수 있도록 하는 방법 이름과 패스워드를 갖는 유저 객체를 생성해보자. class User: def __init__(self, name, pw): self.name = name self.pw = pw user = User('peter', 'abcd123') # 유저 객체를 생성 이름이 peter이며 패스워드를 abcd123로 사용하는 유저 객체 user를 생성했다. 유저의 패스워드를 출력 시도한다면? print(user.pw) # 실행 결과 abcd123 패스워드는 쉽게 공개되지 않아야 하는데 그대로 노출되었다. 문제점을 해결하기 위해 패스워드 변수에 대해 제한 사항을 설정한다. 먼저 패스워드를 출력하는 경우 앞 2글.. 2023. 1. 6.
반응형