Python 在列表中搜索列表

Python 在列表中搜索列表,python,list,python-3.x,Python,List,Python 3.x,我想创建一个代码,可以将一个文件附加到列表中,将其剥离并拆分,然后从Payments.txt中查找符合规则的行,即查找状态为“a”但仍有未付款项的客户。我可以做前两个标准,也可以部分做第三个标准。我可以找到有未付金额的客户,但找不到状态为“a”的客户。我得用一张单子,顺便说一下,不是字典 下面是我的代码: myList = [] Status = "A" myFile = open("Payments.txt") record = myFile.readlines() for line in r

我想创建一个代码,可以将一个文件附加到列表中,将其剥离并拆分,然后从
Payments.txt
中查找符合规则的行,即查找状态为“a”但仍有未付款项的客户。我可以做前两个标准,也可以部分做第三个标准。我可以找到有未付金额的客户,但找不到状态为“a”的客户。我得用一张单子,顺便说一下,不是字典

下面是我的代码:

myList = []
Status = "A"
myFile = open("Payments.txt")
record = myFile.readlines()
for line in record:
    myList.append(line.strip().split(','))
myFile.close()
for z in record:
    details = [[x for x in myList if x[0] == Status], [x for x in myList if x[2] > x[4]]]  #This is were I am having trouble
    if details:
        print(details)
        break
这就是结果:

为什么我在结果开始时得到一个空列表?
Payments.txt
中没有空行

列表结构如下:

['Customer number', 'Date when they joined', 'Total amount', 'Status', 'Amount paid']
试试这个:

details = [[x for x in myList if x[0] == Status and x[2] > x[4]]
[x for x in myList if len(x) == 5 and x[3] == Status and x[2]>x[4]]
我认为您之所以得到一个,是因为您选中了A或大于。请尝试以下操作:

details = [[x for x in myList if x[0] == Status and x[2] > x[4]]
[x for x in myList if len(x) == 5 and x[3] == Status and x[2]>x[4]]
我认为您之所以得到一个,是因为您选中了A或大于。请尝试以下操作:

details = [[x for x in myList if x[0] == Status and x[2] > x[4]]
[x for x in myList if len(x) == 5 and x[3] == Status and x[2]>x[4]]
len(x)=5中,5表示正常列表结构的长度。最好用变量替换它。

尝试以下操作:

details = [[x for x in myList if x[0] == Status and x[2] > x[4]]
[x for x in myList if len(x) == 5 and x[3] == Status and x[2]>x[4]]

len(x)=5中,5表示正常列表结构的长度。最好用变量替换它。

为什么必须使用列表?另外,要说出你在问什么也有点困难。您能否提供更好的示例输入和所需的输出?使用列表是规则的一部分。我希望程序从
myList
中选择适合“A”状态且未支付所有应支付款项的列表。因此,从上面的结果来看,我希望代码返回以
E1234
E5322
开头的列表,因为两者的状态都是“a”,并且支付的金额小于总金额。为什么必须使用列表?另外,要说出你在问什么也有点困难。您能否提供更好的示例输入和所需的输出?使用列表是规则的一部分。我希望程序从
myList
中选择适合“A”状态且未支付所有应支付款项的列表。因此,从上面的结果来看,我希望代码返回以
E1234
E5322
开头的列表,因为两者的状态都是“a”,并且支付的金额小于总金额。它没有返回任何内容它没有返回任何内容我想你的意思是
myList
插入
record
。有了
记录
,什么都没有出现,但有了
我的列表
,它就成功了!谢谢你的意见!对不起,你说得对,这是我的列表,不是唱片:)!不客气!我想你是指
myList
insead of
record
。有了
记录
,什么都没有出现,但有了
我的列表
,它就成功了!谢谢你的意见!对不起,你说得对,这是我的列表,不是唱片:)!不客气!