切片??附加列表

2024-09-24 02:22:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我想知道是否有什么是可能的,或者我是否走错了路。你知道吗

我有一个if语句,它正在检查外部文件的条件。然后显示结果(所有这些都有效)。使用结果中显示的数字中的2个,我需要计算一个数量,并将其打印到显示的每个记录的结果旁边。你知道吗

我想要的是:一次打印附加列表1中的每一项,例如打印记录1时,它显示计算的项目1,打印记录2时,它显示计算的项目2

numberofItemsData来自我的程序中的其他代码,这些代码正在拆分、追加和排序我的.txt文件。你知道吗

def opt():
    calc = []

    for i in range (numberOfItems):
        nextRecord = Data[i]
        no1 = (nextRecord[0])
        date = (nextRecord[1])
        no2 = (nextRecord[2])
        no3 = int(nextRecord[3])
        rank = (nextRecord[4])
        no4 = int(nextRecord[5])

        if no4 < no3:
            calc.append(no4 - no3)
            print (no1, "\t\t\t", no2, "\t\t", no3, "\t\t", no4, "\t\t", calc)

Tags: 文件项目代码dataif记录calc语句
1条回答
网友
1楼 · 发布于 2024-09-24 02:22:16

如果我正确理解了这个问题,那么您不希望在最后一行的print调用的末尾有calc,而是希望打印上一行刚刚附加到calc的项。你知道吗

最明显的方法是在打印时重新计算值:

print(no1, "\t\t\t", no2, "\t\t", no3, "\t\t", no4, "\t\t", no4 - no3)

或者,您可以在附加和打印之前将计算另存为变量(如果计算很昂贵,那么这会更有意义,减去两个整数并不重要):

val = no4 - no3
calc.append(val)
print(no1, "\t\t\t", no2, "\t\t", no3, "\t\t", no4, "\t\t", val)

最后一个选项是从calc列表中取回值。您可以通过索引calc-1来获取列表中的最后一项。这是你特别要求的,但没有太多理由这样做:

print(no1, "\t\t\t", no2, "\t\t", no3, "\t\t", no4, "\t\t", calc[-1])

相关问题 更多 >