摘要: def foo(a, b=[]): b.append(a) return b ​ print(foo(1)) print(foo(1)) print(foo(1)) 这段代码会产生许多人可能意料之外的结果。以下是代码的行为以及背后的原因: 代码行为 def foo(a, b=[]): # 默认参数 阅读全文
posted @ 2024-12-03 16:02 Abraham_Xu 阅读(6) 评论(0) 推荐(0) 编辑
摘要: Python 的函数参数传递并不一定比 C 语言更高效,两者在效率上的差异主要取决于底层实现和具体的使用场景。以下是详细的比较: C语言参数传递 效率 按值传递(Pass by Value)是 C 中的默认方式:函数调用时,实参的值被复制到形参。这意味着函数内部的修改不会影响外部变量。 C 使用编译 阅读全文
posted @ 2024-12-03 15:52 Abraham_Xu 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 合法 gcount = 0 def global_test(): print (gcount) global_test() 不合法,报错行: tmp = gcount + 1 gcount = 0 def global_test(): tmp = gcount + 1 gcount = tmp pr 阅读全文
posted @ 2024-12-03 15:28 Abraham_Xu 阅读(5) 评论(0) 推荐(0) 编辑