小编Tyl*_*ler的帖子

%s在python格式字符串中的含义是什么?

%sPython的意思是什么?以下代码的作用是什么?

例如...

 if len(sys.argv) < 2:
     sys.exit('Usage: %s database-name' % sys.argv[0])

 if not os.path.exists(sys.argv[1]):
     sys.exit('ERROR: Database %s was not found!' % sys.argv[1])
Run Code Online (Sandbox Code Playgroud)

python

157
推荐指数
6
解决办法
63万
查看次数

python和sys.argv

if len(sys.argv) < 2:
    sys.stderr.write('Usage: sys.argv[0] ')
    sys.exit(1)


if not os.path.exists(sys.argv[1]):
    sys.stderr.write('ERROR: Database sys.argv[1] was not found!')
    sys.exit(1)
Run Code Online (Sandbox Code Playgroud)

这是我正在研究的代码的一部分.第一部分我试图说,如果用户没有输入,python programname something那么它将退出.

第二部分我试图看看数据库是否存在.在这两个地方,我都不确定我是否有正确的方法来写出stderr或不是stderr的sys.argv.

python

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

打印vs stderr

是否有任何具体的优势或劣势要么print还是stderr

python printing stderr

28
推荐指数
3
解决办法
6万
查看次数

IndexError:列表索引超出范围和python

我告诉我的程序打印输出的第53行.这个错误告诉我没有那么多行,因此无法打印出来吗?

python list indexoutofboundsexception

20
推荐指数
4
解决办法
31万
查看次数

如何捕获子进程的stdout输出?

我正在尝试用Python编写程序,并且我被告知要运行.exe文件.当运行此.exe文件时,它会吐出大量数据,我需要在屏幕上打印一行.我很确定我需要使用subprocess.popen或类似的东西,但我是subprocess的新手并且没有任何线索.任何人都有一个简单的方法来完成这项工作?

python subprocess stdout

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

Popen和python

处理一些代码,我从命令提示符运行时遇到错误...

NameError: name 'Popen' is not defined
Run Code Online (Sandbox Code Playgroud)

但我已经导入了两个import osimport sys.

这是代码的一部分

exepath = os.path.join(EXE File location is here)
exepath = '"' + os.path.normpath(exepath) + '"'
cmd = [exepath, '-el', str(el), '-n', str(z)]

print 'The python program is running this command:'
print cmd

process = Popen(cmd, stderr=STDOUT, stdout=PIPE)
outputstring = process.communicate()[0]
Run Code Online (Sandbox Code Playgroud)

我错过了一些基本的东西吗 我不怀疑.谢谢!

python popen

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

Python和if语句

我正在运行一个脚本来为exe文件提供如下语句:

for j in ('90.','52.62263.','26.5651.','10.8123.'):
    if j == '90.':
        z = ('0.')
    elif j == '52.62263.':
        z = ('0.', '72.', '144.', '216.', '288.')
    elif j == '26.5651':
        z = ('324.', '36.', '108.', '180.', '252.')
    else:
        z = ('288.', '0.', '72.', '144.', '216.')

    for k in z:

        exepath = os.path.join('\Program Files' , 'BRL-CAD' , 'bin' , 'rtarea.exe')
        exepath = '"' + os.path.normpath(exepath) + '"'
        cmd = exepath + '-j' + str(el) + '-k' + str(z)

        process=Popen('echo ' + cmd, shell=True, stderr=STDOUT …
Run Code Online (Sandbox Code Playgroud)

python if-statement

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

for python中的语句

当一个exe文件运行时,它打印出一些东西.我试图在下面的一些数字上运行它并打印出第54行(= blah).它说过程没有定义,我真的不确定如何解决这个问题,并将我想要的内容打印到屏幕上.如果有人可以发布一些代码或方法来解决这个问题,非常感谢你!

for j in ('90','52.62263','26.5651','10.8123'):
    if j == '90':
        k = ('0',)
    elif j == '52.62263':
        k = ('0', '72', '144', '216', '288')
    elif j == '26.5651':
        k = (' 324', ' 36', ' 108', ' 180', ' 252')
    else:
        k = (' 288', ' 0', ' 72', ' 144', ' 216')

    for b in k:

        outputstring = process.communicate()[0]
        outputlist = outputstring.splitlines()
        blah = outputlist[53]

        cmd =  ' -j ' + str(j) + ' -b ' + str(b) + …
Run Code Online (Sandbox Code Playgroud)

python

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

for statement和i.find in list

for a in ('90','52.6', '26.5'):
    if a == '90':
        z = (' 0',)
    elif a == '52.6':
        z = ('0', '5')
    else:
        z = ('25')

    for b in z:

        cmd = exepath + ' -a ' + str(a) + ' -b ' + str(b) 
        process = Popen(cmd, shell=True, stderr=STDOUT, stdout=PIPE)

        outputstring = process.communicate()[0]
        outputlist = outputstring.splitlines()

        for i in outputlist:
            if i.find('The student says') != -1:
                print i
Run Code Online (Sandbox Code Playgroud)

处理作业,这是我的代码片段.这个代码上方有一部分,但它所做的只是定义exepath并只是在屏幕上打印exepath.当我运行它时,我没有得到任何错误或任何东西,但程序刚进入命令提示符时结束.为什么?以及如何解决?

编辑:抱歉报价但问题.我更新了代码以解决这个问题,但它仍然没有给我任何回复它只是退出...问题是什么?

python

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