gpt4 book ai didi

带有 "-c"和缩进问题的 Python 解释器调用

转载 作者:太空狗 更新时间:2023-10-30 02:50:08 27 4
gpt4 key购买 nike

我正在尝试使用“-c”参数调用 Python,以允许我轻松运行一些任意 Python 代码,如下所示:python.exe -c "for idx in range(10): print idx"现在这段代码在我的批处理文件中工作正常,但是,当我想做更多的事情时,我遇到了问题。

考虑以下 Python 代码:

foo = 'bar'
for idx in range(10):
print idx

这会在标准输出上给你 0-9。但是,如果我将其折叠成一行,使用分号作为分隔符,将得到以下内容:

foo = 'bar';for idx in range(10):    print idx

并尝试使用 python.exe -c 运行它,它引发了 SyntaxError:

C:\Python>python.exe -c "foo = 'bar';for idx in range(10):    print idx"
File "<string>", line 1
foo = 'bar';for idx in range(10): print idx
^
SyntaxError: invalid syntax

有人知道我如何在不切换到单独的 .py 文件的情况下实际使用它吗?

我在 .cmd 批处理文件中通过调用方法运行它,如下所示:

call python.exe -c "blah blah"

生成相同的错误。

最佳答案

您需要输入命令字符串作为多行参数。使用 linux,这就像使用回车键一样简单,例如(注意 bash 添加了 > 字符,我不必输入它们):

$ python -c "foo = 'bar'
> for idx in range(10):
> print idx"

但在 Windows 上,您需要在按回车键之前键入 ^ 键并留下一个空行以获取换行符,例如(更多?cmd 添加)

C:\> python.exe -c "foo = 'bar'^
More?
More? for idx in range(10):^
More?
More? print idx"

关于带有 "-c"和缩进问题的 Python 解释器调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4555010/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com