首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >函数不返回切换列表

函数不返回切换列表
EN

Stack Overflow用户
提问于 2017-11-21 03:38:38
回答 0查看 35关注 0票数 1

我正在用模拟退火处理旅行推销员问题,需要编写一个函数来交换列表中的两个元素(列表包含推销员要去的目的地,我假设他从返回的同一城市开始)。我已经包含了以下代码:

代码语言:javascript
运行
复制
def new_walk(old_walk):
    n1 = rand.randint(1, len(old_walk)-2)
    n2 = rand.randint(1, len(old_walk)-2)
    walk = old_walk
    walk[n1], walk[n2] = walk[n2], walk[n1]
    return walk

n1和n2是两个整数,对应于我想要切换的两个随机列表索引,len(old_cycle)-2randint函数的最大值背后的推理是,我不想将最后一个点与任何其他点进行切换。如果我在函数定义中包含一条print语句,它会给出正确的结果,即old_cycle switched的两个元素。但是,一旦我将它返回给main函数,它就会返回old_cycle列表。任何帮助都将不胜感激!

EN

回答

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47399777

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档