检查python字符串是否包含特定字符

时间:2019-04-24 20:50:18

标签: python-3.x

我必须编写一个程序来提示用户输入,并且仅当用户输入的字符串中的每个字符都是数字('0'-'9')或字符串中的前六个字母之一时,才应打印True。字母('A'-'F')。否则,程序应显示False。

这个问题我还不能使用正则表达式,因为它还没有被教,我想使用基本的布尔操作。这是我到目前为止的代码,但是由于Or的存在,它也将ABCH输出为true。我被困住了

string = input("Please enter your string: ")

output = string.isdigit() or ('A' in string or 'B' or string or 'C' in string or 'D' in string or 'E' in string or 'F' in string)

print(output)

我也不知道我的程序是否应该将小写字母和大写字母区别对待,字符串在这里还意味着一个单词还是一个句子?

1 个答案:

答案 0 :(得分:1)

我们可以使用str.lower方法使每个元素小写,因为听起来大小写对于您的问题并不重要。

string = input("Please enter your string: ")
output = True # default value

for char in string: # Char will be an individual character in string
    if (not char.lower() in "abcdef") and (not char.isdigit()):
        # if the lowercase char is not in "abcdef" or is not a digit:
        output = False
        break; # Exits the for loop

print(output)

output仅在字符串未通过任何测试的情况下才会更改为False。否则,它将为True