我可以使用列表元素作为变量吗?

2024-04-25 16:53:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我希望能够根据元素在列表中的位置来移动列表中的元素,其中该位置被定义为我可以更改的函数中的变量。为什么下面不起作用?你知道吗

a = list("abcd")
b = list("efgh")

def move(start,end):
       end = start
       start = "."

move(a[1],b[3])

Tags: 函数元素列表move定义defstartlist
1条回答
网友
1楼 · 发布于 2024-04-25 16:53:29

a[1]b[3]作为参数传递给move,而不是表达式本身。move(a[1], b[3])等价于ab的定义。你知道吗

在函数内部,您所做的只是更改本地名称endstart的值,而不是以任何方式修改ab的值。你知道吗

要做您想做的事情,move除了作为参数的索引外,还需要接收两个列表。例如

def move(l1, l2, start, end):
     l2[end] = l1[start]
     l1[start] = "."

move(a, b, 1, 3)

相关问题 更多 >

    热门问题