python_进阶_03


函数的参数

def demo(num,num_list):
    print("函数内部的代码")

    # 在函数内部,针对参数使用赋值语句,不会修改到外部的实参变量
    num = 100
    num_list = [1,2,3]
    print(num)
    print(num_list)
    print("函数执行完成")

gl_num = 99
gl_list = [4,5,6]
demo(gl_num,gl_list)
print(gl_num)
print(gl_list)

输出为

但是用方法修改则会影响外部的数据

def demo(num_list):
    print("函数内部的代码")

    # 在函数内部,使用方法修改参数
    num_list.append(9)
    print(num_list)
    print("函数执行完成")

gl_list = [1,2,3]
demo(gl_list)
print(gl_list)

输出为

面试题 +=

def demo(num,num_list):
    print("函数内部代码")

    # num = num + num
    num += num
    # 列表使用 += 相当于调用extend方法,num_list.extend(num_list)由于是调用方法,所以不会修改变量的引用
    # num_list = num_list + num_list 因为是赋值所以不会影响
    # 函数执行结束后,外部数据同样会发生变化
    num_list += num_list

    print(num)
    print(num_list)
    print("函数代码完成")

gl_num = 9
gl_list = [1,2,3]
demo(gl_num,gl_list)
print(gl_num)
print(gl_list)

输出为


文章作者: 张忠楠
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 张忠楠 !
评论
 上一篇
python_进阶_04 python_进阶_04
缺省参数 def print_info(name,title="",gender=True): 带有默认值的缺省参数应放在参数列表末尾 """ :param title: 职位 :param name:
2020-04-21
下一篇 
python_进阶_02 python_进阶_02
函数的返回值 def measure(): """测量湿度和温度""" print("测量开始...") temp = 39 wetness = 50 print("测量结束...")
2020-04-18
  目录