首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Python调用带一些参数的Mencoder

使用Python调用带一些参数的Mencoder
EN

Stack Overflow用户
提问于 2009-07-07 05:28:55
回答 4查看 2.9K关注 0票数 1

我首先要说的是,我对Python非常、非常陌生。

我曾经有一个Windows/Dos批处理文件,以便使用正确的参数集启动Mencoder,而不必每次都键入它们。

当我试图改进我的脚本时,事情变得一团糟,我决定这将是一个尝试用python编写代码的好机会。

我已经想出来了:

代码语言:javascript
复制
#!/usr/bin/python
import sys, os

#Path to mencoder
mencoder = "C:\Program Files\MPlayer-1.0rc2\mencoder.exe"
infile = "holidays.avi"
outfile = "holidays (part1).avi"
startTime = "00:48:00"
length = "00:00:15"

commande = "%s %s -ovc copy -oac copy -ss %s -endpos %s -o %s"
os.system(commande % (mencoder, infile, startTime, length, outfile))

#Pause
raw_input() 

但这不起作用,windows抱怨"C:\Program“是无法识别的命令。

我试着在这里和那里放一些“\”,但是没有用。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-07-07 05:38:11

Python有两种类型的引号,“and‘,它们是完全相等的。因此,在字符串中获取引号的最简单方法是说”“C:\Program Files\MPlayer-1.0rc2\mencoder.exe”“。

使用原始前缀(即“C:\Program Files\MPlayer-1.0rc2\mencoder.exe"')是个好主意,但这不是这里的错误所在,因为所有反斜杠后面都没有字母作为转义代码。因此,原来的字符串不会因为前面有一个r而发生任何变化。

票数 4
EN

Stack Overflow用户

发布于 2010-01-07 04:20:55

如果在windows上使用,请使用两个引号而不是一个引号。

代码语言:javascript
复制
"\\"
票数 1
EN

Stack Overflow用户

发布于 2011-11-20 15:55:06

我是Python的新手,但我知道每当我看到这个问题时,为了解决它,文件(可执行文件或参数)必须用引号括起来。只需在任何包含空格的文件之前和之后添加\",以区分命令行参数。因此,这也适用于您的outfile变量。代码应如下所示……

代码语言:javascript
复制
#!/usr/bin/python
import sys, os

#Path to mencoder
mencoder = "\"C:\Program Files\MPlayer-1.0rc2\mencoder.exe\""
infile = "holidays.avi"
outfile = "\"holidays (part1).avi\""
startTime = "00:48:00"
length = "00:00:15"

commande = "%s %s -ovc copy -oac copy -ss %s -endpos %s -o %s"
os.system(commande % (mencoder, infile, startTime, length, outfile))

#Pause
raw_input()
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1090503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档