Python 那是什么样的回报?

Python 那是什么样的回报?,python,Python,摘自codewars中的kata: 我得了精神病。我很讨厌数字。但这有点复杂:我担心的数字取决于一周中的哪一天。。。这是我精神疾病的具体描述: 星期一-->12 星期二-->大于95的数字 周三-->34 星期四-->0 星期五-->可被2整除的数字 周六-->56 星期日-->666或-666 编写一个函数,它包含一个字符串(星期几)和一个整数(要测试的数字),这样它就可以告诉医生我是否害怕。(返回布尔值) 答案是: def am_I_afraid(day,num): return {

摘自codewars中的kata:

我得了精神病。我很讨厌数字。但这有点复杂:我担心的数字取决于一周中的哪一天。。。这是我精神疾病的具体描述:

星期一-->12

星期二-->大于95的数字

周三-->34

星期四-->0

星期五-->可被2整除的数字

周六-->56

星期日-->666或-666

编写一个函数,它包含一个字符串(星期几)和一个整数(要测试的数字),这样它就可以告诉医生我是否害怕。(返回布尔值)

答案是:

def am_I_afraid(day,num):
return {
    'Monday':  num == 12,
    'Tuesday': num > 95,
    'Wednesday': num == 34,
    'Thursday': num == 0,
    'Friday': num % 2 == 0,
    'Saturday': num ==  56,
    'Sunday': num == 666 or num == -666,
}[day]
有人能帮我了解一下退货是怎么回事吗?(内脏)


这是一个字符串和布尔值的字典。每次根据传递给它的数字调用此方法时,它都会计算一周中所有日期的布尔值。最后,它为过去一天的字典编制索引并返回其值。

这是一个字符串和布尔值的字典。每次根据传递给它的数字调用此方法时,它都会计算一周中所有日期的布尔值。最后,它为过去一天的字典编制索引并返回其值。

这是一个字符串和布尔值的字典。每次根据传递给它的数字调用此方法时,它都会计算一周中所有日期的布尔值。最后,它为过去一天的字典编制索引并返回其值。

这是一个字符串和布尔值的字典。每次根据传递给它的数字调用此方法时,它都会计算一周中所有日期的布尔值。然后在最后,它为过去一天的字典编制索引并返回其值。

代码依次运行并计算每一行,因此如果输入666,您将得到以下哈希值:

{'Monday':  False,
    'Tuesday': True,
    'Wednesday': False,
    'Thursday': False,
    'Friday': True,
    'Saturday': False,
    'Sunday': True,
}
然后,
[day]
将从散列中提取该值并返回布尔值,因此如果传递了
星期三
,您将得到
。如果星期五<代码>已经过去,您将得到
True
。i、 e

{'Monday':  False,
        'Tuesday': True,
        'Wednesday': False,
        'Thursday': False,
        'Friday': True,
        'Saturday': False,
        'Sunday': True,
    }['Friday']

将获得散列值:
{'Friday':True}
并返回值
True

代码依次运行并计算每一行,因此如果输入666,则将得到散列值:

{'Monday':  False,
    'Tuesday': True,
    'Wednesday': False,
    'Thursday': False,
    'Friday': True,
    'Saturday': False,
    'Sunday': True,
}
然后,
[day]
将从散列中提取该值并返回布尔值,因此如果传递了
星期三
,您将得到
。如果星期五<代码>已经过去,您将得到
True
。i、 e

{'Monday':  False,
        'Tuesday': True,
        'Wednesday': False,
        'Thursday': False,
        'Friday': True,
        'Saturday': False,
        'Sunday': True,
    }['Friday']

将获得散列值:
{'Friday':True}
并返回值
True

代码依次运行并计算每一行,因此如果输入666,则将得到散列值:

{'Monday':  False,
    'Tuesday': True,
    'Wednesday': False,
    'Thursday': False,
    'Friday': True,
    'Saturday': False,
    'Sunday': True,
}
然后,
[day]
将从散列中提取该值并返回布尔值,因此如果传递了
星期三
,您将得到
。如果星期五<代码>已经过去,您将得到
True
。i、 e

{'Monday':  False,
        'Tuesday': True,
        'Wednesday': False,
        'Thursday': False,
        'Friday': True,
        'Saturday': False,
        'Sunday': True,
    }['Friday']

将获得散列值:
{'Friday':True}
并返回值
True

代码依次运行并计算每一行,因此如果输入666,则将得到散列值:

{'Monday':  False,
    'Tuesday': True,
    'Wednesday': False,
    'Thursday': False,
    'Friday': True,
    'Saturday': False,
    'Sunday': True,
}
然后,
[day]
将从散列中提取该值并返回布尔值,因此如果传递了
星期三
,您将得到
。如果星期五<代码>已经过去,您将得到
True
。i、 e

{'Monday':  False,
        'Tuesday': True,
        'Wednesday': False,
        'Thursday': False,
        'Friday': True,
        'Saturday': False,
        'Sunday': True,
    }['Friday']

将获取散列值:
{'Friday':True}
并返回值
True

这将构建一个以一周中的每一天为键的字典。字典看起来是这样的(假设我通过
num
,值为
10
)(记住字典是无序的)

它所做的是使用
num
计算每个表达式:

num == 12   # False
num > 95    # False
num == 34   # False
num == 0    # False
num % 2 == 0 # True
num ==  56  # False
num == 666 or num == -666  # False
最后,它使用传递的
day
只返回字典中该键的值


因此,如果您通过
Friday
10
,您将收到
True
。对于每隔一天,如果值为
10
,则会得到
False

,这将构建一个字典,并将一周中的每一天作为键。字典看起来是这样的(假设我通过
num
,值为
10
)(记住字典是无序的)

它所做的是使用
num
计算每个表达式:

num == 12   # False
num > 95    # False
num == 34   # False
num == 0    # False
num % 2 == 0 # True
num ==  56  # False
num == 666 or num == -666  # False
最后,它使用传递的
day
只返回字典中该键的值


因此,如果您通过
Friday
10
,您将收到
True
。对于每隔一天,如果值为
10
,则会得到
False

,这将构建一个字典,并将一周中的每一天作为键。字典看起来是这样的(假设我通过
num
,值为
10
)(记住字典是无序的)

它所做的是使用
num
计算每个表达式:

num == 12   # False
num > 95    # False
num == 34   # False
num == 0    # False
num % 2 == 0 # True
num ==  56  # False
num == 666 or num == -666  # False
最后,它使用传递的
day
只返回字典中该键的值


因此,如果您通过
Friday
10
,您将收到
True
。对于每隔一天,如果值为
10
,则会得到
False

,这将构建一个字典,并将一周中的每一天作为键。字典看起来是这样的(假设我通过
num
,值为
10
)(记住字典是无序的)

它所做的是使用
num
计算每个表达式:

num == 12   # False
num > 95    # False
num == 34   # False
num == 0    # False
num % 2 == 0 # True
num ==  56  # False
num == 666 or num == -666  # False
最后,它使用传递的
day
只返回字典中该键的值

因此,如果您通过
Friday
10
,您将收到
True
。每隔一天,如果值为
10
,则会得到
False

字典文本(以及