简单的问题。
如果我有这一行:
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])'"))
无济于事.... 我不理解的是什么?
答案 0 :(得分:4)
Python中默认不插入字符串。尝试
("http://ajax.googleapis.com/ajax/services/search/images?v=1.0&q='%s'"
% sys.argv[1])
答案 1 :(得分:0)
是的,为了完整性,有“新格式”,有点像Java的格式字符串,并且使用起来更好。
$ python -c 'import sys; print("yojo{0}".format(sys.argv[1]))' mo
yojomo
如果你只想连接字符串,那么+
运算符就会重载。
print("mystring" + sys.argv[1])