比如定义个函数,想实现的功能就是将列表a的后半部分(['c','d'])传入函数,然后修改值,可以下面的代码并没有吧’c'修改成'z',请问该如何解决?
def paraTestList(L):
L[0]='z'
a=['a','b','c','d']
paraTestList(a[2:])
print(a)
在python的函数中,如何将列表list的一部分作为函数的参数?
答案:2 悬赏:30
解决时间 2021-02-22 02:56
- 提问者网友:护她一生,唯爱
- 2021-02-21 15:31
最佳答案
- 二级知识专家网友:萌萌哒小可爱
- 2021-02-21 16:27
我也是正在学PYthon的基础语法。
题主忘记了你后面paraTestList(a[2:])中,括号内的a[2:]命令是创建了一个包含列表a的一部分的一个副本列表,这样是不会改变列表a的实际内容的。打印出的a肯定也是不会变的。
具体做法是
def paraTestList(L):
L[0]='z'
a=['a','b','c','d']
b=a[2:]
paraTestList(b)
print(b)
希望能帮到你。
题主忘记了你后面paraTestList(a[2:])中,括号内的a[2:]命令是创建了一个包含列表a的一部分的一个副本列表,这样是不会改变列表a的实际内容的。打印出的a肯定也是不会变的。
具体做法是
def paraTestList(L):
L[0]='z'
a=['a','b','c','d']
b=a[2:]
paraTestList(b)
print(b)
希望能帮到你。
全部回答
- 1楼网友:努力只為明天
- 2021-02-21 16:48
后面paraTestList(a[2:])中,括号里面的a[2:]命令是指创建了一个包含列表a的一部分的一个副本列表。具体做法是:
def paraTestList(L):
L[0]='z'
a=['a','b','c','d']
b=a[2:]
paraTestList(b)
print(b)
具体情况如下:
1.Python的函数定义简单但灵活度大。除了正常定义的必选参数外,还可以使用默认参数、可变参数和关键字参数,使得函数定义出来的接口,不但能处理复杂的参数,也可以简化调用者的代码。
2.默认参数可以简化函数的调用,设置默认参数时要注意:一是必选参数在前,默认参数在后,否则Python的解释器会报错;二是如何设置默认参数。当函数有多个参数时,把变化大的参数放前面,变化小的参数放后面。变化小的参数就可以作为默认参数。
3.默认参数降低了函数调用的难度,而一旦需要更复杂的调用时,又可以传递更多的参数来实现。无论是简单调用还是复杂调用,函数只需要定义一个。
4.有多个默认参数时,调用的时候,既可以按顺序提供默认参数。
4.Python函数在定义的时候,默认参数L的值就被计算出来了,即[],因为默认参数L也是一个变量,它指向对象[],每次调用该函数,如果改变了L的内容,则下次调用时,默认参数的内容就变了,不再是函数定义时的[]了。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯