세 번째 과제인 회원/게시글 관리 프로그램을 만들었다.
Member과 Post 두 개의 class를 만들었고, terminal에서 직접 회원 생성을 할 수 있다.
회원을 다 생성하면 각각의 회원은 comment를 남길 수 있다.
class를 만드는 것은 수월하게 작성했다.
constructor을 만들고 그 안에 attributes를 넣었다.
'def display()'처럼 method를 작성하고 원하는 작업을 작성했다.
hashlib module을 import하여 member의 password을 암호화 시켰다.
이 부분은 제대로 했는지 잘 모르겠다.
특히, 생성된 Member instance가 세 개의 Post instance를 갖게 하는 부분에서 좀 헤맸다.
그래도 어찌저찌 코드를 작성하고 테스트를 마친 후, 무사히 시간 안에 링크 제출을 했다.
이따 7시에 과제 풀이 미팅에 참여해서 내가 작성한 코드들이 잘 작성된 것인지 확인해 볼 것이다.
또 궁금한 것도 여쭤봐야지.
import hashlib
class Member():
def __init__(self, name, username, password):
self.name = name
self.username = username
m = hashlib.sha256()
self.password = m.update(password.encode('utf-8'))
def display(self):
return f"Name:{self.name}, Username:{self.username}"
class Post():
def __init__(self, username, title, content):
self.author = username
self.title = title
self.content = content
members = []
posts = []
while True:
name = input('Name: ')
username = input('Username: ')
password = input('Password: ')
person = Member(name, username, password)
members.append(person)
member_answer = input('Continue(Y/N)?')
if member_answer == 'N':
for m in members:
while True:
print(m.display())
title = input('Title: ')
content = input('content: ')
post = Post(m.username, title, content)
posts.append(post)
comment_answer = input(
'Do you want to leave more comment(Y/N)?')
if comment_answer == 'N':
break
break
for p in posts:
if p.author == 'apple':
print('certain(apple) user wrote: ', p.title)
if "great" in p.content:
print('certain(great) word contained: ', p.title)
LIST
'Computer Programming > AI' 카테고리의 다른 글
TIL_Array와 LinkedList(Algorithm) (0) | 2023.08.25 |
---|---|
TIL_Algorithm (0) | 2023.08.24 |
TIL_두 번째 assignment(가위바위보 Game) (1) | 2023.08.22 |
TIL_Python Assignment 1(Up-and-Down Game) (0) | 2023.08.21 |
WIL_두 번째 주 (0) | 2023.08.20 |