首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python -c和“python”

python -c和“python”
EN

Stack Overflow用户
提问于 2012-06-27 12:30:45
回答 4查看 2.2K关注 0票数 9

如果您用while启动脚本,是否有一种在python -c中循环的方法?这似乎与平台或python版本无关.

Linux

代码语言:javascript
复制
[mpenning@Hotcoffee ~]$ python -c "import os;while (True):    os.system('ls')"
  File "<string>", line 1
    import os;while (True):    os.system('ls')
                  ^
SyntaxError: invalid syntax
[mpenning@Hotcoffee ~]$
[mpenning@Hotcoffee ~]$ python -V
Python 2.6.6
[mpenning@Hotcoffee ~]$ uname -a
Linux Hotcoffee 2.6.32-5-amd64 #1 SMP Sun May 6 04:00:17 UTC 2012 x86_64 GNU/Linux
[mpenning@Hotcoffee ~]$

Windows

代码语言:javascript
复制
C:\Users\mike_pennington>python -c "import os;while True: os.system('dir')"
  File "<string>", line 1
    import os;while True: os.system('dir')
                  ^
SyntaxError: invalid syntax

C:\Users\mike_pennington>python -V
Python 2.7.2

C:\Users\mike_pennington>

我已经尝试删除while语句中的括号,但是似乎没有什么可以运行。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-06-27 12:37:32

代码语言:javascript
复制
python -c $'import subprocess\nwhile True: subprocess.call(["ls"])'

将起作用(注意$'...'\n)。

但它可能只适用于bash -我不确定.

票数 10
EN

Stack Overflow用户

发布于 2012-06-27 12:34:20

多行语句可能不会在语句之后开始--在Python中分离; --否则,代码块可能会出现歧义。只需使用行符而不是;。这个“工作”在Linux上:

代码语言:javascript
复制
$ python -c "import os
while True: os.system('ls')"

不知道如何在Windows上输入这些命令,但是为什么不简单地将命令写入一个.py文件,如果它不止一行呢?

票数 5
EN

Stack Overflow用户

发布于 2012-06-27 12:34:30

不知道窗口,如果你只想输入一行,你可以在引号中考虑换行:

代码语言:javascript
复制
% python -c "import os;
while (True):
  os.system('ls')"
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11226252

复制
相关文章

相似问题

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