从argv字符串中移除括号
我刚开始学习Python,正在使用Raspbian系统,并且是通过这种方式来运行我的Python脚本:
python testarguments.py "Here is a test parameter"
我的脚本:
import sys
print sys.argv[1:]
输出结果:
['Here is a test parameter']
问题:
有没有什么简单有效的方法可以去掉sys.argv
输出中的开头和结尾的括号以及单引号呢?
3 个回答
0
其他回答已经解决了你的实际问题,但如果你将来遇到一个字符串,里面有你想去掉的字符(比如方括号),你可以这样做:
my_str = "['Here is a test parameter']"
my_str.translate(None, "[]")
换句话说,如果你看到的输出实际上是一个字符串,你可以使用translate方法来得到你想要的结果。
2
这个 :
可以理解为“从这里开始往后”,所以它会返回一个 list
(列表)。你只需要这样做:
>>> sys.argv[1]
'Here is a test parameter'
这样就会返回你在运行程序时传入的第一个参数,而不是列表中的一部分。
2
你正在使用切片操作:
sys.argv[1:]
这意味着从序列的第1个元素开始,一直到最后一个元素都获取到。这就是为什么它会创建一个新的列表。
如果你只想获取第一个元素,可以这样做:
sys.argv[1]
这样可以获取到索引为1的元素。