将一个列表解析成变量和子列表
我用这个脚本将一个列表解析成一个变量和另一个列表:
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
。 您应该看到此问题的答案,以解释*
运算符如何处理序列。