如何用Python打印Excel中对应另一列非空的指定列值
提取第二列非空时的第一列值解决方案
你的脚本问题出在空值判断上——Excel里的空单元格在pandas里会被识别为NaN,不是空格字符串,所以dataframe["col2"] != " "这个筛选条件根本匹配不到真正的空值,自然出不来正确结果。另外你导入的xlrd库没实际用到,可以直接删掉。
修正后的代码如下:
import pandas as pd filename='test.xlsx' dataframe = pd.read_excel(filename) # 筛选第二列既不是NaN也不是空字符串的行 filtered_data = dataframe[dataframe["col2"].notna() & (dataframe["col2"] != "")] # 提取第一列并转成数组 result = filtered_data.iloc[:, 0].to_numpy() print(result)
如果想要严格输出[1,3]的列表格式,可以把最后一行改成print(list(result))。
内容的提问来源于stack exchange,提问作者liuxu
相关产品推荐
相关产品推荐

