繁体   English   中英

从cmd行或bash脚本将参数传递给python脚本

[英]passing arguments into a python script from cmd line or a bash script

简单的问题。

如果我有这条线:

      j = json.load(urllib.urlopen("http://ajax.googleapis.com/ajax/services/search/images?v=1.0&q= ***$???*** "))

我试图从另一个脚本+ /或命令行将参数传递到该位置。

在bash中它的简单,1美元,2美元等等。

我已经读过(sys.argv [1])并且我错过了它,因为在bash中这么简单的事情似乎需要在python中有这样的冗长。 我试过这个:

      j = json.load(urllib.urlopen("http://ajax.googleapis.com/ajax/services/search/images?v=1.0&q='(sys.argv[1])'"))

无济于事......我不理解什么?

默认情况下,字符串不会在Python中进行插值。 尝试

("http://ajax.googleapis.com/ajax/services/search/images?v=1.0&q='%s'"
 % sys.argv[1])

是的,为了完整性,有“新格式”,有点像Java的格式字符串,并且更好一点。

 $ python -c 'import sys; print("yojo{0}".format(sys.argv[1]))' mo
yojomo

如果你只是想连接字符串,那么+运算符会被重载。

print("mystring" + sys.argv[1])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM