Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 函数打印正确的输出和无_Python - Fatal编程技术网

Python 函数打印正确的输出和无

Python 函数打印正确的输出和无,python,Python,我已经定义了这个函数,它接受一个单词和一组必需的字母,如果单词至少使用了所有必需的字母一次,则返回True。当我运行它时,它会给我正确的输出,但我不明白为什么它也会输出“无” 这是我的密码: def uses_all(word, allused): boolean = False for e in allused: if e in word: boolean = True else: boolean

我已经定义了这个函数,它接受一个单词和一组必需的字母,如果单词至少使用了所有必需的字母一次,则返回True。当我运行它时,它会给我正确的输出,但我不明白为什么它也会输出“无”

这是我的密码:

 def uses_all(word, allused):
    boolean = False
    for e in allused:
        if e in word:
            boolean = True
        else:
            boolean = False
            break 
    print boolean 

print uses_all('facebook', 'd')
输出:

False
None

如果您能对我的错误进行评论,我们将不胜感激

打印函数结果,但函数不返回任何内容(->None)

如果希望结果为
False
,请在函数中添加
return boolean


或者,如果一个
False
就足够了,您可以将
print uses\u all('facebook','d')
更改为just
uses\u all('facebook','d')
您的程序打印的
布尔值
,这是False,因此您知道它来自何处

如果函数没有显式返回任何内容,那么当您使用

print uses_all('facebook', 'd')
您要求它打印
使用的\u all
返回的内容,而这是None。因此:

False
None
顺便说一句,我认为你的函数可以更简洁地写成

def uses_all(word, allused):
    return all(e in word for e in allused)

可以提高效率,但这对于政府工作来说已经足够了。该函数非常方便(另请参见
any
)。

,因为
使用了\u all()
没有返回语句。如果您从函数返回一个值,它将被打印出来,而不是无,除非您
返回无
:)

布尔值
对于变量来说是一个坏名字--它告诉我们变量的类型,我们已经知道,因为它是
,但您没有告诉我们它的含义。