<p>字符不能同时是alpha<strong>和空间。它可以是alpha<strong>或空间。</p>
<p>要求字符串只包含字母和空格:</p>
<pre><code>string = input("Enter a string: ")
if all(x.isalpha() or x.isspace() for x in string):
print("Only alphabetical letters and spaces: yes")
else:
print("Only alphabetical letters and spaces: no")
</code></pre>
<p>要要求字符串至少包含一个alpha和至少一个空格,请执行以下操作:</p>
<pre><code>if any(x.isalpha() for x in string) and any(x.isspace() for x in string):
</code></pre>
<p>要要求字符串至少包含一个alpha,至少包含一个空格,并且仅包含alpha和空格,请执行以下操作:</p>
<pre><code>if (any(x.isalpha() for x in string)
and any(x.isspace() for x in string)
and all(x.isalpha() or x.isspace() for x in string)):
</code></pre>
<p>测试:</p>
<pre><code>>>> string = "PLEASE"
>>> if (any(x.isalpha() for x in string)
... and any(x.isspace() for x in string)
... and all(x.isalpha() or x.isspace() for x in string)):
... print "match"
... else:
... print "no match"
...
no match
>>> string = "PLEASE "
>>> if (any(x.isalpha() for x in string)
... and any(x.isspace() for x in string)
... and all(x.isalpha() or x.isspace() for x in string)):
... print "match"
... else:
... print "no match"
...
match
</code></pre>