【发布时间】:2014-03-03 16:48:29
【问题描述】:
我正在尝试使用 echo 将字符串输入到 Python 单行中,然后对字符串执行凯撒密码。
我的导师给我的例子之一就是这个。
~ $ echo "Hello Holly." | python -c "import sys; [print(line) for line in sys.stdin]"
输出应该是:Hello Holly.
当我输入命令时,我得到了什么:
File "<string>", line 1
import sys; [print(line) for line in sys.stdin]
^
SyntaxError: invalid syntax
如果有人能向我指出错误,我将不胜感激。我在 Centos 6 上使用 Python 2.6。
谢谢。
【问题讨论】:
-
使用列表推导简单地将函数应用于列表中的每个项目而不关心结果列表是一个不好的习惯;为你的导师感到羞耻。请改用
... | python -c 'import sys; print "".join(sys.stdin)'。