一、关于全局变量和局部变量

  函数中定义的变量是局部变量,只适用于函数内部;函数中若想修改全局变量,需用global。通常,全局变量名全部大写,局部变量名小写。

PERSON = 'herry'
def f1():
    PERSON = 'jack'
    a = 123
    print(a)    #123
def f2():
    a = 234
    global PERSON
    PERSON = 'jack'
    print(a)    #234
f1()
print(PERSON)   #herry
f2()
print(PERSON)   #jack
View Code

 

二、关于深拷贝和浅拷贝

  python中,字符串str和数字int是由C语言实现的,定义之后不可修改,需要修改时,实际上是内存重新创建了一个新的。其它,如列表和字典,在内存中采用链表的方式,记录山下行地址,最后指向str或int。

  浅拷贝:copy第一层;深copy:copy全部除最后一层。

 

三、关于三元运算

  三目运算,也叫三元运算,就是if的一种简约形式: 值1 if 条件 else 值2 ,当条件满足时为值1,否则为值2。

name = input('请输入姓名:')
ret = 1 if name=='lucy' else 2
print(ret)

 

四、函数中return

  函数中遇到return后,其后代码不执行。