Ouvrir un fichier/programme avec Python

clei68 -  
mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour, je commence le langage Python et j'aimerais savoir quelque chose.
En effet, je voudrais ouvrir un fichier/programme via Python comme dans l'invite de commande quand on tape :
start C:/Users/.../Desktop/fichier1.txt

Le problème c'est que je me suis renseigné un peu partout sur les forums et sites et que je n'arrive pas à avoir quelque chose de concret.
Merci d'avance !

2 réponses

  1. mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   7 944
     
    Bonjour,

    Il faut distinguer "ouvrir un programme" qu'il faudrait plutôt nommer "exécuter un programme", et "ouvrir un fichier" par exemple en vue de lire son contenu. Note qu'un programme est un lui-même fichier et que l'ouvrir ne correspond pas à la même opération que l'exécuter.

    Pour exécuter un programme depuis python, je te renvoie au message de jordane45. Je te recommande plutôt
    subprocess.Popen
    .

    from subprocess import Popen, PIPE
    
    cmd = ['ls', '-l']
    dot = Popen(cmd, stdin=PIPE, stdout=PIPE, stderr=PIPE)
    stdoutdata, stderrdata = dot.communicate(s_dot.encode("utf-8"))
    print(stdoutdata)
    print(stderrdata)
    


    Pour ouvrir un fichier tu peux procéder comme suit :

    filename = "toto.txt"
    with open(filename) as f:
      for line in f.readlines():
        print(line.strip())


    Bonne chance
    1
  2. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832
     
    Bonjour,

    https://blog.finxter.com/how-to-call-an-external-command-in-python/


    To call an external command in a Python script, use any of the following methods:
    subprocess.call() function
    subprocess.run() function
    subprocess.Popen Class
    os.system() function
    os.popen() function

    0