pandas读取Excel,使用列表推导式

import pandas as pd
df1=pd.read_excel('C:/Users/Desktop/table1.xlsx',sheet_name='明细')
list1=list(df1['数据列名'].values)
list1
df2=pd.read_excel('C:/Users/Desktop/核查.xlsx',sheet_name='明细')
list2=list(df2['数据列名'].values)
l=[]
for x in list1:
    for y in list2:
        if x!=y:
            l.append(y)
print(set(l))
---------------------------------------------------------------------------

MemoryError                               Traceback (most recent call last)

<ipython-input-9-7490028fef1f> in <module>
      2     for y in list2:
      3         if x!=y:
----> 4             l.append(y)
      5 print(set(l))


MemoryError: 
len(list1)
463790
len(set(list1))
461940
result=[i for i in list2 if i not in list1]
result
print(result.sort())
None
len(result)
91
len(result2)
1
result2=list(set(list1)^set(list2))
len(result)
91
for循环造成内存溢出,列表推导式可以迅速出结果。

猜你喜欢

转载自blog.csdn.net/weixin_44961794/article/details/112801593