这个例子是在《像计算机科学家一样思考Python》中练习9-4
要求:
编写一个名为uses_only的函数,接收一个单词以及字母组成的字符串,当单词只由这些字母组成时,返回True。
你可以造一个句子,其单词只由字母acefhlo组成吗?除了“Hoe alfalfa"之外 ?
根据教材上的提示,代码如下(反向思维):
def uses_only(word, available):
for letter in word:
if letter not in available:
return False
return True
print(uses_only('abc', 'abdc'))
print(uses_only('abc', 'cdba'))
print(uses_only('abc', 'ccdb'))
print(uses_only('helloface', 'acefhlo'))
正向思维处理代码:
def uses_only2(word, available):
for letter in word:
if letter in available:
continue
else:
return False
return True
print(uses_only2('abc','abdc'))
print(uses_only2('abc', 'cdba'))
print(uses_only2('abc', 'ccdb'))
两者的输出结果:
True
True
False
True
True
True
False