В функции я возвращаю список из двух значений, если значения есть, или пустой список, как показано ниже:
def func1(prikey):
try:
df = somesql
for index, rW in df.iterrows():
retvalue = [rW['id_in_int'],rW['time_in_str']]
except:
retvalue = []
return retvalue
В основном коде я назначаю переменную :
newdf['newid'],newdf['thistime'] = func1(newdf['prikey'])
Но я получил ошибку "недостаточно значений для распаковки (ожидается 2, получено 0)" Итак, в функции я попытался, как показано ниже
retvalue = [[],[]]
Но получил ошибка как «Длина значений не соответствует длине индекса». И retvalue = [0,0]
не дал никакой ошибки, а значение newdf['newid'],newdf['thistime']
равно нулю.
И, когда я пытаюсь проверить, является ли значение равно нулю в следующих строках как if(newdf['newid']==0):
, что дает ошибку: истинное значение Серии неоднозначно. Используйте a.empty, a.bool (), a.item (), a.any () или a.all ()
Я также попытался проверить len()
, что тоже не сработало. Любая помощь приветствуется.