发现
问答
发起
提问
文章
文章
更多
专家
话题
财富榜
商城
Toggle navigation
首页
(current)
问答
文章
话题
商城
搜索
登录
注册
23
关于python小白的一个函数默认参数问题
本帖最后由 howard 于 2018-1-15 16:24 编辑
问题如图
为什么输出的是:[
1
]
[
1
,
2
]
[
1
,
2
,
3
]
每次调用f(1),f(2),f(3)的时候,第二个参数都为空,那么每次L不应该都默认初始为空吗,为什么f(1)会对f(2)有影响,L是形参局部变量吧?
本人小白,有JAVA和才c++基础,刚入门python,劳烦大神赐教!
1 条评论
分类:
默认分类
请先
登录
后评论
最佳答案
2021-09-23 22:55
def func(a, myList = None):
myList = [] # 改成在函數裡面定義
myList.append(a)
return myList
print(func(1))
print(func(2))
print(func(3))
复制代码
輸出結果:
[1]
[2]
[3]
复制代码
1 条评论
1
请先
登录
后评论
秋叶
采纳率 74% | 回答于 2021-09-23 22:55
默认排序
时间排序
其它 3 个回答
舵手
2021-09-23 22:55
http://www.pythontab.com/html/20 ... heng_0816/1164.html
请先
登录
后评论
瑜彬
2021-09-23 22:55
def f(a):
L=[]
L.append(a)
return L
这样不就可以了,既然你L是空列表,又何必加载参数里呢?
请先
登录
后评论
ztruth
2021-09-23 22:55
thx!
请先
登录
后评论
关注
5
关注
收藏
1
收藏,
633
浏览
欧阳平静
提出于 2021-09-23 22:55
相似问题
×
发送私信
发给:
内容:
×
举报此文章
垃圾广告信息:
广告、推广、测试等内容
违规内容:
色情、暴力、血腥、敏感信息等内容
不友善内容:
人身攻击、挑衅辱骂、恶意行为
其他原因:
请补充说明
举报原因: