Bonjour,
je cherche un équialent à os.startfile pour Linux et Mac O$ si cela existe ?
Toute info. est la bienvenue.os.startfile(path[, operation])
Start a file with its associated application.
...
Availability: Windows
Bonjour,
je cherche un équialent à os.startfile pour Linux et Mac O$ si cela existe ?
Toute info. est la bienvenue.os.startfile(path[, operation])
Start a file with its associated application.
...
Availability: Windows
Bonjour rambc,
A vrais dire cela dépend sous Linux :
kfmclient pour KDE, gnome-open sous Gnome, xdg-open si xdg-utils est installé (mais il me semble qu'il recherche les programme précédent) etc...
A vrais dire, et après les avoir recensés, une recherche dans le path de la présence de l'un d'eux me semble une idée.
@+
Par contre je n'avais pas vu cela
Il est possible que cela t'intéresse.
Sous Mac O$, il suffit de faire comme suit :
Il reste à voir comment aborder le problème sous Linux. Je vais étudier les liens que tu m'as donnés.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 import os pathOfTheFile = "screenshot_01.jpg" os.system("open " + pathOfTheFile)
Sous Linux c'est which mais je préfère utiliser quelque chose de plus universel
Merci pour which.
Voici un début de brouillon possible. Qu'en penses-tu ? Je n'ai pas fait la partie qui donne l'OS utilisé mais cela ne pose pas de problème avec les commentaires mis dans le code.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 #! /usr/bin/env python #coding=utf-8 # Source : http://www.developpez.net/forums/d856184/autres-langages/python-zope/general-python/recherche-equivalent-linux-mac-o-os-startfile/#post4886241 # Package which : http://code.google.com/p/which/ pathOfTheFile = "screenshot_01.jpg" import os import sys import which # VALUES OF sys.platform # # Z ! Mac Book Pro : darwin # # Officiel doc. # Windows 'win32' # Windows/Cygwin 'cygwin' # Mac OS X 'darwin' # OS/2 'os2' # OS/2 EMX 'os2emx' # RiscOS 'riscos' # AtheOS 'atheos' actualOS = 'linux' if actualOS == 'mac': os.system("open " + pathOfTheFile) elif actualOS == 'windows': os.startfile(pathOfTheFile) elif actualOS == 'linux': try: which.which("gnome-open") os.system("gnome-open " + pathOfTheFile) except: which.which("kfmclient") os.system("kfmclient " + pathOfTheFile)
Bonjour,
Il en existe d'autres que kfmclient ou gnome-open. A ta place je ferais une liste.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 from platform import system as actualOS if actualOS() == 'Windows': blabla pour Win elif actualOS() == 'Linux': blabla pour Linux elif actualOS() == 'Darwin': blabla pour Mac OS
Partager