我正在尝试用已知字符串(例如“NAN”)替换列表中的空字符串。我正在使用以下命令
a = ['','','asdf']
["nan" if x =='' else x for x in a]
该代码在独立使用时可以正常工作,但是当我尝试在我的主代码中使用它时,它无法正常工作。我的主要代码如下:
data = [ ('plant_data.xlsx', 0, []),('sorg.xlsx', 1, ['','','asdf'])]#,('sloc.xlsx', 1, ['307-040N'])];
for fl in data:
filename = fl[0];
filename = filename[:-5];
f = open('IC1_Results\%s.txt' %filename,'w');
if fl[1] == 0:
f.write("All Part Numbers exist");
f.close()
elif fl[1] == 1:
a = fl[2];
print type(a)
["nan" if x == '' else x for x in a]
print fl[2],a
最佳答案
它正在运行,但您只是简单地运行它而没有将输出分配到任何位置。更改行:
fl[2] = ["nan" if x == '' else x for x in a]
或者也许:
a = ["nan" if x == '' else x for x in a]
取决于你想把它存储在哪里......
关于python - 用 NaN 替换列表中的空字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51045771/