Indexowanie obiektów SeqRecord w liście

Indexowanie obiektów SeqRecord w liście
A1
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 4 lata
  • Postów:19
0

Witam,
chciałbym otrzymać listę indexów dla SeqRecord znajdujących się w liście f.
Próbowałem zrobić tak:

Kopiuj
for x in f:
    ind = f.index(x)
    print(ind)

Ale otrzymałem błąd:

Kopiuj
0
Traceback (most recent call last):

File "C:\Users\...", line 43, in <module>
ind = f.index(x)

File "C:\Users\...\anaconda3\lib\site-packages\Bio\SeqRecord.py", line 803, in __eq__
raise NotImplementedError(_NO_SEQRECORD_COMPARISON)

NotImplementedError: SeqRecord comparison is deliberately not implemented. Explicitly compare the 
attributes of interest.

Dziękuje za każdą odpowiedź

lion137
  • Rejestracja:około 8 lat
  • Ostatnio:22 minuty
  • Postów:4937
0

https://docs.python.org/3/library/exceptions.html (ctr - f notimple)
Daj cały kod.


A1
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 4 lata
  • Postów:19
0

Posiadam listę f, w której są obiekty:

Kopiuj
[SeqRecord(seq=Seq('CCCGGGKKGGGKACTGCGGGAGGWCATTGTCGAACCTGCCCGACAGAGCGACCC...GAA', IUPACAmbiguousDNA()), id='BIE-1_ITS5', name='BIE-1_ITS5_F', description='', dbxrefs=[]), SeqRecord(seq=Seq('GCGTGKGRAKACTGCGAGAGGWCATTGTCGAACCTGCCCGACAGAGCGACCCGC...AAA', IUPACAmbiguousDNA()), id='BIE-2_ITS5', name='BIE-2_ITS5_F', description='', dbxrefs=[]), SeqRecord(seq=Seq('GCGGGTGGAKACTGCGGAGGWCATTGTCGAACCTGCCCGACAGAGCGACCCGCG...AAA', IUPACAmbiguousDNA()), id='BIE-3_ITS5', name='BIE-3_ITS5_F', description='', dbxrefs=[])]

I dla tej listy chciałbym dostać indexy. Dla zwykłej listy ten kod działa, ale dla listy z obiektami SeqRecord mam problem.

lion137
  • Rejestracja:około 8 lat
  • Ostatnio:22 minuty
  • Postów:4937
0

Bo one nie mają zaimplementowanego porównania, metoda index, bierze element i znajduje jego miejsce, a do tego musi mieć porządek w obiektach, a go nie ma co mówi wyjątek. A nie Możesz drukować soie numerów tych elementów po kolei (enumerate):

Kopiuj
for i, _ in enumerate(f):
    print(i)

edytowany 1x, ostatnio: lion137
A1
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 4 lata
  • Postów:19
0

Bardzo dziękuję, wszystko działa jak należy

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.