我想从字符串中创建一个元组列表。基本上,给出以下内容,
s = "a b c d"
w = s.split()
我想要下面的元组列表:
[(a, b), (b, c), (c, d)]
我觉得我应该使用append函数和for循环,但是我被卡住了。我该怎么办?
答案 0 :(得分:9)
>>> s = "a b c d"
>>> w = s.split()
>>> zip(w, w[1:])
[('a', 'b'), ('b', 'c'), ('c', 'd')]
如果您真的想使用for
循环和append
,可以像这样替换zip()
>>> res = []
>>> for i in range(1, len(w)):
... res.append((w[i-1], w[i]))
...
>>> res
[('a', 'b'), ('b', 'c'), ('c', 'd')]
答案 1 :(得分:1)
s = "a b c d"
s = s.split(" ")
c=[]
for i in range(len(b)-1):
c.append((b[i],b[i+1]))
list comprehension
s = "a b c d"
s = s.split(" ")
d=[(s[i],s[i+1])for i in range(len(s)-1)]