Pages : 1
#1 Le 25/05/2020, à 02:27
- judkil
Python3 function
Bonjour,
J'aimerai créer une fonction qui prent compte une liste de 3 arguments (x, y et z) et inscrit la lettre dans la colonne 2 dans uns nouvelle liste.
point.txt
Type Chaine Atome x y z
POINT D 116 40 0 17
POINT D 116 40 0 15
POINT D 117 39 -3 15
POINT E 117 41 -5 15
POINT F 117 41 -7 17
POINT G 117 42 -7 19
POINT G 117 42 -8 18
output
chaine = ['D', 'D', 'D','E', 'F', 'G', 'G']
Dernière modification par judkil (Le 25/05/2020, à 16:08)
Hors ligne
#2 Le 25/05/2020, à 07:30
- Compte supprimé
Re : Python3 function
Bonjour,
Tu peux reformuler ? Je n'ai pas saisie la demande...
#3 Le 25/05/2020, à 15:43
- judkil
Re : Python3 function
Bonjour,
J'aimerai créer une fonction qui prent compte une liste de 3 arguments (x, y et z) pour le fichier point.txt et inscrit la lettre dans la colonne 2 dans uns nouvelle liste quand il reconnait le x y et z.
def liste_coord(x, y, z)
if x, y, z in
return
Je ne vois pas comment lui dire de retourner la lettre de la dexième colonne.
Le output serait une liste des lettres de la colonne 2
chaine = ['D', 'D', 'D', ... , 'G', 'G']
Dernière modification par judkil (Le 25/05/2020, à 15:44)
Hors ligne
#4 Le 25/05/2020, à 16:05
- pingouinux
Re : Python3 function
Bonjour,
Si les triplets (x,y,z) sont uniques dans le fichier d'entrée, la chaîne finale ne contiendra qu'une lettre.
#!/usr/bin/env python3
with open('point.txt','r') as f: ligs=f.readlines()
def liste_coord(x,y,z):
chaine=[]
for lig in ligs:
if lig.split()[3:]==list(map(str,(x,y,z))): chaine.append(lig.split()[1])
return chaine
chaine=liste_coord(40,-4,16)
print(chaine)
Hors ligne
#5 Le 25/05/2020, à 16:11
- judkil
Re : Python3 function
Merci beaucoup pour votre aide, mais j'aimerai savoir que fais la fonction map ?
Hors ligne
#6 Le 25/05/2020, à 16:23
- pingouinux
Re : Python3 function
mais j'aimerai savoir que fais la fonction map ?
list( map(str,(x,y,z)) )
Ici, la fonction map convertit une séquence d'entiers en une séquence de chaînes, pour pouvoir effectuer la comparaison avec ce qui a été lu.
Hors ligne
#7 Le 25/05/2020, à 16:31
- judkil
Re : Python3 function
D'accord ! Merci beaucoup pour votre réponse !
Hors ligne
Pages : 1