gpt4 book ai didi

python - 如何将字符串句子作为命令行参数传递

转载 作者:太空宇宙 更新时间:2023-11-04 08:43:42 25 4
gpt4 key购买 nike

以下代码采用可在 Python 端检索的单个字符串值。如何用带空格的句子字符串来做到这一点?

from sys import argv

script, firstargument = argv

print "The script is called:", script
print "Your first variable is:", firstargument

要运行它,我会像这样传递参数:

$ python test.py firstargument

哪个会输出

The script is called:test.py
Your first variable is:firstargument

示例输入可以是“Hello world the program runs”,我想将其作为命令行参数传递并存储在“第一个”变量中。

最佳答案

argv 将是 shell 解析的所有参数的列表。

如果我做

#script.py
from sys import argv
print argv

$python script.py hello, how are you
['script.py','hello','how','are','you]

脚本的名称始终是列表中的第一个元素。如果我们不使用引号,每个单词也会成为列表的一个元素。

print argv[1]
print argv[2]
$python script.py hello how are you
hello
how

但是如果我们使用引号,

$python script.py "hello, how are you"
['script.py','hello, how are you']

所有单词现在都是列表中的一项。所以做这样的事情

print "The script is called:", argv[0] #slicing our list for the first item
print "Your first variable is:", argv[1]

或者如果您出于某种原因不想使用引号:

print "The script is called:", argv[0] #slicing our list for the first item
print "Your first variable is:", " ".join(argv[1:]) #slicing the remaining part of our list and joining it as a string.

$python script.py hello, how are you
$The script is called: script.py
$Your first variable is: hello, how are you

关于python - 如何将字符串句子作为命令行参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42625103/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com