-1

直面している問題が見つかりません...
これはまさにエラーが教えてくれることです:

File "C:/Users/Rodrigo Villalta/Desktop/listasparimpar.py", line 38,
in listas_par_impar
    if lista2(m) > lista2 [m+1]: TypeError: 'list' object is not callable

これはコードです:

def listas_par_impar(lista,lista2):
lista3=[]
lista4=[]
for i in lista2:
    if i % 2 == 0:
      lista=lista+[i]

    else:
        pass

for i in lista:
    if i %2 != 0:
        lista2=lista2+[i]

    else:
        pass

for i in lista:
    if i%2==0:
        if i not in lista3:
            lista3=lista3+[i]
            lista=lista[1:]

for i in lista2:
    if i%2!=0:
        if i not in lista4:
            lista4=lista4+[i]

            lista=lista[1:]

for recorrido in range(1,len(lista)):
    for posicion in range(len(lista)-recorrido):
        if lista(posicion) > lista [posicion+1]:
            lista[posicion], lista[posicion+1] = lista[posicion+1], lista[posicion]

for r in range(1,len(lista2)):
    for m in range(len(lista2)-r):
        if lista2(m) > lista2 [m+1]:
            lista2[m], lista2[m+1] = lista2[m+1], lista2[m]

print (lista4, lista3)
4

2 に答える 2

9

この行で:

if lista2(m) > lista2 [m+1]:

lista2(m)…の代わりに書きましたlista2[m]

lista2これは、引数を使用して、関数のように呼び出そうとしていることを意味しますm。あなたがやりたかったのは、 indexlista2を使用して、リストのようなインデックスを作成することmです。

于 2013-09-12T07:36:16.603 に答える
1
if lista2(m) > lista2 [m+1]:

次のようにする必要があります。

if lista2[m] > lista2 [m+1]:
于 2013-09-12T07:41:11.300 に答える