例如,我有兩個元素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