gpt4 book ai didi

每次在另一个字符串中找到一个字符串时,Python 都会计数

转载 作者:太空宇宙 更新时间:2023-11-04 08:07:33 24 4
gpt4 key购买 nike

我正在尝试枚举程序在较长文本中找到特定字符串的时间,但我卡住了,程序显示响应字符串的长度而不是出现 ultrias 的时间作为回应。这是代码:

ultrias = "am 17"
response = "Hi i am 17, did you know I am 17"
num = 0
for ultrias in response:
num += 1
print (num)

最佳答案

其他人已经回答了几种不同的方法来实现您的要求,但是,没有人解释为什么您的代码输出是输入字符串的长度。

for 循环有一个循环变量,它从被迭代的对象中赋值。在对象是字符串的情况下,for 循环将按顺序遍历字符串中的每个字符,将字符分配给循环变量,例如

>>> for i in "Hi there":
... print i
...
H
i

t
h
e
r
e

因此您可以看到 i 被依次分配了字符串“Hi there”中的一个字符。您的代码中也发生了同样的事情:ultrias 是循环变量,并从字符串 "Hi i am 17, did you know I am 17" 中分配连续的字符.

ultrias = "am 17"
response = "Hi i am 17, did you know I am 17"
num = 0
for ultrias in response:
print(ultrias)
num += 1
print (num)

输出将是:

H
i

i

a
m

1
7
.
.
.

3

另请注意,循环终止后 ultrias 的值是循环为其分配的最后一个值 - 不是 "am 17" 而是 "7 ".

关于每次在另一个字符串中找到一个字符串时,Python 都会计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28515487/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com