计算字符串长度,但不包括某些字符



我试图接受字符串输入并对其进行计数,但排除了某些字符,但无论我做什么,它似乎都在计算所有字符。

user_text = input()
count = 0
for i in user_text:
if i in user_text != 'a':
count += 1
print(count)

您应该检查i是否不等于a

if i != 'a':

你试过只使用吗

if i != 'a':

更多"蟒蛇;方法可能是:

user_text = input()
count = len([True for x in user_text if x != 'a'])
print(count)

您正在做的是链接比较运算符,这不是您想要的。因为您的声明与相同

(i in user_text) and (user_text != 'a')

第一条语句始终为True,因为您对user_text中的每个字符都进行了迭代。当user_texta时,第二条语句仅为False。您可以通过输入a作为输入来尝试此操作。

因此,为了实现你想要的,你应该像在其他答案中一样使用这句话:

if i != 'a'

小提示:当你将i重命名为类似char的东西时,这可能有助于你理解,因为i最常用于从0到n的循环。例如fo i in range(10)

最新更新