回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我想要一个数组列表并将它附加到一个字符串上。在</p>
<p>Python 2.7.10,Windows 10</p>
<p>从mySQL表加载列表,输出如下:</p>
<pre><code>skuArray = [('000381001238',) ('000381001238',) ('000381001238',) ('FA200513652',) ('000614400967',)]
</code></pre>
<p>我想把这个列表附加到一个单独的查询中</p>
<p><strong>问题:</strong></p>
^{pr2}$
<p>我得到了一个错误:</p>
<pre><code>TypeError: cannot concatenate 'str' and 'tuple' objects
</code></pre>
<p>我想我需要将字符串格式化为:</p>
<pre><code>'000381001238', '000381001238', '000381001238', 'FA200513652','000614400967'
</code></pre>
<p><strong>最终</strong>字符串需要读取:</p>
<pre><code>query = query+"WHERE ItemLookupCode IN ('000381001238', '000381001238', '000381001238', 'FA200513652','000614400967') "
</code></pre>
<p>我试过以下方法:</p>
<pre><code>skuArray = ''.join(skuArray.split('(', 1))
skuArray = ''.join(skuArray.split(')', 1))
</code></pre>
<p>第二次尝试:</p>
<pre><code>skus = [sku[0] for sku in skuArray]
stubs = ','.join(["'?'"]*len(skuArray))
msconn = pymssql.connect(host=r'*', user=r'*', password=r'*', database=r'*')
cur = msconn.cursor()
query ='''
SELECT ItemLookupCode,Description, Quantity, Price, LastReceived
FROM Item
WHERE ItemLookupCode IN { sku_params }
ORDER BY LastReceived ASC;'''.format(sku_params = stubs)
cur.execute(query, params=skus)
row = cur.fetchone()
print row[3]
cur.close()
msconn.close()
</code></pre>
<p>提前感谢您的帮助!在</p>