Je lis sur le sous-processus et joue avec du code. J'utilise Windows 7 avec Python3.6Pourquoi stdout imprime-t-il une chaîne vide dans ce cas?
import subprocess
process = subprocess.Popen(['notepad', 'C:\\Users\Amit\Downloads\InsiderTrades.txt'],stdout=subprocess.PIPE, stderr=subprocess.PIPE)
#I'm opening a text file which has a list of stock tickers
stdout1, stderr1 = process.communicate()
print(stdout1.decode('ASCII'))
La sortie je reçois est rien ou
b''
comme valeur pour stdout1.
I "m pas tout à fait sûr de ce que communicate
est fournir en sortie dans ce cas. j'avais l'impression qu'il
serait sortie le texte de mon fichier texte ou il quoi que ce soit de sortie de type I dans le fichier texte. J'ai essayé de taper dans le fichier texte ouvert récemment aussi, mais je reçois toujours la même sortie, b''
Alors qu'est-ce que je reçois une chaîne vide, en dépit de taper quelque chose dans le tout nouveau fichier texte.
Si vous tapez cette commande dans une console cmd, elle ouvre le bloc-notes et n'imprime rien. C'est pareil ici. –
Vous ne savez pas exactement ce que vous attendez de cela, mais le bloc-notes ne prend tout simplement pas ses entrées de stdin et ne sort pas sur stdout. C'est un programme GUI. – pvg