函数初识

1. 函数定义:

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

2. 函数调用:

函数名 + ()   

def my_len():
s = "alex"
count = 0
for i in s:
count += 1
print(count)
my_len() #调用 显示4

3. 函数的返回值:

return:

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

4. ()

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

4.1 位置传参:

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

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

​ 位置参数 > 默认参数

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

4.2 关键字传参:

def func(a,b,c):
print(a,b,c)
func(a=1,c=3,b=2) # 按a,b,c 传参, 1,2,3 def func(a,b,c=4):
print(a,b,c)
func(a=1,c=3,b=2) # 1 2 3 c=4被覆盖 #依次输出name,age,sex:
def userinfo(name,age,sex="男"):
print(name,sex,age)
while True:
name = input("name:")
age = int(input("age:"))
sex = input("sex(如果是男,直接回车!):")
if sex == "女":
userinfo(name,age,sex)
else:
userinfo(name, age)

4.3 混合传参:

​ 位置参数 > 关键字参数

#错误示例:
def func(a,b,c):
print(a,b,c)
func(1,b=3,5) # 位置参数跟随在关键字参数后,报错 def func(a,b,c):
print(a,b,c)
func(1,3,c=5) # 1 3 5 def func(a:int,b:str): # 只有提示作用,没有约束作用
print(a,b)
print(type(a)) # int
print(type(b)) # int
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. 小白开学Asp.Net Core《二》

    小白开学Asp.Net Core<二> ——数据仓储层(Repositroy) 一.历史现象 在后端开发中,数据库操作是最频繁的,每一个开发人员都会接触,甚至不少开发人员每天的工作就是与数 ...

  2. python函数闭包-装饰器-03

    可调用对象 callable()  # 可调用的(这个东西加括号可以执行特定的功能,类和函数) 可调用对象即  callable(对象)  返回为  True  的对象 x = 1 print(cal ...

  3. Linux基础之快照克隆、Xshell优化、Linux历史

    今天主要分享4个Linux基础知识,第一个知识是虚拟机快照,第二个是虚拟机克隆,第三个是优化Xshell,第四个是简述Linux历史. 先分享第一个知识——虚拟机快照. 1.4)虚拟机快照 虚拟机快照 ...

  4. mysql语句汇总

      MySQL常用命令: show databases; 显示数据库 create database name; 创建数据库 use databasename; 选择数据库 drop database ...

  5. linux字符设备驱动中内核如何调用驱动入口函数 一点记录

    /* 内核如何调用驱动入口函数 ? *//* 答: 使用module_init()函数,module_init()函数定义一个结构体,这个结构体里面有一个函数指针,指向first_drv_init() ...

  6. solr使用心得

    /**   * @author  zhipeng  * @date 创建时间:2015-10-10 下午12:15:35   * @parameter     * @return    */ publ ...

  7. 阿里云Linxu下的Mysql安装与配置

    说明:本文主要详细介绍了关于如何在阿里云ECS服务器上安装并配置Mysql 环境:Centos 7版本,阿里云部署好系统后会默认安装mariadb数据库 1.删除阿里云自带的MariaDB # rpm ...

  8. 表单与v-model

    基本用法 vue.js提供了v-model指令,用于在表单类元素上双向绑定数据,例如在输入框上使用,输入的内容会实时映射到绑定的数据上 example1:修改input框内容,message会实时渲染 ...

  9. ByteBuf

    ByteBuf readerIndex ,读索引 writerIndex ,写索引 capacity ,当前容量 maxCapacity ,最大容量,当 writerIndex 写入超过 capaci ...

  10. Java编程基础阶段笔记 day 07 面向对象编程(上)

    ​ 面向对象编程 笔记Notes 面向对象三条学习主线 面向过程 VS 面向对象 类和对象 创建对象例子 面向对象的内存分析 类的属性:成员变量 成员变量 VS 局部变量 类的方法 方法的重载 可变个 ...