注册 登录
编程论坛 Python论坛

求助:for循环如何像Java那样动态遍历

jia680806 发布于 2018-05-02 10:33, 1073 次点击
如果一个列表中 的某一个元素==start  
则从这个元素的下一个元素开始遍历
遍历输出到end停止
下一次的for循环我想从end元素的下标开始遍历查找start
疑问:除第一次外,第N次的for循环如何从第N-1次end开始遍历查找

[此贴子已经被作者于2018-5-2 10:36编辑过]

1 回复
#2
傻眼猫咪2021-08-03 17:34
程序代码:

x = [2, 13, 6, 89, 11, 5, 4]

for i in x[2:]:
    print(i) # [6, 89, 11, 5, 4] # 取列表位置2以後的全部值,包裹位置2的值

for i in x[::-1]:
    print(i) # [4, 5, 89,6, 13, 2] # 反轉


# listA[0]   代表取listA第一個位置的值
#
listA[-1]  代表取listA最後一個位置的值
#
listA[i:]  代表取listA位置i以後的全部值,包裹位置i的值
#
listA[:i]  代表取listA位置i之前的全部值,不包裹位置i的值
#
listA[i:j] 代表取listA位置i至位置j之間的全部值,包裹位置i的值,但不包裹j的值

# listA[::y] y表示遍歷值,正數代表從小變大,負數代表從大變小,數字代表遍歷的值
#
舉例:

x = [1, 2, 3, 4, 5, 6, 7]

for i in x[::-1]:
    print(i) # [7, 6, 5, 4, 3, 2, 1] # 反轉

for i in x[::-2]:
    print(i) # [7, 5, 3, 1]

for i in x[::2]:
    print(i) # [1, 3, 5, 7]

for i in x[1::2]:
    print(i) # [2, 4, 6]

# 另外值得注意的是 for i in x[::1] 和 for i in x 和 for i in x[::] 和 for i in x[:] 四種完全一樣
1