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 :

rename une liste de fichier


Sujet :

Python

  1. ###raw>post.musername###
    Futur Membre du Club
    rename une liste de fichier
    Bonjour, je voudrai savoir comment renommer chaque images crée lorsque que j'appuie sur un bouton qui éxécute : screenshot_exec() 1 clique = 1 image créée
    Exemple : 1.png, 2.png, 3.png
    Cependant, je peine à comprendre comment nommer chaque screenshot crée lorsque j'appuie sur le bouton exécutant le code ci-dessous.
    merci d'avance pour vos réponses et votre aide.



    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
     def screenshot_exec ():
        path_save_pictures = '{}\\Users\\{}\\Nouveau dossier\\{}.png'.format(hdd_letter, username_win_id)
        myScreenshot = pyautogui.screenshot()        
        myScreenshot.save(path_save_pictures)
      0  0

  2. #2
    Membre actif
    Bonjour,
    illustration:
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    import os
    liste_de_fichiers = ["imagetruc.png", "imagechouette.png", "imagebirk.jpg"]
    def screenshot_exec():
        for index,fichier in enumerate(liste_de_fichiers):
            nom , extention = fichier.split('.')
            print(f'os.rename({nom}.{extention}, image{index}.{extention})')
            #os.rename(f"{nom}.{extention}", f"image{index}.{extention}")
    screenshot_exec()


    On pourrait faire aussi (juste pour montrer une autre approche):
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    liste_de_fichiers = ["imagetruc.png", "imagechouette.png", "imagebirk.jpg"]
    fichiers = iter(liste_de_fichiers)
    compteur = iter(range(len(liste_de_fichiers)))
     
    def screenshot_exec():
        for fichier in fichiers:
            nom , extention = fichier.split('.')
            print(f'os.rename({nom}.{extention}, image{next(compteur)}.{extention})')
    screenshot_exec()

  3. #3
    Futur Membre du Club
    Merci de votre réponse ! Cependant, j'ai commis une erreur dans ma problématique. il n'y a pas de liste à utiliser à proprement parler. je souhaite juste que mes images soient renommées par un nombre + .png . Lorsque j'exécute le programme dans son ensemble. Il n'y a pas de photos. Chacune d'elles se créeront lorsque j'appuierai sur le bouton pour exécuter : screenshot_exec(). 1 clique = 1 photo = n.png n = [0;+∞[ Je vous prie de m'excuser pour mon erreur.

  4. #4
    Expert éminent sénior
    Salut,

    [QUOTE=KABOULEHHHH;11629599]je souhaite juste que mes images soient renommées par un nombre + .png . Lorsque j'exécute le programme dans son ensemble. Il n'y a pas de photos. Chacune d'elles se créeront lorsque j'appuierai sur le bouton pour exécuter : screenshot_exec(). 1 clique = 1 photo = n.png n = [0;+∞[[/QUOTE]

    Une variable qui s'incrémente à chaque appel de la fonction ne pourra être que "globale" histoire de survivre au différents appels de la fonction et mémoriser le nième appel.

    Après si vous ne savez pas ce que c'est, ouvrez votre tuto. préféré aux chapitres sur les fonctions. C'est là qu'on en parle....

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Expert éminent sénior
    Bonjour
    Citation Envoyé par wiztricks Voir le message
    Une variable qui s'incrémente à chaque appel de la fonction ne pourra être que "globale" histoire de survivre au différents appels de la fonction et mémoriser le nième appel.
    Non, on peut faire sans

    Code python :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    def f(n=[0,]):
    	print(n[0])
    	n[0]+=1
    # f
     
    f()
    f()
    f()
    f()
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site

###raw>template_hook.ano_emploi###