插入 python 列表中
insert in list of python
我想在 list_of_words 中插入列表包含一些值,这样任何列表都可以放在 list_of_words 的位置 -2,但数据没有按我想要的顺序排列
def h(i):
a, b = i.split(';')
list_of_words = [['z', -1],['z', len(b)]]
for key, word in enumerate(a):
if b.find(word) != -1:
list_of_words.insert(-2, [word, b.find(word)])
print list_of_words
h("XMJYAUZ;MZJAWXU")
列表
list_of_words = [['z', -1], ['z', 7]]
假设在 运行 代码之后
list_of_words = [['z', -1], ['X', 5], ['M', 0], ['J', 2], ['A', 3], ['U', 6], ['Z', 1], ['z', 7]]
但是
list_of_words = [['X', 5], ['M', 0], ['J', 2], ['A', 3], ['U', 6], ['Z', 1], ['z', -1], ['z', 7]]
为什么会这样
如果你想把一个项目放在列表中的-2位置,你需要使用
list_of_words.insert(-1, [word, b.find(word)])
而不是
list_of_words.insert(-2, [word, b.find(word)])
因为项目将被插入 之前 提供的位置而不是之后。
完整代码:
def h(i):
a, b = i.split(';')
list_of_words = [['z', -1], ['z', len(b)]]
for word in a:
if word in b:
list_of_words.insert(-1, [word, b.find(word)])
print list_of_words
h("XMJYAUZ;MZJAWXU")
我想在 list_of_words 中插入列表包含一些值,这样任何列表都可以放在 list_of_words 的位置 -2,但数据没有按我想要的顺序排列
def h(i):
a, b = i.split(';')
list_of_words = [['z', -1],['z', len(b)]]
for key, word in enumerate(a):
if b.find(word) != -1:
list_of_words.insert(-2, [word, b.find(word)])
print list_of_words
h("XMJYAUZ;MZJAWXU")
列表
list_of_words = [['z', -1], ['z', 7]]
假设在 运行 代码之后
list_of_words = [['z', -1], ['X', 5], ['M', 0], ['J', 2], ['A', 3], ['U', 6], ['Z', 1], ['z', 7]]
但是
list_of_words = [['X', 5], ['M', 0], ['J', 2], ['A', 3], ['U', 6], ['Z', 1], ['z', -1], ['z', 7]]
为什么会这样
如果你想把一个项目放在列表中的-2位置,你需要使用
list_of_words.insert(-1, [word, b.find(word)])
而不是
list_of_words.insert(-2, [word, b.find(word)])
因为项目将被插入 之前 提供的位置而不是之后。
完整代码:
def h(i):
a, b = i.split(';')
list_of_words = [['z', -1], ['z', len(b)]]
for word in a:
if word in b:
list_of_words.insert(-1, [word, b.find(word)])
print list_of_words
h("XMJYAUZ;MZJAWXU")