摆动的呆毛 发表于 2020-4-10 13:50:11

函数

def pos_in_line(line, key):
    pos = []
    begin = line.find(key)
    while begin != -1:
      pos.append(begin + 1) # 用户的角度是从1开始数
      begin = line.find(key, begin+1) # 从下一个位置继续查找

    return pos




为什么要begin == -1才会结束循环

leon_xinxin 发表于 2020-4-10 13:52:24

能发一下题目吗?

永恒的蓝色梦想 发表于 2020-4-10 13:56:49

要么看题目猜代码,要么看代码猜题目,总得缺一个

老八秘制 发表于 2020-4-10 13:58:03

永恒的蓝色梦想 发表于 2020-4-10 13:56
要么看题目猜代码,要么看代码猜题目,总得缺一个

确实

heidern0612 发表于 2020-4-10 13:59:37

本帖最后由 heidern0612 于 2020-4-10 14:02 编辑

列表的标号中,-1是不是最后一位?

如果列表中0标号代表着第一位,那么-1就是最后一位。

你可以打印出来试试。

以上,不光适用于列表,可以迭代的如字符串、集合、元祖都是可以这么表示的。

list1 =

print(list1)

print(list1[-1])

sunrise085 发表于 2020-4-10 14:17:22

这是find函数的返回值要求的
find(key,pos)key是要查找的内容,pos是查找的起始位置。
find函数返回值是查找到的key的位置,若没有找到,则返回值为-1
所以当begin为-1 的时候,说明已经全部找到了

qiuyouzhi 发表于 2020-4-10 14:21:37

find是一个字符串方法,参数是要查找的字符串(和范围)。
如果找到了,就返回所在位置,找不到就返回-1。
如果找不到key了,就退出循环。
页: [1]
查看完整版本: 函数