【问题标题】:How do I use isalpha() and isspace()如何使用 isalpha() 和 isspace()
【发布时间】:2015-04-02 04:04:32
【问题描述】:

我正在尝试返回是或否的答案以显示字符串是否包含空格或字母。粗体部分是我需要正确处理的部分。我得到了其他部分...

这是我放的,但它不能正常工作......

if (string.isalpha() and string.isspace()):
    print('Only alphabetic letters and spaces: yes')
else:
    print('Only alphabetic letters and spaces: no')

如何将它们一起使用?我知道如何分开做,但不一起做。我知道这可能看起来很简单,但我是初学者。

程序示例----

输入一个字符串:请打开我的邮箱

长度:20

第一个字符:p

最后一个字符:l

包含打开:是

只有字母和空格:是的

只有数字:没有

全部小写:是

全部大写:否

【问题讨论】:

标签: python


【解决方案1】:

您正在测试整个字符串。您应该单独测试每个字符。

is_alpha_or_space = all(c.isalpha() or c.isspace() for c in string)

【讨论】:

  • 我明白你的意思,但是如果字符串不包含字母和空格怎么办?如何使用 else 语句打印('仅字母和空格:否')。即使不是真的,它也会一直说是。
【解决方案2】:

您可以使用orall 来检查每个字母

if all(char.isalpha() or char.isspace() for char in string):
    print('Only alphabetic letters and spaces: yes')

【讨论】:

    【解决方案3】:

    两种选择:

    if all(x.isalpha() or x.isspace() for x in original):
    

    original.replace(' ','').isalpha()
    

    应该可以。

    【讨论】:

      【解决方案4】:

      您可以尝试将条件更改为str(input.isspace() and input.isalpha())

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-04-28
        • 1970-01-01
        • 1970-01-01
        • 2012-06-19
        • 1970-01-01
        相关资源
        最近更新 更多