使用列表理解进行查询

0 python loops list-comprehension list python-3.x

我的清单看起来像,

tmp_text = ['col1','','col2','col3','','']
Run Code Online (Sandbox Code Playgroud)

我试图用迭代值替换列表中的空元素,这是我想要获得的输出

tmp_text = ['col1','Nan1','col2','col3','Nan2','Nan3']
Run Code Online (Sandbox Code Playgroud)

基本上我需要用字符串“NaN”替换空元素,但附加一个迭代数。我需要一些关于如何执行此操作的帮助。

AKX*_*AKX 7

您可以使用itertools.count(),它返回数字的迭代器:

>>> import itertools
>>> tmp_text = ['col1','','col2','col3','','']
>>> counter = itertools.count(1)
>>> new_text = [x or f'Nan{next(counter)}' for x in tmp_text]
['col1', 'Nan1', 'col2', 'col3', 'Nan2', 'Nan3']
Run Code Online (Sandbox Code Playgroud)