函数初识

1. 函数定义:

  1. def 函数名():
  2. 函数体
  3. # def 关键字 -- 定义
  4. # 函数名 -- 和变量定义规则一样
  5. # () 必须要写格式 ,一会在盘他
  6. # : 声明语句结束
  7. 内存中存放了一堆代码,如果不调用,里面不会变,不会开辟空间

2. 函数调用:

  1. 函数名 + ()
  2. def my_len():
  3. s = "alex"
  4. count = 0
  5. for i in s:
  6. count += 1
  7. print(count)
  8. my_len() #调用 显示4

3. 函数的返回值:

  1. return:
  2. def my_len():
  3. s = "alex"
  4. count = 0
  5. for i in s:
  6. count += 1
  7. return count
  8. print(my_len()) # 4 count的值给了my——len()
  9. lst = [1,3,5,7]
  10. def li():
  11. for i in lst:
  12. lst.append(int(input(">>>")))
  13. return lst
  14. print(li()) # lst给了li()
  15. #总结:
  16. return的内容返回给了函数的调用,可以返回任意类型
  17. return下方的代码不执行,终止这个函数(不是终止循环)
  18. return 返回多个内容的时候还是元组形式
  19. return 没有写返回值的时候返回的是None,不写return返回的也是None

4. ()

  1. 形参:函数的定义中括号里的是形参
  2. 实参:函数的调用括号里的是实参
  3. 传参:将实参传递给形参的过程

4.1 位置传参:

​ 形参与实参必须一一对应,形参可以不用,但必须传参。

​ 形参是默认参数是,实参传递时可以不写,若写内容就会将形参的默认参数覆盖。

​ 位置参数 > 默认参数

  1. def func(a,b,c):
  2. print(a,b,c)
  3. func(1,3,5) # 1 3 5 可以是任意数据类型
  4. def func(a,b=2): #b=2 为默认参数,可以不用写实参
  5. print(a,b)
  6. func(1) #1 2
  7. def func(a,b=2): #默认参数必须放最后
  8. print(a,b)
  9. func(1,3) # 1 3 位置参数 > 默认参数 b=3
  10. 形参与实参必须一一对应,形参可以不用,但必须传参

4.2 关键字传参:

  1. def func(a,b,c):
  2. print(a,b,c)
  3. func(a=1,c=3,b=2) # 按a,b,c 传参, 1,2,3
  4. def func(a,b,c=4):
  5. print(a,b,c)
  6. func(a=1,c=3,b=2) # 1 2 3 c=4被覆盖
  7. #依次输出name,age,sex:
  8. def userinfo(name,age,sex="男"):
  9. print(name,sex,age)
  10. while True:
  11. name = input("name:")
  12. age = int(input("age:"))
  13. sex = input("sex(如果是男,直接回车!):")
  14. if sex == "女":
  15. userinfo(name,age,sex)
  16. else:
  17. userinfo(name, age)

4.3 混合传参:

​ 位置参数 > 关键字参数

  1. #错误示例:
  2. def func(a,b,c):
  3. print(a,b,c)
  4. func(1,b=3,5) # 位置参数跟随在关键字参数后,报错
  5. def func(a,b,c):
  6. print(a,b,c)
  7. func(1,3,c=5) # 1 3 5
  8. def func(a:int,b:str): # 只有提示作用,没有约束作用
  9. print(a,b)
  10. print(type(a)) # int
  11. print(type(b)) # int
  12. func(1,2)

python 09 函数的更多相关文章

  1. python第六天 函数 python标准库实例大全

    今天学习第一模块的最后一课课程--函数: python的第一个函数: 1 def func1(): 2 print('第一个函数') 3 return 0 4 func1() 1 同时返回多种类型时, ...

  2. 【276】◀▶ Python 字符串函数说明

    参考:Python 字符串函数 01   capitalize 把字符串的第一个字符大写,其他字母变小写. 02   center 返回一个原字符串居中,并使用空格填充至长度 width 的新字符串. ...

  3. python的函数

    函数一词起源于数学,但是在编程中的函数和数学中的有很大不同.编程中的函数式组织好的,可重复使用的,用于实现单一功能或相关联功能的代码块. 我们在学习过程中已经使用过一些python内建的函数,如pri ...

  4. python strip()函数 介绍

    python strip()函数 介绍,需要的朋友可以参考一下   函数原型 声明:s为字符串,rm为要删除的字符序列 s.strip(rm)        删除s字符串中开头.结尾处,位于 rm删除 ...

  5. python split()函数

    Python split()函数 函数原型: split([char][, num])默认用空格分割,参数char为分割字符,num为分割次数,即分割成(num+1)个字符串 1.按某一个字符分割. ...

  6. Python数学函数

    1.Python数学函数 1.abs(x):取绝对值,内建函数 2.math.ceil(x):向上取整,在math模块中 3.cmp(x,y):如果 x < y ,返回-1:如果 x == y ...

  7. Python回调函数用法实例详解

    本文实例讲述了Python回调函数用法.分享给大家供大家参考.具体分析如下: 一.百度百科上对回调函数的解释: 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函 ...

  8. Python之函数与变量

    本节内容 函数介绍及其作用 函数的定义与调用 函数的参数说明 全局变量与局部变量 值传递和引用传递 一.函数的介绍及其作用 编程语言中的函数与数学中的函数是有区别的:数学中的函数有参数(输入),就会有 ...

  9. JavaScript学习09 函数本质及Function对象深入探索

    JavaScript学习09 函数本质及Function对象深入探索 在JavaScript中,函数function就是对象. JS中没有方法重载 在JavaScript中,没有方法(函数)重载的概念 ...

随机推荐

  1. 利用gcc编译链接时出现 ‘undefined reference to `std::ios_base::Init::Init()’ 解决

    一般编译链接c++程序最好使用g++,若有如上的报错信息,需要在gcc后加上 -lstdc++ eg: gcc test.c -lstdc++ gcc和g++都是GNU的一个编译器. g++:后缀.c ...

  2. liunx基本操作操作与文件和目录的管理

    一.基本操作 Tab键: 自动补全ctrl + u: 清空至行首ctrl + k: 清空至行尾 ctrl + l: 清屏 ctrl + c: 取消本次命令编辑重启:rebootsystemctl re ...

  3. python课堂整理4---列表的魔法

    一.list   类, 列表 li = [1, 12, 9, "age", ["大白", "小黑"], "alex"] ...

  4. java练习---9

    //程序员:罗元昊 2017.10.22 package cn.lyh; import com.rupeng.game.GameCore; public class L implements Runn ...

  5. vuex的实现

    源代码可以查看我的github:  https://github.com/Jasonwang911/TryHardEveryDay/tree/master/Vuex/vuex-resouce  欢迎s ...

  6. Python-默背单词

    ​ 数据库单词: 默认单词 单词说明 innodb 事务,主键,外键,tree,表行锁 myisam 主要以插入读取和插入操作 memory 所有数据保存在内存中 ACID 原子性,一致性,隔离性,持 ...

  7. umask 默认权限控制和特殊权限

    权限简单介绍: 在Linux中,创建目录或者文件之后总会有默认的权限.共9个,分为三组.分别代表u.g.o(属主.属组.其他用户).r.w.x 也代表各自的权限. r:读   在文件中的权限代表次文件 ...

  8. Django配置MySQL数据库

    一.在settings.py中配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 数据库引擎 'NAME': ' ...

  9. 【Java例题】5.3 线性表的使用

    3.线性表的使用.使用ArrayList模拟一个一维整数数组.数据由Random类随机产生.进行对输入的一个整数进行顺序查找.并进行冒泡排序. package chapter6; import jav ...

  10. 【Java例题】4.5异常处理

    5. 对于输入的数,如果出现小数,则作为异常处理,并舍去小数,显示结果:如果输入的数据类型不对也作为异常处理,显示结果0. package chapter4; import java.util.*; ...