在python中通过命令行强制用户输入

时间:2019-03-07 00:36:10

标签: python parsing input command-line args

假设我从命令行运行脚本;

$python hello.py

此hello.py脚本将显示“你好,欢迎光临!”在下一行中,它提示您输入名称。例子。

$python hello.py

"Hello, welcome!"

What is you name?:<here you enter the name and press enter for the program to continue>

相反,我想在调用脚本时解析我的名字。

$python hello.py <do something to parse the name>

我知道我们可以导入sys,并且可以通过args [1]来调用该名称

我想知道是否有一种方法可以不修改代码,也不更改我们通过命令行运行脚本的方式。

1 个答案:

答案 0 :(得分:0)

您可以将答案传递到脚本:

echo "John Smith" | python hello.py

或使用此处字符串:

python hello.py <<<"John Smith"

如果您要提供多行输入,那么这里文档会更容易:

python hello.py <<EOF
Answer to first question
Answer to second question
and so on
EOF