【问题标题】:How to use the -c flag in python如何在python中使用-c标志
【发布时间】:2014-11-26 19:47:50
【问题描述】:

我在 python 文档中注意到有一个 -c 标志。这是 python 文档所说的:

命令中执行Python代码。 command 可以是一个或多个 由换行符分隔的语句,带有重要的前导空格 和普通的模块代码一样。

文档中没有示例,我无法弄清楚如何进行这项工作,以及在什么情况下它可能会有所帮助。

有人知道吗?

【问题讨论】:

    标签: python


    【解决方案1】:

    只需将常规 Python 代码作为参数传递给标志:

    python -c 'print 1
    print 2'
    

    导入模块有效,空行也可以:

    python -c '
    import pprint
    pprint.pprint(1)
    '
    

    使用此功能时,请注意 shell 引用(和缩进),并请记住,如果您在几个 shell 脚本之外使用此功能,则可能做错了。

    【讨论】:

    • 谢谢。我不知道我需要用''引用。顺便说一句,我如何输入换行符?
    • @Jason 需要引号以防止您的外壳以某种方式解释/弄乱您的 Python 代码。您可以通过按键盘上的 enter 输入换行符。如果您先输入引号,任何终端都会将其作为换行符输入。
    • 当我按下回车键时,它会终止我的输入并开始执行。跟平台或版本有关系吗?我正在使用带有 python 2.7 的 Ubuntu
    • @Jason 您可能忘记在输入之前输入引号。如果没有,请在此处粘贴您的终端内容。
    • 这是我的终端:srf10mwu@cru-13gx ~/scripts/tools: python -c 'print 10 Unmatched '. srf10mwu@cru-13gx ~/scripts/tools: python -c 'print 10' 10 srf10mwu@cru-13gx ~/scripts/tools:
    【解决方案2】:

    最简单的例子

    python -c "print 'example'"
    

    只要你的程序只有一行代码,例如列表推导等,它就很有用。

    另一个例子可以是

    python -c "a='example';print a"
    

    可以看到,多条语句用;隔开

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-19
      相关资源
      最近更新 更多