微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

列表行为非常怪异,带有循环

如何解决列表行为非常怪异,带有循环

我有一个列表开头为

<div className="menu-item a-propos" onClick={() => props.scrollToRef(props.refs.CompetencesRef)}>
  <p className='button'>Compétences</p>
</div>

所以我看一下temp的值是一些正常值,如图所示:

value=[1,2,3]
out_list=[value]

while(i<2*len(nums)):
         
        temp_value=temp[locator]
        temp[locator]=temp[locator+1]
        temp[locator+1]=temp_value
        print(temp,end="   ")
        output_list+=[temp]
        print(output_list)
        i+=1

那应该意味着我的output_list很好吗?不,我将其作为最终输出

[1,3,2] 
[3,1]
[3,1,2]
[2,1]
[2,3]

解决方法

您只想列表互相加入,对吗?

喜欢:

a=[1,2,3]
b=[3,1]
print (a+b)
[1,3,1]

如果是这样,请从[temp]中删除[]

output_list+=temp

更新: 试试这个吗?

from itertools import permutations 
comb = permutations([1,3],3)
result=[]
for i in comb: 
    result+=[list(i)]
print(result)
,

我正在发布一个回溯解决方案-因为您的代码中存在回溯。 这将为您提供列表的所有排列->嵌套列表作为输出。

def permute(nums):
    
    outputList = []
    set_ = set()
    
    def helper(l,count = 0):
        if count == len(nums):
            outputList.append(l)
        else:
            for number in nums:
                if number not in set_:
                    set_.add(number)
                    helper(l + [number],count + 1)
                    set_.remove(number)
    helper([])
    return outputList

permute([1,3])将产生

[[1,[1,2],[2,1,1],[3,1]]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。