以新颖的方式引用多个列表和词典

时间:2016-08-26 11:16:22

标签: python list dictionary

首先发布,请原谅格式化等。

我正在尝试创建一个程序,根据是否是一周工作日/周末以及是否休假来提供闹钟时间

继承人代码:

days = {0:"sun",
        1:"mon",
        2:"tue",
        3:"wed",
        4:"thurs",
        5:"fri",
        6:"sat",
    }
types = {"weekdays": ["mon", "tue", "wed", "thurs", "fri"],
        "weekend": ["sun", "sat"]
         }
times = {"7:00":"weekdays",
         "10:00":"weekend"}
#vacation = False

def alarm_clock(day, vacation):
    x = days[day]

    #for i in days:
    if vacation == False:
        y = list(times.keys())[list(times.values()).index()]#incomplete function that should return "weekend" or "weekday" based on input
        return (list(times.keys())[list(times.values()).index(#function that returns either "weekend" or weekday" here# y    )])      ## checks the entered number in days; that value is then checked in both lists in types to see whether it is in "weekend" or "weekdays"; that value is then used to give the final time of alarm (7:00 or 10:00)

这是在python 3.4中,当war_clock(1,False)输入shell时当前返回错误

TypeError: index() takes at least 1 argument (0 given)

我不希望这个有用,我正在寻找有关如何以不同方式做事的建议。

对不起,如果这是一个愚蠢的问题,也许我只是不好,我应该gitgud

1 个答案:

答案 0 :(得分:0)

我为您的格式道歉表示赞赏,但如果您希望人们帮助您处理您的代码,他们必须了解它。

可能的问题

我不知道我是否正确看到了它,但在' y' 定义的行上,有一个空'。 index()' 函数(可能是导致TypeErrors的函数?)

Idk真的,因为代码是不完整的,我无法完全确定。