IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> python-----函数1 -> 正文阅读

[Python知识库]python-----函数1

函数是一个过程、功能、动作,实现某个功能或者某些功能指令的集合

目录

? ? ? ? ?1 函数的定义

2 函数的调用

3 函数的分类

4 函数的参数

? ? ?4.1位置参数

? ? ?4.2默认值参数

? ? ?4.3可变参数

? ? ?4.4关键字参数

? ? ?4.5命名关键字参数


1 函数的定义

def (define function)
语法结构:
def 函数名称([参数列表 ] :
? ? ?# 缩进 函数体
? ? #[ return 返回值 ]
#定义一个取绝对值的函数
def abs(x):
    if x >= 0:
        return x
    else:
        return -x
print(abs(-100))

#结果返回多个值
import math 
def move(x,y,step,angle=0): 
    nx = x + step*math.cos(angle) 
    ny = y - step*math.sin(angle) 
    return nx,ny 
x,y = move(7,7,7,math.pi/6) 
print(x,y)

#结果返回多个值(返回多个值的时候实际返回的是一个元组)
import math 
def move(x,y,step,angle=0): 
    nx = x + step*math.cos(angle) 
    ny = y - step*math.sin(angle) 
    return nx,ny 
r = move(7,7,7,math.pi/6) 
print(r)

2 函数的调用

函数名称([参数 ]
#abs为取绝对值函数
>>> x = abs 
>>> x(-1)
1

3 函数的分类

1 、有无参数
有参函数和无参函数
2 、有无返回值
有返回值函数和无返回值函数
3 、根据定义者角色
系统自定义(内置函数)
第三方 ( 公司、个人、组织 ) 自定义的

4 函数的参数

? ? ?4.1位置参数

#对于power(x,n)来说有两个参数,调用函数的时候需要依次按照顺序传入两个参数的值
def power(x,n): # x = 4 n =3 
    s = 1 
    while n > 0: 
        n = n -1   # n = 3-1=2   n = 2-1  n = 1-1 
        s = s * x  # s = 1 *4    s = 4*4  s = 16 * 4 
    return s 
print(power(4,3))

? ? ?4.2默认值参数

默认值参数就是给一个参数设定默认值,如果这个参数没有传入相对应的值,按照默认值进行计
算,如果传入对应的值,按照传入的值进行计算
注意:默认值参数写在后面
def power(x,n=2):        # x = 4 n =3 
    s = 1 
    while n > 0: 
        n = n -1         # n = 3-1=2  n = 2-1   n = 1-1 
        s = s * x        # s = 1 *4   s = 4*4   s = 16 * 4 
    return s 
print(power(4))

? ? ?4.3可变参数

可变参数, * 表示可变参数
允许调用函数的时候传入 0 个或者任意个参数,系统会将这些参数自动封装成元组
def num(*numbers): 
    sum = 0 
    for n in numbers: 
        sum = sum + n*n 
    return sum 
# print(num([1,2,3,4])) 
# print(num((1,2,3,4))) 
print(num(1,2,3,4)) 
print(num(1,2,3))

? ? ?4.4关键字参数

允许调用函数的时候传入 0 个或者任意个参数,系统会将这些参数自动封装成字典
>>> def person(name,age,**kw): 
... print("name:",name,"age:",age,"other:",kw) 
... 
>>> person("zhangsan",18) 
name: zhangsan age: 18 other: {} 
>>> person("zhangsan",18,city="Beijing") 
name: zhangsan age: 18 other: {'city': 'Beijing'} 
>>> person("zhangsan",18,city="Beijing",gender="男") 
name: zhangsan age: 18 other: {'city': 'Beijing', 'gender': '男'} 
>>> d = {"city":"chongqing","gender":"男"} 
>>> person("lisi",20,city=d["city"],gender=d["gender"]) 
name: lisi age: 20 other: {'city': 'chongqing', 'gender': '男'} 
>>> person("lisi",20,**d) 
name: lisi age: 20 other: {'city': 'chongqing', 'gender': '男'}

? ? ?4.5命名关键字参数

>>> def person(name,age,*,city,gender): 
... print(name,age,city,gender) 
... 
>>> person("zhansgan",24,city="beijing",gender="男") 
zhansgan 24 beijing 男


#报错
#报错原因:person("zhansgan",24,"beijing","男")报错的原因是没有出现命名关键字,系统默认的是位置参
数,person(name,age,*,city,gender)函数位置参数只有两个,所以会报错
>>> person("zhansgan",24,"beijing","男") 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
TypeError: person() takes 2 positional arguments but 4 were given

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-12-05 12:00:09  更:2021-12-05 12:01:38 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 3:32:49-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码