小编lov*_*nta的帖子

Python:检查密钥是否是字典的一部分

我正在尝试用Python创建自己的irc bot(用于抽搐).我的命令有一本字典:

commands = {

    '!ping': {
        'cooldown': 30,
        'return': '!pong'
    },

    '!random': {
        'cooldown': 30,
        'return': 'command',
        'argc': 2,
        'arg_username': True,
        'usage': '!random <min> <max>'
    }

} # End of commands
Run Code Online (Sandbox Code Playgroud)

然后我有一个函数来检查发送的消息是否确实是一个命令:

import string

def is_valid_command(command):
    return True if command in commands.keys() else False
Run Code Online (Sandbox Code Playgroud)

所以,当我测试这个功能时,它似乎不起作用,我不知道我做错了什么:

message = "!ping"
print(str(is_valid_command(message)))
>>> False
Run Code Online (Sandbox Code Playgroud)

我试图将字典中的'!ping'更改为"!ping",然后将该消息更改为"!",甚至删除了'!' 它总是说它是假的.

谢谢,劳伦斯

编辑:

def is_valid_command(command):
    for key in commands.keys():
        print(key)
    print("input " + str(command))
    print(command in commands.keys())
    return command in commands.keys()
Run Code Online (Sandbox Code Playgroud)

结果如下:

!ping
!random
input !ping
False …
Run Code Online (Sandbox Code Playgroud)

python dictionary

0
推荐指数
1
解决办法
202
查看次数

标签 统计

dictionary ×1

python ×1