例如,我有两个元素数组array = ['abc','def']。
如何使用一个函数打印整个数组。像这样:print "%s and %s" % array
可能吗?我有预定数量的元素,所以我知道有多少元素。
编辑:
我正在制作一个sql insert语句,所以会有一些凭据,比方说7,在我的例子中它看起来像这样:
("insert into users values(%s, \'%s\', ...);" % array)
答案 0 :(得分:9)
会
print ' and '.join(array)
满足你?
答案 1 :(得分:7)
你也可以
print '{0} and {1}'.format(arr[0],arr[1])
或在你的情况下
print "insert into users values({0}, {1}, {2}, ...);".format(arr[0],arr[1],arr[2]...)
或
print "insert into users values({0}, {1}, {2}, ...);".format(*arr)
快乐? 确保数组的长度与索引匹配..
答案 2 :(得分:2)
您可以使用str.join
:
>>> array = ['abc', 'def']
>>> print " and ".join(array)
abc and def
>>> array = ['abc', 'def', 'ghi']
>>> print " and ".join(array)
abc and def and ghi
>>>
修改强>
我的上述帖子是针对您的原始问题。以下是您编辑的:
print "insert into users values({}, {}, {}, ...);".format(*array)
请注意,{}
的数量必须与array
中的项目数匹配。
答案 3 :(得分:1)
如果输入数组是整数类型,则必须先转换为字符串类型数组,然后使用join
方法加入{{1}或任何你想要的空间。 e.g:
,
答案 4 :(得分:0)
另一种方法是:
print(" %s %s bla bla %s ..." % (tuple(array)))
您需要与数组中一样多的%s
格式说明符。打印函数需要%
后的元组,因此您必须使用tuple()
将数组转换为元组。