-1
Bir "zamanlama" oluşturmaya çalışıyorum. Bir sınıf "Gün" (Pazartesi-Pazar) içerecek ve her Gün çeşitli "Görevler" e sahip olacak bir sınıf: Yaptığım yol budur (aşağıdaki kod), bu durumda "day_of_the_week [1]" olur Salı eşdeğeri. Bu hatPython: Görevler listesini yönetme
class Task(object):
def __init__(self,name,start,end):
self.name = name
self.start = start
self.end = end
class Day(object):
time_available = []
check_time = []
def __init__(self):
self.tasks = []
for i in range(24):
self.time_available.append(i)
def add_task(self,name,start,end):
for i in range(start, end + 1, 1):
self.check_time.append(i)
if set(self.check_time).issubset(self.time_available):
# check if timeslot is available
for i in range(start, end + 1, 1):
self.time_available.remove(i)
del self.check_time[:]
self.tasks.append(Task(name, start, end))
print "TRUE"
return True
else:
del self.check_time[:]
print "FALSE"
return False
#check if task can be added
class Schedule(object):
def __init__(self):
self.day_of_the_week = []
def add_day(self):
self.day_of_the_week.append(Day())
schedule = Schedule()
schedule.add_day()
schedule.add_day()
schedule.day_of_the_week[0].add_task("swimming", 11, 13)
schedule.day_of_the_week[0].add_task("swimming", 14, 17)
schedule.day_of_the_week[0].add_task("swimming", 10, 12)
schedule.day_of_the_week[1].add_task("swimming", 10, 12)
schedule.day_of_the_week[1].add_task("swimming", 10, 13)
Takvime hiçbir zaman eklemediğiniz bir güne görev eklemeyi deniyorsunuz. – user2357112
"daha fazla gün eklersem", "time_available" öğesinin sıfırlanacağı gibi göründüğünü keşfettim. Günün [0] belirli bir zaman diliminde mevcut olup olmadığını kontrol ediyordum. Şu anda olduğu gibi üçüncü yüzme görevi takılmayacaktı. Ama bir kez daha fazla gün ekledim, ekleyecekti. Değişkenlerim "Gün" de doğru şekilde bildirildi mi? – algoBaller
Doğru görünmüyorlar. "time_available" ve "check_time", bir nedenle örnek değişkenler yerine sınıf değişkenleri olarak beyan edilir. – user2357112