2013-04-26 1 views
0
from datetime import datetime 

class sms_store: 
    store = [] 
    read = [] 
def add_new_arrival(self,number,time,text): 
    sms_store.read.append(len(sms_store.store)) 
    sms_store.store.append(("From: {}, Recieved: {}, Msg: {}".format(number,time,text))) 
def delete(self,i): 
    try: 
     del sms_store.store[i] 
    except IndexError: 
     print("Index is out of range. Cannot delete") 
def message_count(self): 
    return print("Amt of messages in inbox: {}".format(len(sms_store.store))) 
def viewall(self): 
    print(sms_store.store) 
def get_unread_indexes(self): 
    #### ###################################I need help for this method. 
def get_message(self,i) 
    print(sms_store.store[i]) 
### tests #### 
time = datetime.now().strftime('%H:%M:%S') 
my_inbox = sms_store() #instantiate an object 'store' for class 
my_inbox.add_new_arrival("12345",time,"Hello how are you?") #instance of store object 
my_inbox.add_new_arrival("1111111",time,"BYE BYE BYE") 
my_inbox.viewall() 
my_inbox.msgcount() 

고마워요.클래스 및 메소드를 사용하는 Python SMS 스토어 프로그램 - has_been_viewed 상태

my_inbox.add_new_arrival() 

새 메시지를 추가, 그 has_been_viewed 상태가 false로 설정 :

이 내가해야 할 일이다. [내가] 을 또한 그 상태를 변경하는 모든하지 아직 볼 SMS 메시지 메시지

my_inbox.get_message(i)** 

반환 (FROM_NUMBER, time_arrived, text_of_sms)의 인덱스의

my_inbox.get_unread_indexes() 

반환 목록은 "확인되었습니다하기 ". 위치 i에 메시지가없는 경우 반환하지 않음

위의 방법을 도와주세요!

정말 고마워요!

답변

0

수업에 읽지 않은 다른 목록을 추가하는 이유는 무엇입니까? add_new_arrival을 변경하여 읽지 않은 메시지를 추가하십시오.

그런 다음 get_message 메서드에서 지정된 메시지를 읽지 않음에서 읽지 않음으로 이동합니다.

마지막으로 사용자의 get_unread 메소드는 읽지 않은 목록의 색인 만 나열합니다.

1

안녕하세요. 코드를 약간 수정했는데, 전에 "컴퓨터 과학자 책처럼 생각하는 법"에서이 작업을 수행 한 것으로 생각합니다. 희망이 적용됩니다.

from datetime import datetime 

하고

class SMS_store: 

def __init__(self): 
    self.store = [] 


def __str__(self): 
    return ("{0}".format(self)) 

def add_new_arrival(self, number, time, text): 
    self.store.append(("Read: False", "From: "+number, "Recieved: "+time, "Msg: "+text)) 

def message_count(self): 
    return (len(self.store)) 

def get_unread_indexes(self): 
    result = [] 
    for (i, v) in enumerate(self.store): 
     if v[0] == "Read: False": 
      result.append(i) 
    return (result) 

def get_message(self, i): 
    msg = self.store[i] 
    msg = ("Read: True",) + msg[1:] 
    self.store[i] = (msg) 
    return (self.store[i][1:]) 

def delete(self, i): 
    del self.store[i] 

def clear(self): 
    self.store = [] 
관련 문제