Convert ADN en python

Fermé
Soma1316 Messages postés 17 Date d'inscription vendredi 3 mars 2023 Statut Membre Dernière intervention 25 mai 2023 - 22 mai 2023 à 18:59
 PierrotLeFou - 23 mai 2023 à 07:08

Bonjour,

Comment   Résoudre cette erreure svp

#Extraire le complément de la chaîne d'ADN 
def complementary_dna ( dna_str ) : 
complement = { ' A ' : ' T ' , ' T ' : ' A ' , ' G ' : ' C ' , ' c ' : ' G ' } 
dna_complement = [ ]
for base in dna_str :
 dna_complement.append ( complement [ base ] )
return ' '.join (dna_complement)

def encrypt ( file_path , Mk ) : 
blue , green , red , img1 = decompose_matrix ( file_path )
 blue_e , green_e , red_e = dna_encode ( blue , green , red ) 
blue_s , green_s , red_s = complementary_dna ( blue_e , green_e , red_e )
return img1


Error:
  File " c : \ Users \ acer \ projetdna \ encrypt.py " , line 335 , in encrypt 
blue_s , green_s , red_s = complementary_dna ( blue_e , green_e , red_e )
  TypeError: complement_dna() takes 1 positional argument but 3 were given 


Android / Chrome 105.0.0.0

A voir également:

3 réponses

jee pee Messages postés 40808 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 17 février 2025 9 525
22 mai 2023 à 19:08

Bonjour,

C'est une erreur en ligne 12, complementary_dna() recoit un seul argument, pas 3.


0
blux Messages postés 26658 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 16 février 2025 3 327
22 mai 2023 à 19:11

Salut,

en ligne 2, tu déclares complementary_dna avec un seul argument en paramètre (dna_str) et en ligne 12, tu l'appelles en passant 3 paramètres, donc ça gueule !


0

Je suppose que ça prendrait un join des trois variables pour faire une seule chaîne.
Et pourquoi tous ces calculs si on retourne seulement img1 qui est  évalué à la première ligne?

On ne voit pas les autres fonctions.

0