Pages : 1
#1 Le 19/02/2017, à 21:41
- Bob dit l'Âne
Apprenti python [RESOLU]
Bonsoir,
Je suis débutant en python et j'apprends seul avec des vidéos sur Youtube.
J'ai un blocage et j'ai beau chercher, je ne trouve pas.
Quelqu'un peut-il me débloquer sur ce coup là ?
Dernière modification par Bob dit l'Âne (Le 20/02/2017, à 15:17)
DELL G3 17 3779 - 17,3" FHD IPS - Core i5 8300H - RAM 8Go - 1To DD +128Go SSD - NVIDIA GTX 1050 Ti 4 Go
Ubuntu 22.04.3 LTS Home séparé et partition données
Akoya MD 97860 P7612 Core 2 Duo T6500 NVIDIA Realtek RTL8191SE Wireless LAN GeForce G210M
Ubuntu 16.04 LTS (« Xenial Xerus ») + NFS
Hors ligne
#2 Le 19/02/2017, à 21:54
- pingouinux
Re : Apprenti python [RESOLU]
Bonsoir,
Fais un copier-coller de la sortie du terminal pour la mettre ici entre balises-code, ça permet de récupérer le texte pour faire des tests.
Montre aussi ton script.
Hors ligne
#3 Le 19/02/2017, à 23:50
- Bob dit l'Âne
Re : Apprenti python [RESOLU]
Merci pour ton intervention
Voici la sortie du terminal :
Nom pays,Code pays,2012,2013,2014,2015
Andorre,AND,79316,75902,72786,70473
Afghanistan,AFG,29726803,30682500,31627506,32526562
Angola,AGO,22685632,23448202,24227524,25021974
Albanie,ALB,2900247,2896652,2893654,2889167
Argentine,ARG,42095224,42538304,42980026,43416755
Arménie,ARM,2978339,2992192,3006154,3017712
Australie,AUS,22728254,23117353,23464086,23781169
Autriche,AUT,8429991,8479375,8541575,8611088
Belgique,BEL,11128246,11182817,11231213,11285721
Traceback (most recent call last):
File "demography2.py", line 13, in <module>
parse = list(eval(ligne))
File "<string>", line 1, in <module>
NameError: name 'N' is not defined
------------------
(program exited with code: 1)
Press return to continue
et voici mon script :
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#======================================================================================================================
# demography2.py
#===============================================================================================================================
nom1="API.csv" # affecte le fichier "API.csv" à la variable "nom1"
fichier = open(nom1) # pour ouvrir le fichier en mode lecture
contenu = fichier.read() # récupère le contenu du fichier
lignes=contenu
print(lignes) # affichage ou non du contenu de la variable "lignes"
# pays = ()
for ligne in lignes: # itérer sur les lignes (parcourir chaque ligne du fichier pour extraire les données qu'on veut)
parse = list(eval(ligne))
print(parse)
nom = parse[1:2]
print(nom)
Dernière modification par cqfd93 (Le 20/02/2017, à 06:16)
DELL G3 17 3779 - 17,3" FHD IPS - Core i5 8300H - RAM 8Go - 1To DD +128Go SSD - NVIDIA GTX 1050 Ti 4 Go
Ubuntu 22.04.3 LTS Home séparé et partition données
Akoya MD 97860 P7612 Core 2 Duo T6500 NVIDIA Realtek RTL8191SE Wireless LAN GeForce G210M
Ubuntu 16.04 LTS (« Xenial Xerus ») + NFS
Hors ligne
#4 Le 20/02/2017, à 06:31
- pingouinux
Re : Apprenti python [RESOLU]
Essaye ceci :
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#======================================================================================================================
# demography2.py
#===============================================================================================================================
nom1="API.csv" # affecte le fichier "API.csv" à la variable "nom1"
fichier = open(nom1) # pour ouvrir le fichier en mode lecture
lignes = fichier.readlines() # récupère le contenu du fichier
print(lignes) # affichage ou non du contenu de la variable "lignes"
# pays = ()
for ligne in lignes: # itérer sur les lignes (parcourir chaque ligne du fichier pour extraire les données qu'on veut)
parse = ligne[:-1].split(',')
print(parse)
nom = parse[1:2]
print(nom)
Ajouté : Tu peux même simplifier un peu, sans passer par l'intermédiaire lignes
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#======================================================================================================================
# demography2.py
#===============================================================================================================================
nom1="API.csv" # affecte le fichier "API.csv" à la variable "nom1"
fichier = open(nom1) # pour ouvrir le fichier en mode lecture
# pays = ()
for ligne in fichier: # itérer sur les lignes (parcourir chaque ligne du fichier pour extraire les données qu'on veut)
parse = ligne[:-1].split(',')
print(parse)
nom = parse[1:2]
print(nom)
Dernière modification par pingouinux (Le 20/02/2017, à 06:34)
Hors ligne
#5 Le 20/02/2017, à 12:22
- Bob dit l'Âne
Re : Apprenti python [RESOLU]
Merci Pingouinux,
J'ai testé tes 2 solutions et ça marche.
Juste encore une petite question pour
parse = ligne[:-1].split(',') # ?
et pour corriger
Arménie qui s'affiche Arm\xc3\xa9nie.
Pour info, je suis en train de travailler en me basant sur cette vidéo, en concoctant et en utilisant une fonction "extaction_donnees".
Cordialement
JY
DELL G3 17 3779 - 17,3" FHD IPS - Core i5 8300H - RAM 8Go - 1To DD +128Go SSD - NVIDIA GTX 1050 Ti 4 Go
Ubuntu 22.04.3 LTS Home séparé et partition données
Akoya MD 97860 P7612 Core 2 Duo T6500 NVIDIA Realtek RTL8191SE Wireless LAN GeForce G210M
Ubuntu 16.04 LTS (« Xenial Xerus ») + NFS
Hors ligne
#6 Le 20/02/2017, à 13:06
- pingouinux
Re : Apprenti python [RESOLU]
parse = ligne[:-1].split(',') # ?
ligne[:-1] : Omet le dernier caractère de la ligne '\n'
s.split(',') : Retourne une liste à partir de la chaîne de caractères s, en prenant la virgule comme séparateur
Arménie qui s'affiche Arm\xc3\xa9nie.
C'est correct si tu imprimes les éléments de la liste
print("nom=%s code=%s"%(parse[0],parse[1])
Dernière modification par pingouinux (Le 20/02/2017, à 13:06)
Hors ligne
#7 Le 20/02/2017, à 15:16
- Bob dit l'Âne
Re : Apprenti python [RESOLU]
OK, je te remercie.
A plus
DELL G3 17 3779 - 17,3" FHD IPS - Core i5 8300H - RAM 8Go - 1To DD +128Go SSD - NVIDIA GTX 1050 Ti 4 Go
Ubuntu 22.04.3 LTS Home séparé et partition données
Akoya MD 97860 P7612 Core 2 Duo T6500 NVIDIA Realtek RTL8191SE Wireless LAN GeForce G210M
Ubuntu 16.04 LTS (« Xenial Xerus ») + NFS
Hors ligne
Pages : 1