본문 바로가기
728x90

Python49

백준 알고리즘 문제_1406번 이번 시간에는 1406번 문제를 풀어보겠습니다. 백준 알고리즘 1874번: 1406번: 에디터 (acmicpc.net) 1406번: 에디터 첫째 줄에는 초기에 편집기에 입력되어 있는 문자열이 주어진다. 이 문자열은 길이가 N이고, 영어 소문자로만 이루어져 있으며, 길이는 100,000을 넘지 않는다. 둘째 줄에는 입력할 명령어의 개수 www.acmicpc.net 문제 : 한 줄로 된 간단한 에디터를 구현하려고 한다. 이 편집기는 영어 소문자만을 기록할 수 있는 편집기로, 최대 600,000글자까지 입력할 수 있다. 이 편집기에는 '커서'라는 것이 있는데, 커서는 문장의 맨 앞(첫 번째 문자의 왼쪽), 문장의 맨 뒤(마지막 문자의 오른쪽), 또는 문장 중간 임의의 곳(모든 연속된 두 문자 사이)에 위치할 .. 2021. 5. 13.
__str__ 메소드 안녕하세요, 개발자를 꿈꾸는 직장인입니다. 오늘은 __str__ 메소드에 대해 정리하려 합니다. 먼저 필요한 상황을 보여드리고 정리해보겠습니다. class User: def __init__(self, name, email, pw): self.name = name self.email = email self.pw =pw def say_hello(self): print("안녕하세요! 저는 {}입니다".format(self.name)) user1 = User("hoon","hoon@naver.com","123") user2 = User("minsu","ms@naver.com","1234") 위 코드에서 user1/user2를 print 해보겠습니다. 출력 값에서 User는 class를 나타내는 것이고 뒤에 0x.. 2021. 5. 10.
__init__ 메소드 안녕하세요, 개발자를 꿈꾸는 직장인입니다. 오늘은 __init__함수를 알아보려 합니다. init 함수가 왜 필요한지에 대해 먼저 살펴보겠습니다. 인스턴스 변수는 항상 사용 전에 미리 설정해야 합니다. 예를 먼저 살펴보겠습니다. class User: pass user1 = User() user1.name = "Hoon" user1.email = "hoon@naver.com" user1.password = "123" user1을 인스턴스로 만든 후에 name, email, password와 같은 변수들을 따로 설정을 해줘야 합니다! 위와 같이 코드를 짜게 되면 길이가 너무 길어지는데요, 인스턴스 변수 전부를 한 번에 설정할 수 있는 인스턴스 메소드를 한번 설정해 보겠습니다. 위의 예를 initialize라.. 2021. 5. 8.
인스턴스 메소드 / 변수 안녕하세요, 지난주에는 객체의 속성을 나타내는 변수에 대해 정리하였는데요, 오늘은 객체의 행동을 나타내는 함수(메소드)에 대해 알아보겠습니다! (메소드에는 인스턴스 메소드, 클래스 메소드, 정적 메소드 3가지가 있습니다. 오늘은 인스턴스 메소드에 대해 알아보겠습니다.) 인스턴스 메소드 : 인스턴스 변수를 사용하거나, 인스턴스 변수에 값을 설정하는 메소드. class Unit(): def say_hello(some_user): # 인스턴스 메소드 #인사 메시지 출력 (some_user에는 marine1/marine2 등을 넣는다) print("안녕하세요! 저는 {}입니다!".format(some_user.name)) #3개의 marine 객체를 만든다 -> !! marine1/2/3 은 서로 다른 객체이다.. 2021. 5. 7.