whj1566 发表于 2022-2-9 17:14:54

python 第29讲 求助大神

text = input("请输入text的内容:")
words = input("请输入words的内容:")
words = words.split()
   
result = []
for each in words:
    print(each) #测试
    temp = text.find(each)
    print(temp) #测试
    while temp != -1:
      result.append()
      print(result) #测试
      temp = text.find(each, temp+1)
   
print(sorted(result))



求助大神,为什么第一个temp = -1呢?

ckblt 发表于 2022-2-9 17:14:55

你左右两边不要打双引号

ckblt 发表于 2022-2-9 17:22:24

你要输入的应该是:请输入text的内容:I love FishC and FishC love me
请输入words的内容:FishC
[, ]
而不是:请输入text的内容:"I love FishC and FishC love me"
请输入words的内容:"FishC"
[]

python爱好者. 发表于 2022-2-9 17:28:13

因为第一遍总是要走第 10 行的循环的:
while temp != -1:
所以一开始就要将 temp 设置为 -1,
而至于为什么是 -1 ,这是因为在第 13 行代码中:
temp = text.find(each, temp+1)
因为当 find() 函数在找不到索引时,就会返回 -1!!!


懂了吗?不懂可以再问!懂了就给个好评呗!!!
{:10_257:}{:10_297:}{:10_281:}{:10_298:}
打字不易!请给个好评!!!
兄弟!给个好评!求求了!!!
{:10_254:}{:10_254:}{:10_254:}{:10_254:}

whj1566 发表于 2022-2-9 17:31:11

python爱好者. 发表于 2022-2-9 17:28
因为第一遍总是要走第 10 行的循环的:

所以一开始就要将 temp 设置为 -1,


感谢,问题解决了。

whj1566 发表于 2022-2-9 17:31:51

ckblt 发表于 2022-2-9 17:22
你要输入的应该是:
而不是:

谢谢,最佳给到二楼了哈
页: [1]
查看完整版本: python 第29讲 求助大神