python开发【第四篇】:python基础之函数

###########三元运算##########

格式:result =值1  if 条件  else 值2   #如果条件成立,那么将“值1”赋值给result变量,否则 ,将“值2”赋值给result变量

###########基本数据类型补充############set:

   set集合,是一个无序且不重复的元素集合额

1.add  : 添加元素

结果:

2.clear :清除内容

结果:

3.(1)difference:找不同的元素,并将其赋给新值

结果:

(2)different_updata:找不同的元素,并更新自己

结果:{33,44}

           {55,66}

4.discard:删除元素

结果:

discard和remove的区别是:discard可以删除集合里面没有元素,不会报错。而remove则不能删除集合里面没有的元素

5.(1)intersection:取交集

结果:

(2)intersection_updata:取交集并且更新自己

结果:

6.isdisjoint:是否没有交集,如果没有返回True,如果有返回False

结果:

7.(1)issubset:判断是否是子集合

结果:True

(2)issuperset:判断是否是父集合

结果:True

8.(1)pop:移除最后一个集合

结果:33  #因为集合是无序的,所以最后一个不一定是44

(2)remove:移除指定元素,不存在保错

结果:

9.(1)symmetric_difference:对称差集

结果:

(2)symmetric_difference_updata:对称差集,并更新到自己中

结果:

10.union:并集

结果:

11.updata:更新

 

结果:

############深浅拷贝#############

一、数字和字符串

对于数字和字符串而言,赋值、浅拷贝和深拷贝无意义,因为其永远指向同一个内存地址

二、其他基本数据类型

对于字典、元祖、列表而言,进行赋值、浅拷贝和深拷贝时,其内存地址的变化是不同的

1.赋值

 赋值,只是创建一个变量,该变量指向原来内存地址,如:

2.浅拷贝

浅拷贝,在内存中只额外创建第一层数据

3.深拷贝

深拷贝,在内存中将所有的数据重新创建一份(排除最后一层,即:python内部对字符串和数字的优化)

############函数#############

1.  def函数名(形参):

                函数体

             1.   return  xxx,None

             2.一旦遇到return,函数内部return以下代码不再执行

2.执行函数

                函数名(实参)

3.形参,实参(默认,按照顺序,数量一致且一一对应)

4.指定形参传入实参,可以不按照顺序

5.函数可以有默认参数(有默认值的参数一定要放在参数的尾部)

6.动态参数

           * ,元祖,元祖的元素

           **,字典

           def f1(*args,**kwargs)#默认写法

 

动态参数二

7.为动态参数传入列表、字典、元祖                 *args, *列表

                 **kwargs,**字典

8.全局变量和局部变量:全局变量都大写,局部变量都小写

      全局:

             大写

              修改,global

      局部:

              小写,仅仅在代码块中能用

 

posted @ 2017-11-18 17:20  麦兜家的鱼丸  阅读(212)  评论(0编辑  收藏  举报