Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
For循环在Python中的函数内部不起作用 lista=[4,22,5,6,32,81729,56,77,31] listb=[] 对于范围内的k(len(lista)): listb.append(k) def cs(): 对于范围(9)内的i: 印刷品(一) 如果lista[i]_Python - Fatal编程技术网

For循环在Python中的函数内部不起作用 lista=[4,22,5,6,32,81729,56,77,31] listb=[] 对于范围内的k(len(lista)): listb.append(k) def cs(): 对于范围(9)内的i: 印刷品(一) 如果lista[i]

For循环在Python中的函数内部不起作用 lista=[4,22,5,6,32,81729,56,77,31] listb=[] 对于范围内的k(len(lista)): listb.append(k) def cs(): 对于范围(9)内的i: 印刷品(一) 如果lista[i],python,Python,,则应将return语句移到函数中的for循环之外,并且还应整理空白,如下所示: lista=[4, 22, 5, 6, 32, 81, 729, 56, 77, 31] listb=[] for k in range(len(lista)): listb.append(k) def cs(): for i in range(9): print(i) if lista[i]<lista[i+1]

,则应将
return
语句移到函数中的
for
循环之外,并且还应整理空白,如下所示:

lista=[4, 22, 5, 6, 32, 81, 729, 56, 77, 31]   
listb=[]

for k in range(len(lista)):
       listb.append(k) 
def cs():




   for i  in range(9):
              print(i)
              if lista[i]<lista[i+1]:
                print(i)
                listb[i]=lista[i]
                lista[i]=listb[i]
                i+=1
              else:

                listb[i]=lista[i+1]
                lista[i+1]=lista[i]
                lista[i]=listb[i]
              return(lista)   

print(cs())
lista=[4,22,5,6,32,81729,56,77,31]
listb=[]
对于范围内的k(len(lista)):
listb.append(k)
def cs():
对于范围(9)内的i:
印刷品(一)

如果lista[i]你能把这个漫无边际的问题翻译成一个连贯的问题吗?并修正缩进。
return
语句真的应该在循环中吗?
对于lista中的k:listb.append(k)
会更干净。尽可能地迭代值,而不是索引。谢谢landogardner。你是对的。在删除循环外的return语句后。它工作得很好。我的miss.ThanksThanks Chepner。我也会这样做。
lista=[4, 22, 5, 6, 32, 81, 729, 56, 77, 31]   
listb=[]

for k in range(len(lista)):
    listb.append(k) 

def cs():
    for i in range(9):
        print(i)
        if lista[i]<lista[i+1]:
            print(i)
            listb[i]=lista[i]
            lista[i]=listb[i]
            i+=1
        else:
            listb[i]=lista[i+1]
            lista[i+1]=lista[i]
            lista[i]=listb[i]
    return(lista)   

print(cs())