标签:
三元运算,又称三目运算,主要作用是减少代码量,是对简单的条件语句的缩写。
1 书写格式: 2 result = 值1 if 条件 else 值2 3 即如果条件成立,则将值1赋给result变量,如果不成立,将值2赋给result变量 4 eg:name = "tina" if 1==1 else "fei"
name = "tina" if 1!=1 else "fei" print(name) 执行结果如下: fei
小练习: a = 1 if True else 0 print(a) b=1 if False else 0 print(b) c = "Fire" if True else "Water" print(c) d = "Fire" if False else "Water" print(d) 执行结果如下: 1 0 Fire Water
import copy #数字类型 n1 = 222 print(id(n1)) #赋值 n2 = n1 print(id(n2)) #字符串类型 n1 = "tina is a beauty" n2 = n1 print(id(n1),id(n2)) ###执行结果如下: 1638075088 1638075088 948823211080 948823211080 ###由此可以看出字符串和数字类型的赋值,其内存指向的是同一块内存###
#浅拷贝 n1 = 22 n2 = "asdf" n3 = copy.copy(n1) n4 = copy.copy(n2) print(id(n1),id(n3)) print(id(n2),id(n4)) 执行结果如下: 1638068688 1638068688 168374752680 168374752680
###由此可以看出字符串和数字类型的浅拷贝,其内存指向的是同一块内存###
#深拷贝 n3 = copy.deepcopy(n1) n4 = copy.deepcopy(n2) print(id(n1),id(n3)) print(id(n2),id(n4)) 执行结果如下: 1638068688 1638068688 778961474984 778961474984
###由此可以看出字符串和数字类型的深拷贝,其内存指向的是同一块内存###
画图说明:
#赋值 n1 = {"k1":"222","k2":"tina",‘k3‘:[‘beauty‘,123]} n2 = n1 print(id(n1),id(n2)) 执行结果如下: 1003839407944 1003839407944 # ###结合上面数字字符串的内容可以看出任何类型的赋值,其内存指向的是同一块内存###
#浅拷贝(在内存中开创一块空间,创建第一层数据,相当于只拷贝了索引) import copy n1 = {"k1":"222","k2":"tina",‘k3‘:[‘beau‘,123]} n2 = copy.copy(n1) print(id(n1),id(n2)) 执行结果如下: 715111778248 712964936072 #内存地址是不一样的
#深拷贝(在内存中将与所有的数据重新创建一份,但由于python内部对数字和字符串的优化:永远指向同一块内存,所以最后一层不改变) import copy n1 = {"k1":"222","k2":"tina",‘k3‘:[‘beau‘,123]} n2 = copy.deepcopy(n1) print(id(n1),id(n2)) 执行代码如下: 205036701640 205037113416
1、概念:
根据业务逻辑从上到下实现功能,其往往用一长段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,也就是将之前实现的代码块复制到现需功能处
将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可,函数式编程最重要的是增强代码的重用性和可读性
对函数进行分类和封装,让开发“更快更好更强...”
2、函数的定义及使用:
1 def 函数名(参数): 2 ...... 3 函数体 4 ...... 5 返回值 函数定义的关键点:
标签:
原文地址:http://www.cnblogs.com/tina-python/p/5467730.html