Bienvenue sur IndexError.

Ici vous pouvez poser des questions sur Python et le Framework Django.

Mais aussi sur les technos front comme React, Angular, Typescript et Javascript en général.

Consultez la FAQ pour améliorer vos chances d'avoir des réponses à vos questions.

TypeError: fork_exec() avec subprocess sous python3.6

0 votes

J'ai composé un petit programme pour lancer en une ligne firefox et sublime text.

#!/usr/bin/env python3.6
# -*- coding:Utf-8 -*-

import subprocess
import os
import time

subprocess.Popen("subl ", shell=True, bufsize=0)
subprocess.Popen("firefox -p Anglais", shell=True, bufsize=0)
time.sleep(2)
os.system("wmctrl -r 'Google Traduction - Mozilla Firefox' -e 0,0,633,1674,386")
os.system("wmctrl -r 'Sublime Text' -e 0,0,0,1674,579")

Sous python3.6, lorsque je lance directement, j'ai droit comme erreur:

    simon@simon-bigPC:~$ python3.6  Programmation/Dev/Projet/Anglais-Translate/englishTR.py 
Traceback (most recent call last):
  File "Programmation/Dev/Projet/Anglais-Translate/englishTR.py", line 8, in <module>
    subprocess.Popen("subl ", shell=True, bufsize=0)
  File "/usr/local/lib/python3.6/subprocess.py", line 707, in __init__
    restore_signals, start_new_session)
  File "/usr/local/lib/python3.6/subprocess.py", line 1260, in _execute_child
    restore_signals, start_new_session, preexec_fn)
TypeError: fork_exec() argument 4 must be tuple, not list

Alors que sous python2.7, cela fonctionne.
J'aimerai comprendre le message d'erreur et savoir si vous avez une idée pour corriger le problème.

Merci d'avance pour votre aide

demandé 8-Jul par rosalia (156 points)

Hm bizarrement cela ne plante pas chez moi. Quelle version exacte de Python 3.6 ?

Votre réponse

Preview

Votre nom à afficher ( en option ):
Vie privée: . Votre adresse de messagerie ne sera utilisée que pour l'envoi de ces notifications .
Vérification anti -spam:
Pour éviter cette vérification à l'avenir, Connectez vous ou inscrivez vous.
...