例如,我有两个元素array = ['abc','def']的数组。 如何用一个函数打印整个数组。像这样:print "%s and %s" % array
这可能吗?我有预定数量的元素,所以我知道会有多少元素。在一个打印函数中的Python打印数组
编辑:
我想提出一个SQL INSERT语句,这样会有一些凭据,让我们说7,并在我的例子就应该是这样的:
("insert into users values(%s, \'%s\', ...);" % array)
例如,我有两个元素array = ['abc','def']的数组。 如何用一个函数打印整个数组。像这样:print "%s and %s" % array
这可能吗?我有预定数量的元素,所以我知道会有多少元素。在一个打印函数中的Python打印数组
编辑:
我想提出一个SQL INSERT语句,这样会有一些凭据,让我们说7,并在我的例子就应该是这样的:
("insert into users values(%s, \'%s\', ...);" % array)
你也可以做
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)
幸福吗? 确保长度的数组索引匹配..
将
print ' and '.join(array)
满足你吗?
您可以使用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
项目的数量相匹配。
如果输入数组是整型,那么你必须先转换成字符串类型数组,然后使用join
方法,通过任何你想要的,
或空间加盟。 e.g:
>>> arr = [1, 2, 4, 3]
>>> print(", " . join(arr))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: sequence item 0: expected string, int found
>>> sarr = [str(a) for a in arr]
>>> print(", " . join(sarr))
1, 2, 4, 3
>>>
另一种方法是:
print(" %s %s bla bla %s ..." % (tuple(array)))
,你因为有数组中需要尽可能多的%s
格式说明。打印功能需要%
之后的元组,因此您必须使用tuple()
将数组转换为元组。
这是更有可能的东西,我正在寻找,但如果它可能只是把一个数组在末尾 – jonjohnson
是的,这是我一直在寻找! – jonjohnson