相关疑难解决方法(0)

子进程中'shell = True'的实际含义

我用subprocess模块调用不同的进程.但是,我有一个问题.

在以下代码中:

callProcess = subprocess.Popen(['ls', '-l'], shell=True)
Run Code Online (Sandbox Code Playgroud)

callProcess = subprocess.Popen(['ls', '-l']) # without shell
Run Code Online (Sandbox Code Playgroud)

两者都有效.阅读文档后,我开始知道这shell=True意味着通过shell执行代码.这意味着在缺席的情况下,该过程将直接启动.

那么我应该更喜欢我的情况 - 我需要运行一个进程并获得其输出.从shell内部或外部调用它有什么好处.

python subprocess

236
推荐指数
5
解决办法
14万
查看次数

是否有独立于平台的os.startfile()?

我想在几个平台(包括Mac OS)上运行程序,所以我尽量保持它与平台无关.我自己使用Windows,我有一条线os.startfile(file).这适用于我,但不适用于其他平台(我在文档中读到,我没有自己测试过).

是否有适用于所有平台的等效产品?

顺便说一下,该文件是一个.wav文件,但我希望用户能够使用他们的标准媒体播放器,这样他们就可以暂停/回放文件.这就是我使用的原因os.startfile().我也许可以使用允许播放/暂停/倒带媒体文件的库.

python platform

22
推荐指数
1
解决办法
1万
查看次数

如何使用标准应用程序打开文件?

我的应用程序将PDF打印到临时文件.如何使用Python中的默认应用程序打开该文件?

我需要一个解决方案

  • 视窗
  • Linux(Ubuntu和Xfce,如果没有更通用的话.)

有关

python linux windows

21
推荐指数
3
解决办法
2万
查看次数

使用记事本打开文本文件作为python中的帮助文件?

我想为我的简单程序的用户提供打开帮助文件的机会,以指导他们如何充分利用我的程序.理想情况下,我想在我的GUI上有一个蓝色的小帮助链接,可以随时点击,导致.txt文件在本机文本编辑器中打开,例如记事本.

有一个简单的方法吗?

谢谢!

python

17
推荐指数
3
解决办法
4万
查看次数

如何在Python中打开外部程序中的文件?

我想知道如何在记事本和图片查看器等程序中打开文件,具体取决于文件的扩展名.我在Windows上使用Python 3.3.

我做了一些研究,人们提到了一个名为的模块Image,但是当我尝试导入这个模块时,我得到了一个ImportError.

这是我到目前为止所拥有的:

def openFile():
    fileName = listbox_1.get(ACTIVE)
    if fileName.endswith(".jpg"):
        fileName.open()
Run Code Online (Sandbox Code Playgroud)

我还将需要在记事本中打开HTML和JSON文件.

python

14
推荐指数
3
解决办法
5万
查看次数

Lauch默认编辑器(如'webbrowser'模块)

有没有一种简单的方法可以从Python命令行工具中获取系统默认编辑器,比如webbrowser模块?

python command-line editor

13
推荐指数
1
解决办法
7778
查看次数

使用Python打开Word文档

我试图在Python中自动打开Word文档.我对编程非常陌生,我听说这个网站帮助那些遇到麻烦的人.

我看过各种问题,发现了这个:

DummyFile = path_to_docx
with open(DummyFile) as f:
    source_stream = io(f.read())
document = doc(source_stream)
source_stream.close()
Run Code Online (Sandbox Code Playgroud)

但是当我运行它时,我得到:

 UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 74: character maps to <undefined>
Run Code Online (Sandbox Code Playgroud)

看来这段代码不是我想要的.我相信它正在尝试阅读我的文档并将其放入变量中.不是我想要的.我想要的命令,执行时,将打开Microsoft Word中的word文档

预期结果:

Word文档在Microsoft Word中打开,如下所示:

这里

python docx python-3.x

8
推荐指数
2
解决办法
5822
查看次数

python,windows:使用shlex解析命令行

当你必须拆分一个命令行,例如调用popen时,最好的做法似乎是

Popen

但是RTFM

shlex类可以很容易地为类似于Unix shell的简单语法编写词法分析器...

那么,win32上的正确方法是什么?那么引用解析和POSIX与非POSIX模式呢?最好的问候,马西莫

python windows command-line command-line-arguments shlex

6
推荐指数
1
解决办法
4390
查看次数

使用Windows 7中的默认程序打开PDF

我有一个程序,其中帮助文档位于与.py模块相同的文件夹中的.pdf中.我需要该程序使用系统的默认PDF阅读器打开.pdf.

我在我的程序中使用此代码:

if sys.platform.startswith('darwin'):
    os.system("SlannanHelp.pdf")
elif sys.platform.startswith('linux'):
    os.system("SlannanHelp.pdf")
elif sys.platform.startswith('win32'):
    os.filestart("SlannanHelp.pdf")
Run Code Online (Sandbox Code Playgroud)

但是,当在Windows 7中运行时,我收到以下错误:

回溯(最近通话最后一个):文件 "C:\用户\用户\ MousePaw游戏\ MousePaw实验室\ Slannan\Slannan.py",线1286,在help_event os.filestart( "SlannanHelp.pdf")AttributeError的: '模块'对象没有属性'filestart'

我的猜测是os.filestart可以在NT系统中运行,但不能在Windows 7中运行.是否有适用于Windows 7的命令,或者适用于Windows 7的命令?如果是后者,我如何检查用户是否正在运行NT或7版本的Windows?

提前致谢!

python file sys

3
推荐指数
1
解决办法
7860
查看次数

如何在python中打开mac osx上的文件

我正在尝试使用 eclipse 在 python 中打开 mac 上的文件。

FileName = "/Users/fis/Desktop/installation_guide.txt"
ss = subprocess.Popen(FileName, shell=True)
ss.communicate()
Run Code Online (Sandbox Code Playgroud)

还有os.popen(FileName)。但是文件没有打开。这些代码在 Windows 中运行良好。但是,我不知道mac有什么问题。我想打开一个文件,就像双击windows打开文件一样,而不是像在控制台中读取文件内容和打印一样。文件存在于 Mac 上的桌面位置

python macos subprocess popen

1
推荐指数
1
解决办法
2万
查看次数

在 python 中阻塞直到文件关闭

我设置了 Python 来创建并打开一个 txt 文件 [请参阅在 Python 中使用默认应用程序打开文档],然后我手动对其进行一些更改并关闭。完成后,我希望 Python 打开下一个 txt 文件。我目前已经进行了这样的设置,以便 python 等待我在关闭文件后键入的键命令,并在该键上打开下一个命令供我编辑。

有没有办法让Python在前一个文档关闭后立即打开下一个文档(即跳过让Python等待按键被单击)。...我将重复此任务大约 100,000 次,因此每一分之一秒的点击都会很快累积起来。我基本上想摆脱与 python 的交互,只是让下一个 txt 文件在前一个 txt 文件关闭后自动出现。

我不知道如何做到这一点,但正在思考等待直到先前的文件关闭(不确定是否有办法让 python 能够判断文件是否打开/关闭)。

作为参考,我使用的是 python2.7 和 Windows。

python python-2.7

1
推荐指数
1
解决办法
6825
查看次数