如何 return None 用于 python 中的空数组?
how to return None for empty array in python?
我有一个包含两列的数据框。第一列包含一个整数,第二列包含多个项目的列表,也可以为空。
我想要 return 一个包含元组的列表,其中元组的第一部分是来自 col1 的整数,元组的第二部分是来自 col2 的整数,列出所有可能的结果。
输入:
col1 col2
0 909101 [1396920, 3094857]
1 21095887 [8383568]
2 8383568 [21095887]
3 2408689 []
期望的输出:
[(909101, 1396920),
(909101, 3094857),
(21095887, 8383568),
(8383568, 21095887),
(2408689, None)]
到目前为止,我有这些,但它只输出非空输入的元组。
[(df[col1][i],df[col2][i][j])
for i in range(len(df))
for j in range(len(df[col2][i]))]
[(909101, 1396920),
(909101, 3094857),
(21095887, 8383568),
(8383568, 21095887)]
一个快速而肮脏的修复,将第二个循环变成一个普通的 for-each 循环:
[(df[col1][i], x)
for i in range(len(df))
for x in (df[col2][i] or [None])]
我有一个包含两列的数据框。第一列包含一个整数,第二列包含多个项目的列表,也可以为空。 我想要 return 一个包含元组的列表,其中元组的第一部分是来自 col1 的整数,元组的第二部分是来自 col2 的整数,列出所有可能的结果。 输入:
col1 col2
0 909101 [1396920, 3094857]
1 21095887 [8383568]
2 8383568 [21095887]
3 2408689 []
期望的输出:
[(909101, 1396920),
(909101, 3094857),
(21095887, 8383568),
(8383568, 21095887),
(2408689, None)]
到目前为止,我有这些,但它只输出非空输入的元组。
[(df[col1][i],df[col2][i][j])
for i in range(len(df))
for j in range(len(df[col2][i]))]
[(909101, 1396920),
(909101, 3094857),
(21095887, 8383568),
(8383568, 21095887)]
一个快速而肮脏的修复,将第二个循环变成一个普通的 for-each 循环:
[(df[col1][i], x)
for i in range(len(df))
for x in (df[col2][i] or [None])]