如果这个问题太明显或以前曾被问过,我想道歉,但我已经坚持这个问题几个小时了。
我正在创建一个程序,该程序获取有关客户的信息列表,并根据由两个值列表组成的单独文件调整其余额。每个列表的第一个值是将要比较的标识号,然后调整列表的其他值。
我获得了IndexError: list index out of range
if i[0] == y[0]:
def computeTransactions(transactions, old_master_list):
transaction_list = []
for y in old_master_list:
for line in transactions:
b = line.split()
print b
transaction_list.append(b)
print transaction_list
for i in transaction_list:
print len(i)
if i[0] == y[0]:
y[2] = float(y[2])
i[1] = float(i[1])
y[2] += i[1]
y[2] = round(y[2], 2)
y[2] = str(y[2])
print ""
print y
我非常感谢您提供的任何帮助。谢谢!
编辑:
我要感谢所有花时间帮助我的人,我找到了答案。事实证明,"交易" (这是我打开的文件)在末尾添加了一个空格,所以我在transaction_list
的末尾有一个额外的空列表。一个简单的transaction_list = filter(None, transaction_list)
实际上解决了我的问题。如果这是浪费时间,我很抱歉
答案 0 :(得分:0)
您应该多次使用select device_id, serial_number, min(imei) as imei1,
case when count(*) > 1 then max(imei) end as imei2
from tablename
group by device_id, serial_number
,而您只应该消费一次:
<xsl:value-of select="substring-after(/a/@name,'http://')"/>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="no" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="/">
<a>
<xsl:attribute name="name">
<xsl:value-of select="substring-after(/a/@name,'http://')"/>
</xsl:attribute>
</a>
</xsl:template>
</xsl:stylesheet>