Python 如何使这一行程序在DOS中工作?

Python 如何使这一行程序在DOS中工作?,python,command-line,Python,Command Line,我喜欢使用带-c的python一行程序,但在需要缩进时它是有限的 有什么想法吗 python -c "for x in range(1,10) print x" 只要加上冒号 要解决评论中的问题: 但是,我怎样才能使它工作呢?python-c“导入日历;打印日历.prcal(2009);对于范围(1,10)中的x:print x” 正如你所看到的,这真是太恶心了。我们不能在循环之前导入。为了避免这个问题,我们检查x是否在循环的第一次迭代中,如果是,我们进行导入 更多示例。不是python脚本,

我喜欢使用带-c的python一行程序,但在需要缩进时它是有限的

有什么想法吗

python -c "for x in range(1,10) print x"
只要加上冒号

要解决评论中的问题:


但是,我怎样才能使它工作呢?python-c“导入日历;打印日历.prcal(2009);对于范围(1,10)中的x:print x”

正如你所看到的,这真是太恶心了。我们不能在循环之前导入。为了避免这个问题,我们检查x是否在循环的第一次迭代中,如果是,我们进行导入


更多示例。

不是python脚本,但可能有助于:

python -c "for x in range(1,10): x==1 and __import__('calendar').prcal(2009); print x;"

你不是想要这个吗

python-c“用于范围(1,10)中的x:打印x”

for /L %i in (1, 1, 10) do echo %i

记住“:”

这里有一个解决方案,它不需要在冒号后面加一个语句,这被认为不是很重要

python -c "for x in range(1,10): print x"
还有什么比列表理解更像蟒蛇

python2 -c "print '\n'.join([str(x) for x in range(1,10)])"
但是“真正的”python脚本有什么错呢?(您知道,通过“python foo.py”启动的foo.py)
如果您真的喜欢单行程序,我建议perl:)

@Luis:您无论如何都需要添加冒号,即使不是从命令行运行。但是我如何才能做到这一点?python-c“import calendar;print calendar.prcal(2009);对于范围(1,10)中的x:print x”@Luis:一行程序有限制;你已经找到了极限。做得好。免责声明:我其实并不喜欢这样更好。我在冒号后面加了很多语句。可能是因为我有一个宽屏显示器。
python2 -c "print '\n'.join([str(x) for x in range(1,10)])"
python -c 'print "\n".join(map(str, range(1,10)))'