【问题标题】:Python - angle brackets in command line argumentsPython - 命令行参数中的尖括号
【发布时间】:2021-05-29 23:19:06
【问题描述】:

如何将尖括号 <> 作为命令行参数传递给我的 Python 程序?

例如:

python main.py <div>HelloWorld<div>

目前它给了我一个错误,因为终端将 > 解释为重定向。

我知道用引号括起来会起作用 - 例如:

python main.py "<div>HelloWorld<div>"

有没有办法在没有引号的情况下完成这项工作?

【问题讨论】:

  • 引用是完成此任务的正确方法。为什么不这样做?
  • 为什么你认为"<div>HelloWorld<div>" 有问题?你测试了吗?
  • 可以使用斜线,但你为什么想要呢?引用非常好且可读。
  • 问题在于<>shell 元字符,并且会在您的程序运行之前 被解释——所以它们必须逃脱。在main.py 中您无能为力解决此问题。
  • 没有办法在 main.py 中解决这个问题,因为问题甚至在它到达 main.py 之前就发生了。正如 costaparas 所说,这是由 shell 处理的。

标签: python arguments command-line-arguments argparse


【解决方案1】:

转义特殊字符:

python main.py \<div\>HelloWorld\<div\>

其他人建议将参数用引号括起来,这样更易​​读且更简单恕我直言。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-19
    • 2010-09-20
    • 1970-01-01
    • 2011-02-19
    • 1970-01-01
    相关资源
    最近更新 更多