带1项的迭代器上的python星形表达式

带1项的迭代器上的python星形表达式,python,Python,我正在使用正则表达式,我收到一个迭代器,其中只有一个对象。在下面的示例中,为了简化,我只使用变量var表示它,变量var是只包含一个项的列表。我想简单地重新创建这个变量,但我不希望它是一个包含单个项的列表,我希望它是列表中包含的项。我找到了一个解决方案,如下所示,但它似乎不自然。我的另一次尝试引起了一个错误。下面我所做的最好的方法是什么 var = [1] _, var = None, *var print(var) # prints 1 *var = *var # raises Error

我正在使用正则表达式,我收到一个迭代器,其中只有一个对象。在下面的示例中,为了简化,我只使用变量var表示它,变量var是只包含一个项的列表。我想简单地重新创建这个变量,但我不希望它是一个包含单个项的列表,我希望它是列表中包含的项。我找到了一个解决方案,如下所示,但它似乎不自然。我的另一次尝试引起了一个错误。下面我所做的最好的方法是什么

var = [1]
_, var = None, *var
print(var) # prints 1
*var = *var # raises Error
要从1项可折叠容器中“展开”元素,请执行以下操作:

[var] = var
如果容器为空或长度超过1,则这将是一种错误情况(特别是
ValueError
异常)