1、

def 函数名(形式参数)
函数体
return "123"

函数执行了return之后就不再执行下面的代码

2、

默认形参实参的位置一一对应
如果要调整位置,指定形参名字

def email(sub,get,bbj):
print(sub,get,bbj) rr=email(sub="",bbj="",get="")

3、函数可以有默认参数

    def dirve(name="我")  #name这个有默认参数,有默认参数的应放在无默认参数的后面
temp=name+"开车" #否则报错,无默认参数的必须传参数,有默认参数的可以不传参数
return temp
ret=drive("you")
print(ret)
ret=drive("he")
print(ret)
ret=drive()
print(ret)
    def a1(a):
print(a)
a1(123)
a1("")
a1([11,22,33])

4、动态参数

1、

def a1(*a):  #动态参数,可以接受多个值
print(a,type(a)) #现在a的类型为元组,把你传入的实参当作元组的元素
a1(123,3,444,555,[11,22,33])#这里的列表为一个元素

2、

def a2(**b):  #动态参数,接收的参数转换为字典
print(b,type(b))#b的类型为字典,传过来的参数转换为字典 a2(k1=123,k2=345) def a3(p,*a,**aa)
print(p,type(p)
print(a,type(a)
print(aa,type(aa) a3(11,22,33,k1=123,k2=456)#在这里自动把11给p,22,33给*a,把k1=123,k2=456给**a

#**要在*后面,这两个要在一般参数数的后面,而且实参也要按此排序

*,元组,元组的元素
**,字典
一般写法def f1(*args,**kwargs)

3、为动态参数传入 列表、字典、元组

def f1(*args) :
print(args)
li=[11,22,33]
f1(li) #这样传参数则这个args元组的第一个元素为列表[11,22,33]
f1(*li) #这样传参数是会把这个列表的每一个元素一一传过去结果会是
#这个列表的每一个元素会成为args元组的每一个元素(11,22,33)
dic f2(**kwargs):
print(kwargs)
dic={"k1":123,"k2":"aas"}
f2(dic)#这样传参数报错
f2(k1=dic) #这样传参数会变成kwargs={"k2":{"k1":123,"k2":"aas"}}
f2(**dic)#要想把dic里的元素一个一个传过去,为kwargs={"k1":123,"k2":"aas"}需要在dic前加**

4、变量

(1)全局变量

    a = 1234  # 全局变量

    def f1():
a = 123 # 这个a为局部变量只有这个函数里才能用
print(a) #在这里输出的是局部变量
f1()
print(a)

(2)局部变量

    def f1()
a=123
print(a)#这个a为局部变量只有这个函数里才能用

要想修改全局变量的值需要在全局变量前加global声明一下
例如:

        a = 1234
def f1():
global a
a = 123
print(a)#输出结果为:123
f1()
print(a)#输出结果为:123

以后写全局变量时吧全局变量名写为大写,局部变量的变量名写为小写

总结

1、数据类型

 set
  无序的,不重复的集合

2、三元运算

  减少代码量

3、深浅拷贝

  str、int
  深浅都一样
  其他
  浅拷贝,最外层
  深拷贝,除了最内层

4、函数

  a.def
  b.函数名
  c.返回值
  1、return
  2、一旦遇到return,函数的剩下代码就不执行了

5、参数

  1、形参实参
  2、普通参数,数量一致,一一对应
  3、指定参数,

f1(p="xxx",xx="asd")

  4、默认参数
    放在参数的尾部
  5、动态参数
    *args
    **kwargs
  e、全局变量和局部变量
    全局:
      大写
      修改,global
    局部变量:
      小写,仅仅在代码块中能用

python函数(2017-8-2)的更多相关文章

  1. 用C语言模仿Python函数

    首先得说明一点,C 语言不是函数式编程语言,要想进行完全的函数式编程,还得先写个虚拟机,然后再写个解释器才行(相当于 CPython ). 下面我们提供一个例子,说明 C 语言函数可以"适度 ...

  2. python 函数参数介绍

    python 函数参数介绍 python 使用过程总,总会遇到 *args,**kw形式的参数,总是一头雾水,而且网上介绍的或是叫法不一,为此专门深入实践进而了解了函数参数的使用 具体请看代码 #-* ...

  3. python函数-------python2.7教程学习【廖雪峰版】(三)

    任务: 看完函数这一章    已完成 2017年6月8日16:23:491.函数的作用:写较少的代码实现较多的功能,可以多次被调用.2.可见,借助抽象,我们才能不关心底层的具体计算过程,而直接在更高的 ...

  4. 二. python函数与模块

    第四章.内置函数与装饰器详解 1.内置函数补充1 注:红色圆圈:必会:  紫红色方框:熟练:   绿色:了解 callable() 判断函数是否可以被调用执行 def f1(): pass f1() ...

  5. python函数-函数进阶

    python函数-函数进阶 一.命名空间和作用域 1.命名空间 内置命名空间 —— python解释器 就是python解释器一启动就可以使用的名字存储在内置命名空间中 内置的名字在启动解释器的时候被 ...

  6. python 函数之day3

    一 函数的语法及特性 什么是函数? 定义:函数是一个功能通过一组语句的集合,由名字(函数名)将其封装起来的代码块,要想执行这个函数,只要调用其函数名即可. 特性: 减少重复代码 使程序变的可扩展 使程 ...

  7. Python函数作用域的查找顺序

    函数作用域的LEGB顺序 1.什么是LEGB? L:local 函数内部作用域 E:enclosing 函数内部与内嵌函数之间 G:global 全局作用域 B:build-in 内置作用域 2.它们 ...

  8. Python函数讲解

    Python函数

  9. Python函数信息

    Python函数func的信息可以通过func.func_*和func.func_code来获取 一.先看看它们的应用吧: 1.获取原函数名称: 1 >>> def yes():pa ...

  10. Python函数参数默认值的陷阱和原理深究"

    本文将介绍使用mutable对象作为Python函数参数默认值潜在的危害,以及其实现原理和设计目的 本博客已经迁移至: http://cenalulu.github.io/ 本篇博文已经迁移,阅读全文 ...

随机推荐

  1. Android之Fragment 基本介绍(转)

    Fragment Android是在Android 3.0 (API level 11)开始引入Fragment的. 可以把Fragment想成Activity中的模块,这个模块有自己的布局,有自己的 ...

  2. SQL Server ->> 重新创建Assembly和自动重建相关的数据库编程对象(存储过程,函数和触发器)

    在SQL Server中,一旦一个Assembly被其他的数据库编程对象(存储过程,函数和触发器)引用了,这个Assembly就不能被删除.但是问题是,在SQL Server要更新一个Assembly ...

  3. Python模块 Socket

    一个简单的python socket编程 一.套接字 套接字是为特定网络协议(例如TCP/IP,ICMP/IP,UDP/IP等)套件对上的网络应用程序提供者提供当前可移植标准的对象.它们允许程序接受并 ...

  4. nodejs理解

    一.nodejs介绍 nodejs主要体现在事件机制和异步IO,nodejs是事件驱动的: nodejs作用:js的运行环境.操作文件.链接数据库: nodejs在执行js是单线程的,但不是nodej ...

  5. 第一次团队Scrum

                                    长大一条龙之成绩查询 一.项目介绍             本项目的意义在于锻炼团队的scrum能力,加强团队合作能力.确定本项目采用的 ...

  6. 108. Convert Sorted Array to Binary Search Tree (building tree with resursion)

    Given an array where elements are sorted in ascending order, convert it to a height balanced BST. Fo ...

  7. python入门22 pymssql模块(python连接sql server查询)

    安装 pip install pymssql 连接数据库 pymssql.connect() # coding:utf-8 import pymssql server = '192.168.8.1' ...

  8. PCI PCI-X PCI-E介绍

    1.PCI 外设互联标准(或称个人电脑接口,Personal Computer Interface),实际应用中简称PCI(Peripheral Component Interconnect),是一种 ...

  9. position中需要注意的地方

    relative是相对元素本身位置进行移位,但不会改变本身位置的大小 本身的位置 移位后,可以看到,p5的位置还是在那,并不会自动往上走,也就是p2的位置原来所占据的位置不变的.不会因为偏移而改变布局 ...

  10. 记一次pda(安卓)环境配置流程

    将git项目git clone下来,接下来就是环境的配置   sdk,jdk,蓝牙插件,热更新 这个顺序   一.java JDK 安装及环境变量配置 https://blog.csdn.net/de ...