IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

RechercheV Python ? [Python 3.X]


Sujet :

Python

  1. #1
    Membre habitué
    Homme Profil pro
    Débutant ^^
    Inscrit en
    Juin 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Débutant ^^

    Informations forums :
    Inscription : Juin 2014
    Messages : 10
    Par défaut RechercheV Python ?
    Bonjours tout le monde
    y'a pas longtemps j'ai commençais a apprendre Python et j'ai un petit programme que je voudrais réaliser je vous explique :
    dans un fichier Excel j'ai 3 colonnes :

    -Hauteur
    -A301
    -A302

    (ça représente un Bac de remplissage Chaque Hauteur renvois a une valeur sur la même linge pour A301 et A302 qui représente leur volume et qui bien sur une valeur que j'ai !)

    j'aimerais pouvoir taper la Hauteur et recevoir comme résultat le volume de A301 et le volume de A302 pour mieux comprendre je vous est mis un échantillon de ce fichier Excel avec 40 linge vu que le fichier o complet vas a plus de 16000 linge d'ou l'utilité de la recherche
    ( car je suis amené a recevoir la Hauteur puis chercher le volume qui lui correspond dans les deux bacs pour les envoyer )
    je crois que le module Xlrd peut satisfaire mes besoin mais j'ai pas réussis a l'utiliser comme il faut

    Voila le fichier : Baremage.xlsx

    Ps : j'ai la version 3.4 de Python et aussi la 2.7.10 mais je prefere la 3.X vu que j'ai appris les base avec

    Merci de m'accorder votre temps et votre patience !

  2. #2
    Membre éprouvé
    Homme Profil pro
    employé
    Inscrit en
    Mars 2015
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : employé

    Informations forums :
    Inscription : Mars 2015
    Messages : 75
    Par défaut
    Salut,

    Tu peux passer par un dico de cette façon là c'est à titre d'exemple et te permet de voir les deux volumes contenu dans ta hauteur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    volume = "A3"
    hauteur = "Hauteur"
     
    dico={}
    for i in range(50):
        dico[hauteur+str(i)]=("{}{}".format(volume,i),"{}{}".format(volume,i+1))
    print(dico)
    {'Hauteur22': ('A322', 'A323'), 'Hauteur35': ('A335', 'A336'), 'Hauteur0': ('A30', 'A31'), 'Hauteur49': ('A349', 'A350'), 'Hauteur47': ('A347', 'A348'), 'Hauteur34': ('A334', 'A335'), 
    'Hauteur32': ('A332', 'A333'), 'Hauteur8': ('A38', 'A39'), 'Hauteur27': ('A327', 'A328'), 'Hauteur42': ('A342', 'A343'), 'Hauteur45': ('A345', 'A346'), 'Hauteur48': ('A348', 'A349'), 
    'Hauteur28': ('A328', 'A329'), 'Hauteur14': ('A314', 'A315')....etc...}
     
    print(dico["Hauteur13"])
    ('A313', 'A314')
    En espérant t'avoir aidé.

  3. #3
    Membre habitué
    Homme Profil pro
    Débutant ^^
    Inscrit en
    Juin 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Débutant ^^

    Informations forums :
    Inscription : Juin 2014
    Messages : 10
    Par défaut
    Citation Envoyé par papyfouette Voir le message
    Salut,

    Tu peux passer par un dico de cette façon là c'est à titre d'exemple et te permet de voir les deux volumes contenu dans ta hauteur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    volume = "A3"
    hauteur = "Hauteur"
     
    dico={}
    for i in range(50):
        dico[hauteur+str(i)]=("{}{}".format(volume,i),"{}{}".format(volume,i+1))
    print(dico)
    {'Hauteur22': ('A322', 'A323'), 'Hauteur35': ('A335', 'A336'), 'Hauteur0': ('A30', 'A31'), 'Hauteur49': ('A349', 'A350'), 'Hauteur47': ('A347', 'A348'), 'Hauteur34': ('A334', 'A335'), 
    'Hauteur32': ('A332', 'A333'), 'Hauteur8': ('A38', 'A39'), 'Hauteur27': ('A327', 'A328'), 'Hauteur42': ('A342', 'A343'), 'Hauteur45': ('A345', 'A346'), 'Hauteur48': ('A348', 'A349'), 
    'Hauteur28': ('A328', 'A329'), 'Hauteur14': ('A314', 'A315')....etc...}
     
    print(dico["Hauteur13"])
    ('A313', 'A314')
    En espérant t'avoir aidé.
    Merci beaucoup pour ta réactivité

    1- vu que j'ai plus de 16000 linge j'aimerais relier ce programme avec le fichier excel a l'aide d'un possible module comme Xlrd
    2- Désole mais j'ai pas trop compris l'utilité de ton code dans ma situation vu que je ne peut pas entrer mes 16000 valeur a la mains je vais me réexpliquer :

    1/-J'entre une Hauteur a l'aide d'une probable fonction input("Entrer la Hauteur :") puis "Entrée"
    2/-je reçois comme réponse la valeur de A301 qui est sur la même linge que cette hauteur
    3/-je rentre une nouvelle Hauteur comme 1/ et je reçois la valeur de A301 qui est sur la même linge que cette hauteur de nouveau ...ect

    c'est pas un problème si je dois crée une fonction pour chaque Bacs exemple :

    une fonction pour -Hauteur et A301
    une fonction pour -Hauteur et A302

  4. #4
    Membre habitué
    Homme Profil pro
    Débutant ^^
    Inscrit en
    Juin 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Débutant ^^

    Informations forums :
    Inscription : Juin 2014
    Messages : 10
    Par défaut Une petit aide Svp :( ?
    y'a quelqu’un :'( ^^' ?

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    553
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2010
    Messages : 553
    Par défaut
    Salut,

    si j'en croit cette page, tu vas avoir du mal à travailler avec des fichiers .xsl en utilisant xlrd.
    tu devras plus probablement te tourner vers openpyxl.

    une autre solution, vu la simplicité du fichier excel, c'est de le convertir en CSV. CSV étant un format texte ultra simple, ça sera beaucoup plus facile de l'utiliser avec Python et t'auras même pas besoin de module pour Excel.

  6. #6
    Membre émérite
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2013
    Messages
    485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2013
    Messages : 485
    Par défaut
    Si tu veux utiliser Excel via Python, tu peux aussi installer l'extension Win32 de Python et piloter Excel via les API ActiveX
    => http://www.icodeguru.com/WebServer/P...Win32/ch05.htm

    Seul limitation: avoir Excel sur le PC

  7. #7
    Membre habitué
    Homme Profil pro
    Débutant ^^
    Inscrit en
    Juin 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Débutant ^^

    Informations forums :
    Inscription : Juin 2014
    Messages : 10
    Par défaut
    Citation Envoyé par Tryph Voir le message
    Salut,

    si j'en croit cette page, tu vas avoir du mal à travailler avec des fichiers .xsl en utilisant xlrd.
    tu devras plus probablement te tourner vers openpyxl.

    une autre solution, vu la simplicité du fichier excel, c'est de le convertir en CSV. CSV étant un format texte ultra simple, ça sera beaucoup plus facile de l'utiliser avec Python et t'auras même pas besoin de module pour Excel.
    Ah ça semble effectivement plus intéressant ! je vais essayer t'aurait pas un bout de fil par ou je dois commençais et merci ^^

  8. #8
    Membre habitué
    Homme Profil pro
    Débutant ^^
    Inscrit en
    Juin 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Débutant ^^

    Informations forums :
    Inscription : Juin 2014
    Messages : 10
    Par défaut
    Citation Envoyé par Laurent 1973 Voir le message
    Si tu veux utiliser Excel via Python, tu peux aussi installer l'extension Win32 de Python et piloter Excel via les API ActiveX
    => http://www.icodeguru.com/WebServer/P...Win32/ch05.htm

    Seul limitation: avoir Excel sur le PC
    Merci Laurent je vais lire ça tout de suite !

  9. #9
    Membre habitué
    Homme Profil pro
    Débutant ^^
    Inscrit en
    Juin 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Débutant ^^

    Informations forums :
    Inscription : Juin 2014
    Messages : 10
    Par défaut Voila !
    C'est bon j'ai trouver une reponse dans un autre forum et voila :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    #Importation des tableau :
    from xlrd import open_workbook
    xl_workbook = open_workbook('C:\\Users\\ammar\\Desktop\\PythonAMS\\N.xlsx')
    xl_sheet = xl_workbook.sheet_by_index(0) # you only have one sheet in your file
    data = {}
    for row_index in range(1, xl_sheet.nrows) : # 0 = header
        row = xl_sheet.row(row_index)
        data[int(row[0].value)] = [int(value.value) for value in row[1:]]
     
    #Demande de tirage :
    Hauteur = int(input("Entrer la hauteur : "))
    print (data[Hauteur])
    Merci pour vos réponse !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [langage] traduction d'un fonction python en perl
    Par ay_pepito dans le forum Langage
    Réponses: 3
    Dernier message: 04/12/2007, 15h06
  2. CORBA & PYTHON
    Par stan91stan dans le forum CORBA
    Réponses: 5
    Dernier message: 10/06/2004, 12h32
  3. module .so pour python... ?!
    Par totoetlititi dans le forum Langages de programmation
    Réponses: 2
    Dernier message: 09/03/2004, 14h51
  4. [Lien]erreur dans mon programme python
    Par durnambule dans le forum Général Python
    Réponses: 11
    Dernier message: 29/01/2004, 14h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo