Transformer une str en int
Répondre à la discussion
Page 1 sur 2 1 DernièreDernière
Affichage des résultats 1 à 30 sur 33

Transformer une str en int



  1. #1
    invite5aaa0f26

    Transformer une str en int


    ------

    Bonjour, cela fait plusieurs jours que je cherche la façon de transformer une str en int.
    Le programme est simple, il s'agit d'un nombre que l'utilisateur doit donner, et je dois le réutiliser pour aller chercher une ligne (correspondant au chiffre donné) dans un fichier .txt.
    Pourriez vous m'expliquer la manière dont cela est possible ?



    Nom : Sans titre.jpg
Affichages : 204
Taille : 105,1 Ko

    -----

  2. #2
    umfred

    Re : Transformer une str en int

    le code tu peux le copier/copier entre balise [ code] [ /code] c'est mieux que le mettre en image (je suppose, la pj n'étant validée au moment où j'écris)

  3. #3
    invite5aaa0f26

    Re : Transformer une str en int

    Code:
    D=int('quelle ligne?')
    int_D=int(D)
    Print (type(D))
    A=opend ('répertoire.txt,'r')
    B=A.readlines()[D]
    A.close()
    print(B)

  4. #4
    invite5aaa0f26

    Re : Transformer une str en int

    Merci ! C'est fait maintenant

  5. A voir en vidéo sur Futura
  6. #5
    albanxiii
    Modérateur

    Re : Transformer une str en int

    Bonjour,

    Si j'ai bien compris, on vous donne une chaîne de caractères, par exemple "36" et vous voulez une fonction qui vous donne un nombre, ici 36.
    En C, on utilise strtoul... J'ai oublié tout ce que je connaissais de python quand j'ai démissionné du travail où je l'avais utilisé mais on trouve des choses en cherchant "python equivalent for strtoul".
    Not only is it not right, it's not even wrong!

  7. #6
    pm42

    Re : Transformer une str en int

    Citation Envoyé par Jenny29 Voir le message
    Merci ! C'est fait maintenant
    Ta 1ère ligne n'a aucun sens : tu fais une demande de conversion en entier de "quelle ligne?"
    Il faut utiliser la fonction input.

  8. #7
    invite5aaa0f26

    Re : Transformer une str en int

    Ok, je vais aller chercher ça dès maintenant !
    Merci beaucoup pour ta réponse

  9. #8
    invite5aaa0f26

    Re : Transformer une str en int

    Oh oui, pardon. J'avais fait plusieurs tests avant de prendre cette capture d'écran. Ce qui fait que j'ai pas fait attention en remodifiant le tout. J'avais bien mis 'input' à la place !

  10. #9
    pm42

    Re : Transformer une str en int

    Citation Envoyé par Jenny29 Voir le message
    Oh oui, pardon. J'avais fait plusieurs tests avant de prendre cette capture d'écran. Ce qui fait que j'ai pas fait attention en remodifiant le tout. J'avais bien mis 'input' à la place !
    Où est ton problème alors ? Parce que int() fait bien la conversion que tu veux.

  11. #10
    invite5aaa0f26

    Re : Transformer une str en int

    Non, cela me transforme ma chaine 'str' en 'type', au lieu de me le mettre en 'int'

  12. #11
    pm42

    Re : Transformer une str en int

    Citation Envoyé par Jenny29 Voir le message
    Non, cela me transforme ma chaine 'str' en 'type', au lieu de me le mettre en 'int'
    Pas du tout. Mais comme tu affiches type(D) au lieu de D, il est possible que tu sois induis en erreur.

  13. #12
    invite5aaa0f26

    Re : Transformer une str en int

    type(D) n'est qu'une 'fonction', ce n'est pas entre guillemets ('') donc ça affiche le type de variable comme ça : <class 'type'> ou <class 'str>

  14. #13
    invite5aaa0f26

    Re : Transformer une str en int

    J'ai testé 2 manière de transformer str en int :
    avec [class] int_D=int(D)[/class]

    Et voilà ce que ça marque :
    Sans titre 1.jpg

    ou avec [class] D=int [/class]

    Et voilà :
    Sans titre.jpg

  15. #14
    pm42

    Re : Transformer une str en int

    Citation Envoyé par Jenny29 Voir le message
    Et voilà ce que ça marque :
    Oui, tu passes D donc une string comme indice de tableau.
    Alors que tu as fait la conversion et mis le résultat dans int_D que tu n'utilises pas. Donc comme déjà dis, ta conversion fonctionne. Que tu ne t'en serves pas est un autre problème.

  16. #15
    invite5aaa0f26

    Re : Transformer une str en int

    Mais je ne veut pas passer 'D' en int, mais le contenu de cette variable.
    Et si la conversion fonctionne, pourquoi dans les 2 cas, quadn je demande de me donner le typer de variable, j'obtiens 'str' ou 'type', au lieu de 'int' ?

    Et quand j'essaye de m'en servir, ça me met une erreur car la variable n'est pas une 'int'

  17. #16
    pm42

    Re : Transformer une str en int

    Tu as une variable D qui contient une string.
    Tu demandes à mettre la conversion de cette string D en int dans une autre variable int_D.

    Donc D reste unt string, int_D contient le résultat de la conversion donc un int.

    Ensuite, tu utilises D dans ton print et ton accès au tableau : les 2 te disent que c'est une string ce qui est normal.

    Ta ligne int_D = int(D) ne va pas changer le contenu de D

  18. #17
    invite5aaa0f26

    Re : Transformer une str en int

    Mais oui c'est vrai ! excuse moi, je crois que j'avais pas réfléchis pour le coup !

    Le problème étant maintenant que, quelque soit le chiffre que je donne, le programme extrait toujours la même ligne de mon fichier .txt (la n°2)...

  19. #18
    umfred

    Re : Transformer une str en int

    remet nous ton dernier code (entre les balises) pour que l'on regarde.

  20. #19
    invite5aaa0f26

    Re : Transformer une str en int

    D'accord, merci !

    Code:
    D=input('Quelle ligne ?')
    int_D=int(D)
    print (type(int_D))
    A=open('répertoire.txt','r')
    B=A.readlines()[int_D]
    A.close()
    print (B)

  21. #20
    umfred

    Re : Transformer une str en int

    A priori il ne devrait pas y avoir de problèmes (sauf si on rentre le numéro d'une ligne supérieur au nombre de ligne du fichier)
    tu es sure que ton fichier répertoire a bien des lignes différentes (que ce n'est pas la même ligne copier/coller plusieurs fois à la suite ?)

  22. #21
    invite5aaa0f26

    Re : Transformer une str en int

    Oui, oui, regarde, ceci est mon fichier texte :
    Nom : Sans titre 1.jpg
Affichages : 129
Taille : 83,3 Ko

  23. #22
    umfred

    Re : Transformer une str en int

    pourquoi ne pas faire un copier/coller du contenu du fichier (ou des 1ères lignes) (ou de mettre ce fichier en pièce jointe) plutôt que de nous envoyer une capture d'écran du dit fichier...

  24. #23
    invite5aaa0f26

    Re : Transformer une str en int

    Je voulais bien montrer la manière dont le fichier .txt était écrit.
    De plus, je ne savais pas que cela changeait quelque chose qu'il s'agisse d'un fichier joint ou d'une capture d'écran. Pourquoi cela vous dérange t-il autant ?

  25. #24
    umfred

    Re : Transformer une str en int

    une pièce jointe ça nécessite une validation des modérateurs, tandis qu'un copier/coller d'un texte, non

    Mais du coup, je ne vois pas ce qui ne marche pas chez toi.

  26. #25
    JPL
    Responsable des forums

    Re : Transformer une str en int

    Citation Envoyé par umfred Voir le message
    une pièce jointe ça nécessite une validation des modérateurs
    Ce qui est fait dans un délai très raisonnable.
    Rien ne sert de penser, il faut réfléchir avant - Pierre Dac

  27. #26
    pm42

    Re : Transformer une str en int

    Citation Envoyé par JPL Voir le message
    Ce qui est fait dans un délai très raisonnable.
    Oui mais dans le cas présent, si je veux essayer vite fait, je ne peux pas copier/coller le texte de son fichier parce que c'est une image et donc valider qu'en effet, cela devrait marcher.
    C'est vraiment peu pratique et je veux bien faire des efforts mais tout ce qu'un primo-posteur peut faire pour simplifier la vie de ceux qui consacrent bénévolement de leur temps à l'aider est le le bienvenu.
    Ceci dit, Jenny29 est plein de bonne volonté, écrit de façon lisible et c'est déjà bien comparé à ce qu'on voit parfois

  28. #27
    umfred

    Re : Transformer une str en int

    Citation Envoyé par JPL Voir le message
    Ce qui est fait dans un délai très raisonnable.
    Quand c'est juste pour voir du texte, c'est déjà trop long comparé à un copier/coller (no offense)

    Je plussoie la remarque de pm42.

    Ceci dit, @Jenny29, tu as toujours le problème que ton code renvoie toujours la ligne n°2 quelque soit la valeur que tu rentres ?

  29. #28
    invite5aaa0f26

    Re : Transformer une str en int

    D'accord, j'essayerais de faire des copiers/ coller de texte dorénavant alors.

    Et non, j'ai toujours le même problème... et je ne comprends toujours pas pourquoi malheureusement.

    Ps: Écrire correctement sur un forum quand je demande de l'aide me paraît évident, cela permet une meilleure compréhension, mais c'est également une marque de respect.

  30. #29
    pm42

    Re : Transformer une str en int

    Citation Envoyé par Jenny29 Voir le message
    Et non, j'ai toujours le même problème... et je ne comprends toujours pas pourquoi malheureusement.
    J'ai essayé ton code sur un fichier de 45 lignes et ça marche parfaitement. Tu devrais essayer avec le debugger de PyScripter : tu mets un point d'arrêt juste après la lecture de B par exemple.
    Ou tu fais ça :
    Code:
    lines = A.readlines()
    print('lines=', lines)
    B = lines[int_D]
    C'est une technique classique pour trouver les bugs : on examine les résultats intermédiaires pour voir à quelle étape on s'est raté.

    Citation Envoyé par Jenny29 Voir le message
    Ps: Écrire correctement sur un forum quand je demande de l'aide me paraît évident, cela permet une meilleure compréhension, mais c'est également une marque de respect.
    On est bien d'accord mais il y a des gens qui n'arrivent vraiment pas à le comprendre. Parfois, ils nous engueulent même

  31. #30
    invite5aaa0f26

    Re : Transformer une str en int

    Ok alors je viens d'essayer, et en effet cela fonctionne désormais ! Merci beaucoup !

    Merci également pour les informations concernant la manière de trouver à quelle étape on s'est trompé, cela m'aidera certainement dans l'avenir !

    On est bien d'accord mais il y a des gens qui n'arrivent vraiment pas à le comprendre. Parfois, ils nous engueulent même
    Oui, ils ne se rendent certainement pas compte que la politesse est de rigueur quand on demande de l'aide bénévolement...

Page 1 sur 2 1 DernièreDernière

Discussions similaires

  1. [Energie] difference entre iron core transformer et ferite core transformer
    Par invite5ea368ff dans le forum Électronique
    Réponses: 3
    Dernier message: 02/11/2016, 12h14
  2. Transformer 230 VAC en 0/10 VDC ?
    Par invited6f3b91c dans le forum Électronique
    Réponses: 1
    Dernier message: 06/07/2014, 19h34
  3. Transformer du 12 v Dc en 3 V Dc
    Par invitea3abd654 dans le forum Électronique
    Réponses: 13
    Dernier message: 14/05/2014, 11h26
  4. Transformer du 12V en 4V... Help!!!!!!!!!
    Par inviteb4a81b7c dans le forum Électronique
    Réponses: 26
    Dernier message: 16/01/2012, 17h09
  5. transformer 12v en 3v
    Par invite4c518e7a dans le forum Électronique
    Réponses: 3
    Dernier message: 23/06/2008, 17h08