将一个列表解析成变量和子列表

我用这个脚本将一个列表解析成一个变量和另一个列表:

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

它始终是第一个被分开的元素,并且这段代码工作正常,但是,它重复右侧的列表b 。 这不是问题,但是当我的b有点像line.replace('*',',').replace(' ',',').split(',')时,它确实令人讨厌。 这看起来不像写下来的pythonic方式。 我已经阅读了这个论坛的一些帖子和关于元组等的文档,但是对我来说没有什么比这更好的了。 以下是我在“黑暗中”拍摄时尝试的一些内容,显然没有奏效

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

我也知道b.pop方法,但是我找不到在RHS中没有重复b的方法。

帮助表示赞赏。 谢谢。


在Python 3中,你可以试试

c, *d = b

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

链接地址: http://www.djcxy.com/p/53567.html

上一篇: parse a list into variable and sublist

下一篇: Why does *x, unpack map objects in python 3?