【问题标题】:How can I check the arrays in an array list - Python如何检查数组列表中的数组 - Python
【发布时间】:2021-12-10 23:46:21
【问题描述】:

我有一个数组列表,每个数组有两个值,它们对应于 Excel 的两列。我想知道如何检查每个数组的第二个值?

这是结构...

[['AIGSALPPMM', 'AVIVANVS'], ['DKEPBARCLA', 'DAVIDSNKC'], ['DAVKEMBDBL', 'DAVIDSNKC'], ['DAKEMJPMPB', '']]

使用此代码,我从表中检索值并创建一个列表,该列表返回几个数组,其中包含我需要检查的这两列的值。

#Read the excel and convert to list

df = pd.read_excel('check_counterparties.xlsx', sheet_name = 'counterparties_cdwu', usecols = "A,B", skiprows=4)
dataList =  df.values.tolist()

#    print(dataList)

如您所见,最后一个数组的第二个值为空。

我想要检查每个数组的第二个值是否为空。如果是,我想从这个数组中返回具有第二个空值的两个值。

知道我该怎么做吗?

【问题讨论】:

    标签: python arrays pandas list arraylist


    【解决方案1】:
    main_arr = [['AIGSALPPMM', 'AVIVANVS'], ['DKEPBARCLA', 'DAVIDSNKC'], ['DAVKEMBDBL', 'DAVIDSNKC'], ['DAKEMJPMPB', '']]
    
    for arr in main_arr:
        if arr[1] == '':
           print (arr)
    

    【讨论】:

      【解决方案2】:

      给你:

      your_list = [['AIGSALPPMM', 'AVIVANVS'], ['DKEPBARCLA', 'DAVIDSNKC'], ['DAVKEMBDBL', 'DAVIDSNKC'], ['DAKEMJPMPB', '']]
      new_list = [[val[0], val[0]] if val[-1]=='' else val for val in your_list] 
      new_list
      

      如果我误解了你的问题,请纠正我

      【讨论】:

        【解决方案3】:

        使用列表理解:

        lst = [['AIGSALPPMM', 'AVIVANVS'], ['DKEPBARCLA', 'DAVIDSNKC'], ['DAVKEMBDBL', 'DAVIDSNKC'], ['DAKEMJPMPB', '']]
        
        >>> [sublist for sublist in lst if len(sublist[-1].strip())==0]
        [['DAKEMJPMPB', '']]
        

        【讨论】:

          【解决方案4】:

          使用布尔掩码过滤行:

          df = pd.read_excel('check_counterparties.xlsx', sheet_name='counterparties_cdwu',
                             usecols=['A', 'B'], skiprows=4)
          
          out = df[df['B'] == '']
          

          输出:

          # DataFrame format
          >>> out
                      A B
          3  DAKEMJPMPB  
          
          # List format
          >>> out.to_dict(orient='split')['data']
          [['DAKEMJPMPB', '']]
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2020-09-15
            • 2018-10-06
            • 1970-01-01
            相关资源
            最近更新 更多