如何解决如何有效检查集合中变量的存在?
我正在研究一种逻辑,如果3个变量(stationtemps = entries.filter(lambda x: x[1] in ['TMIN','TMAX']).map(lambda x: (x[0],(x[1],x[2]))) # (stationID,(tempkey,value))
max_temp = stationtemps.values().values().max()
min_temp = stationtemps.values().values().min()
def max_seqOp(accumulator,element):
return (accumulator if accumulator[1] > element[1] else element)
def max_combOp(accu1,accu2):
return (accu1 if accu1[1] > accu2[1] else accu2)
def min_seqOp(accumulator,element):
return (accumulator if accumulator[1] < element[1] else element)
def min_combOp(accu1,accu2):
return (accu1 if accu1[1] < accu2[1] else accu2)
station_max_temps = stationtemps.aggregateByKey(('',min_temp),max_seqOp,max_combOp).sortByKey()
station_min_temps = stationtemps.aggregateByKey(('',max_temp),min_seqOp,min_combOp).sortByKey()
min_max_temps = station_max_temps.zip(station_min_temps).collect()
with open('1800_min_max.csv','w') as fd:
writer = csv.writer(fd)
writer.writerows(map(lambda x: list(list(x)),min_max_temps))
,var1
,var2
)中的任何一个为var3
,则某些函数None
不能为叫。我使用的代码是:
foo()
但是它引发了一个异常:if None in {var1,var2,var3}:
print("some variable is None")
。如果我使用它,它可以很好地工作:
unhashable type: 'list'
但是需要注意的是,只有当我在具有许多类和约3000行代码的GUI应用程序中实现此逻辑时,才会发生这种情况。如果我在虚拟脚本中测试此逻辑,则对于if None in [var1,var3]:
print("some variable is None")
集和列表{}
来说,它都可以正常工作。 我似乎无法理解这里发生的事情。我的虚拟脚本是:
()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。