我知道如何获得两个平面列表的交集:
b1 = [1,2,3,4,5,9,11,15]
b2 = [4,5,6,7,8]
b3 = [val for val in b1 if val in b2]
Run Code Online (Sandbox Code Playgroud)
要么
def intersect(a, b):
return list(set(a) & set(b))
print intersect(b1, b2)
Run Code Online (Sandbox Code Playgroud)
但是当我必须找到嵌套列表的交集时,我的问题就开始了:
c1 = [1, 6, 7, 10, 13, 28, 32, 41, 58, 63]
c2 = [[13, 17, 18, 21, 32], [7, 11, 13, 14, 28], [1, 5, 6, 8, 15, 16]]
Run Code Online (Sandbox Code Playgroud)
最后我想收到:
c3 = [[13,32],[7,13,28],[1,6]]
Run Code Online (Sandbox Code Playgroud)
你能帮我个忙吗?
在 JVM 语言中,有一种称为“Optional”的数据类型,它表示值可以为 Null/None。通过使用函数的数据类型作为 Option(例如 Option(Int))。调用函数语句可以采取行动。
如何在 Python 中实现类似的方法。我想创建一个函数,函数的返回值应该告诉我 1. 函数成功,所以我有一个返回值。2. 函数未成功,因此没有任何返回值。
我正在研究验证功能.我理解异常用于错误和意外情况,但在验证函数的情况下,如果内部不满足条件,我希望它返回False而不是异常.
问题是在验证结束后,我需要用以下消息引发一个消息窗口:"Tool exited because X condition not met".我的工作流程是返回带有结果和消息的元组:
(True, Y_message)
Run Code Online (Sandbox Code Playgroud)
或(假,X_condition_not_met)
然后:
a, b = result
if not a:
raise_window(message=b)
Run Code Online (Sandbox Code Playgroud)
然而,最近我偶然发现多个答案引发了关于这个问题的争议,我很困惑.例如,有些人说要总是使用异常:从Python中的函数返回多个值的最佳方法是什么?和其他人说元组是最好的方法在python中获得错误与成功的返回值.
如果有人能指出我正确的方向,我将不胜感激.