定义一个函数:

   1.使用def关键字, def + 函数名 +(参数列表)

    2.函数的内容由‘ :’开始,由缩进结束

注意:由于python的变量没有类型,则不像c和c++那么样有参数类型

   虽然,没有参数类型,但是在变量的运算过程中,如果变量所引用的值错误依旧会报错

一般格式:def 函数名(参数列表):函数体return

知识点1.  参数

   1.不可变类型:整数,字符串,元组。

     2.可变类型:列表,字典

不可变类型:

      变量没有类型,它只是引用了一个量,比如a=10, 10其实就开辟了一块内存的对象,那么a也只是引用了10这个对象,当再次将a=“123”时,a就引用了字符串。

def  fun(a):a=20a=10print(a)<<<10

如以上函数,函数中的参数a变量,是一个局部变量,也就是说与全局变量的a引用了同一个10

但是,后面局部变量的a改变了引用,但是,它并不是全局变量的a,所以,全局变量的a一直没有改变过。由于,python中没有类似c++的&和指针,所以不可变量无法改变的。

  四种参数:

      1.位置参数

      2.关键字参数

      3.默认参数

      4.可变参数

   位置参数:顾名思义,位置不可变,一个参数都不可少

   关键字参数:通过“ 键=值 ”的形式加以指定,可以改变参数的顺序

def  fun(a, b):return a+b//正确用法:

fun(a=1, b=1)
fun(b=1, a=1)
fun(1, b=1)
fun(1, a=1)//错误用法

fun(a=1,1)
fun(b=1,1)

也就是说,关键字参数一定要在位置参数后面。而关键参数之间不具有顺序关系

  默认参数:就是为参数提供一个默认的值,这样这个参数赋不赋值都可以,用法和c++类似,一定要放在位置参数之后。

def fun(a=1):print(a)return fun()<<1

  可变参数:

      一个* , 带有一个*的参数以元组的形式导入(注意:元组不可变)

      两个* , 带有两个*的参数以字典的形式导入(注意:字典可变)

def funone(*a):print(a)def funtwo(**b)print(b)funone(1,2,3)
>>>(1, 2, 3)
funtwo(a=1,b=2, c=3)
>>{'a':1, 'b':2, 'c':3}

注意:存在一种特殊的参数。当*在参数列表中时,*后面的参数就必须用关键字传入

def add(a, b, *, c):return a+b+cadd(1,1,c=1)

作用域

  python中只有模块,类,函数才会引入作用域,其他不会产生作用域。

转载于:https://www.cnblogs.com/damaoranran/p/10159600.html

基础教程——python函数相关推荐

  1. python是一种面向____的高级语言_Python 基础教程Python是一种解释型、面向对象、动...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Python 基础教程 Python是一种解释型.面向对象.动态数据类型的高级程序设计语言. Python由Guido van Rossum于1989年底 ...

  2. Python基础教程:函数的可变参数

    在Python函数中,还可以定义可变参数. 如:给定一组数字a,b,c--,请计算a2 + b2 + c2 + --. 要定义出这个函数,我们必须确定输入的参数.由于参数个数不确定,我们首先想到可以把 ...

  3. python基础教程-Python入门教程完整版(懂中文就能学会)

    提取码:sjfo 目录大纲: 本套教程15天 学前环境搭建 1-3 天内容为Linux基础命令 4-13 天内容为Python基础教程 14-15 天内容为 飞机大战项目演练 视频概括: 第一阶段(1 ...

  4. python入门基础教程-Python入门基础教程:WSGI

    原标题:Python入门基础教程:WSGI WSGI 简介 WSGI 是什么 WSGI 是 Python Web Server Gateway Interface 的缩写,是描述 Web 服务器与 P ...

  5. 【软件测试】自动化测试战零基础教程——Python自动化从入门到实战(一)

    第一章:自动化测试基础 第一节 软件测试分类 关于软件测试领域名词颇多,发现有许多测试新手混淆概念,从不同的角度可以将软件测试有不同的分类的方法:所以,这里汇总常见软件测试的相关名词,对软件测试领域有 ...

  6. python办公自动化知识点_Python自动化办公知识点整理汇总|python基础教程|python入门|python教程...

    https://www.xin3721.com/eschool/pythonxin3721/ 知乎上有人提问:用python进行办公自动化都需要学习什么知识呢? ​ 这可能是很多非IT职场人士面临的困 ...

  7. 【Python基础】Python 函数使用总结

    我的施工之路 目前已完成,以下五期Python专题总结: 1我的施工计划 2数字专题 3字符串专题 4列表专题 5流程控制专题 6编程风格专题 今天是Python函数专题,目录结构: Python 函 ...

  8. 什么是python基础教程-python基础教程之python是什么?概念解析

    Python,是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年. Python是纯粹的自由软件, 源代码和解释器CP ...

  9. python系统提供构造函数传入参数_[ Python入门教程 ] Python函数定义和使用

    函数是一段可以重复多次调用的代码,通过输入的参数值,返回需要的结果.通过使用函数,可以提高代码的重复利用率.本文主要介绍Python函数的定义.调用和函数参数设置方法. 函数的定义 Python函数定 ...

  10. [教程]Python函数的参数

    Python函数的参数 位置参数.默认值参数.可变参数.关键字参数和命名关键字参数 1 函数结构 def 函数名(参数):函数体返回值 2 位置参数 略 3 默认值参数 略 4 可变参数 # 可变长度 ...

最新文章

  1. 2021 OceanBase 数据库大赛来了!
  2. [TJOI2013]最长上升子序列
  3. 海思AI芯片(Hi3519A/3559A)方案学习(十四)JPEG图片转换成bgr文件
  4. bzoj千题计划128:bzoj4552: [Tjoi2016Heoi2016]排序
  5. Oracle 10g数据库基础之基本查询语句-中-函数
  6. Logistic回归与牛顿迭代法
  7. nginx的目录结构和配置文件
  8. php转化成json数组,php怎么实现数组转json,php把json转化成数组
  9. python 构造函数传参_C++和python混合编程之在python类构造函数中传参方法
  10. 视频直播app源码,保存和提取图片
  11. sh文件执行的时候卡住的可能原因
  12. Linux系统开发: 学习Linux下网络编程
  13. 学习《医学三字经白话解》之气喘
  14. android测试命令,Android Instrument测试命令使用小记
  15. [ZZ] Adventures with Gamma-Correct Rendering
  16. anchor-free目标检测
  17. 计算机网络速度测试指令,测试网速命令_在电脑的运行中输入什么指令 测网速...
  18. 基于Arduino开发的智能小车
  19. python判断为空行_Python pandas.DataFrame 找出有空值的行
  20. Bluetooth Profile Specification之1.2 A2DP 之Audio Codec(音频编解码器)-MPEG-1,2 Audio和MPEG-2, 4 AAC

热门文章

  1. K-th largest element in an array
  2. 4、第4次课 CSS代码第三节课20150923
  3. 理解数据库设计范式【转】
  4. Android点亮屏幕
  5. 【从C到C++学习笔记】引用/const引用/引用传递/引用作为函数返回值/引用和指针的区别
  6. wxpython画表格代码
  7. 【LeetCode】【字符串】题号:*387. 字符串中的第一个唯一字符
  8. 《深度学习Python实践》附录——聚类分析
  9. 林草资源调查监测数据下载
  10. Java设计模式------工厂模式-------工厂方法模式