将列表解析为变量和子列表 - pythonic 方式

parse a list into variable and sublist - pythonic way

我正在使用此脚本将一个列表解析为一个变量和另一个列表:

b=[' 687.3774', ' 478.6', ' 47', ' 58', ' 96.90']
c,d=b[0],b[1:]

它总是第一个被分隔的元素,这段代码工作正常,但是,它在右侧重复列表 b。这不是 问题 但当我的 bline.replace('*',',').replace(' ',',').split(',') 这样大的时候它确实很烦人。这看起来不像是 pythonic 的写法。我已经阅读了该论坛中的一些帖子以及有关元组等的文档,但对我来说并没有什么用。以下是我以 "shot in the dark" 的方式尝试过的一些方法,但显然没有用

d=[]
c,d[:]=b
c,list(d)=b
c,d=b[0],[1:]

我也知道 b.pop 方法,但如果不在 RHS 中重复 b,我找不到使用该方法的方法。

感谢您的帮助。谢谢。

在Python3中,你可以试试

c, *d = b

它将b[0]分配给c,其余分配给d。您应该看到 this 问题的答案,以了解有关 * 运算符如何处理序列的解释。