Je ne comprends pas où est mon erreur. Je travaille avec des listes de chaînes de caractères et je voulais représenter un graphe par sa liste d'adjacence.
Voici mon code :
def fils (a,b) :
if a[1:]==b[:len(b)-1] :
return True
else :
return False
def liste_fils(a,liste) :
L=[]
for i in liste :
if fils(a,i) :
L+=[i]
return L
def graphe(liste) :
n=len(liste)
L=[['']]
for i in range(n) :
L[i] = liste_fils(i,liste)
return L
Voici mon erreur :
In[136] : L
Out[136]: ['CCT', 'GCC', 'AAA', 'GAA', 'TGA', 'CTG', 'TGC']
graphe(L)
Traceback (most recent call last):
File "<ipython-input-137-b437b2714274>", line 1, in <module>
graphe(L)
File "C:/Users/danie/Desktop/TIPE/code.py", line 49, in graphe
L[i] = liste_fils(i,liste)
File "C:/Users/danie/Desktop/TIPE/code.py", line 41, in liste_fils
if fils(a,i) :
File "C:/Users/danie/Desktop/TIPE/code.py", line 33, in fils
if a[1:]==b[:len(b)-1] :
TypeError: 'int' object is not subscriptable