学习笔记1(三元运算、深浅拷贝、动态参数、全局变量与局部变量、set数据类型 )


(三元运算、深浅拷贝、动态参数、全局变量与局部变量、set数据类型 ) set 数据类型--无序,不重复的集合 一.三元运算、三木运算--减少代码量 name=“X1”if 条件 else “x2” 例子:name =" alsx"  if 1==1 else "e" 二.深拷贝与浅拷贝:深拷贝拷贝所有的东西,浅拷贝拷贝最外面一层。 三、面向函数的编程(先前都是面向过程的编程) 生成函数>-执行函数>-返回执行的结果 def email(): #定义一个函数   if True: return True else: return False ret=email() #执行一个函数   if ret: #返回执行的结果 print("很酷") else: print("辣鸡") #写一个发送邮件的函数:(p 为形式参数,传一个参数,接受一个参数)  #形式参数可以传入多个    #传入多个形式参数 #函数编程: 1、def 函数名(形参):       函数体       return “123”      (返回值return   一旦执行return,return下面的代码将不再执行) 2、函数名(实际参数) 3、形参、实参(默认按照顺序)(可以指定形式参数来传入实际参数,可以实现不按照向形式参数的顺序) 4、函数可以有默认参数  5、#动态参数一 def fun(*a): print(a,type(a)) fun(123,2456,{"he":123})   #动态参数二 def fun(**a): print(a,type(a)) fun(k1=123,k2=2456,k3={12:"name","je":23})   #万能参数 def fun(p,*a,**aa): print(p,type(p)) print(a,type(a)) print(aa,type(aa))   fun(11,22,k1=123,k2=234)    6、为动态函数传入参数 第一种: def fun(*args): print(args,type(args)) #为动态函数传入参数 li=[11,22,33] fun(li) fun(*li) 输出结果:(注意两者区别) 第二种: def fun(**kwargs): print(kwargs,type(kwargs)) dic={"k1":"name"} fun(k1=dic) fun(**dic)   7、全局变量与局部变量:(局部变量p在赋值给p的时候并未改变原来的P,相当于创建了一个新的p,若要改变改变p的值,需要在p前加上global,如图第二张图所示)