首页 > 编程语言 >十六、python里的函数

十六、python里的函数

时间:2023-06-21 18:12:43浏览次数:56  
标签:函数 python 十六 参数 input print 返回值 num1

十六、python里的函数

python里函数分为内置函数与自定义函数
内置函数:如int(),str(),len()等,所有的内置函数参考https://docs.python.org/3/library/functions.html

自定义函数的定义与调用(重点)

def funct():              # 函数名(),括号里可以写参数,也可以不写
    """函数说明或注释"""    # 说明可以不写,大型程序为了程序可读性最好写
    print("xxx")         # 函数代码主体
    print("xxx")         # 函数代码主体
    print("xxx")         # 函数代码主体
    return 0             # 函数返回值,可有可无

funct()   # 调用函数的方式(调用函数也就是执行函数内部的代码)

实例

def wash(a, b, c):
    print("加水{}升".format(a))
    print("搓洗{}分钟".format(b))
    print("脱水{}分钟".format(c))
wash(3, 40, 10)
wash(b=40, a=3, c=10)  # 关键字参数可以换位置

默认参数(缺省值)

def connect_ssh(host,usr,password,port=22): # port=22为默认参数
    print(host, usr, password, port)

host = input("input host:")
user = input("input user:")
password = input("password")
connect_ssh(host,user,password,33) # 不用再传port的值,默认就是22,也可以传一个新的值替代22

可变长参数

def funct1(*args): # args可变,
    num1 = 0
    for i in args:
        if isinstance(i,int):
            num1 += i
    print(num1)
funct1(1,2,3,4,"a","v")

小结

1.为什么要传参?
每次调用函数可能会有不同的需求,传参就相当于是和函数做交互,传不同的值给函数来实现不同的需求

2.形参和实参

3.位置参数
实参与形参按顺序一一对应

4.关键字参数
在实参里也要写上形参的名字,这样做可以改变顺序

5.默认值参数
大部分情况下值不变,极少数值不一样的情况下可以使用默认值参数。
默认值参数就是不传值就用默认的,传了值就用传的值。

6.可变长参数
参数个数不确定的情况就用可变长参数

函数返回值(重点)

函数的功能要专一,一个函数只能完成一个功能
函数返回值额度作用:把函数的执行结果返回给需要调用的地方
函数return返回的是一个,所以要赋值给一个变量,然后通过调用变量得到返回值
函数返回值写在函数体的最后,因为函数返回值意味着函数的结束

def funct1(*args):
    num1 = 0
    for i in args:
        if isinstance(i,int):
            num1 += i
    return num1		# return返回的值才可以被调用
sum = funct1(1,2,3,4,5,5)
if sum > 10:
    print("大了")
else:
    print("小了")

标签:函数,python,十六,参数,input,print,返回值,num1
From: https://www.cnblogs.com/chunjeh/p/17496853.html

相关文章

  • Python遍历dict类型数据,输出预期结果
    主要代码段: dict数据(预期结果对应的数据如下)1、 2、 输出预期结果:1、[(值1,值2),(值3,值4)] 2、[(值1,值2)](两种情况不会同时出现) ......
  • Day 01 python基础
    某个字的编码print(ord('北'))#北这个字的编码(数字)21271多条print()输出到一行显示,只需要将end设置成其他字符,比如end=‘(中间放内容)’使用连接符连接多个字符串,使用“+”连接数值和其他数据类型时,系统默认为加法计算,程序报错,解决方案,可将数值作为字符串来处理可以......
  • python基础之编码和加密
    一、base64importbase64#编码s1='hello'result=base64.b64encode(s1.encode())#只能对bytes类型编码,结果为bytes类型print(result.decode())#解码为字符串#解码res="6IuR5rWpIGlzIGdvb2Q="s2=base64.b64decode(res.encode())#只能对bytes类型解码,结......
  • 函数相关约束
    函数的相关约束函数重载:在函数实现之前,对函数调用的多种情况进行声明可选参数:可以在某些参数名后加上问号,表示该参数可以不用传递。可选参数必须在参数列表的末尾。#举个栗子-应用场景/***相乘的结果*@parama*@paramb*/functioncombine(a:numb......
  • 自动化平台总结(httprunner+djangorestframework+python3+Mysql+Vue)【基础构思】
    一、前言最近从零搭建了一个自动化测试平台,虽然不是第一次从零搭建,但是也从来没有进行过这类搭建的总结,还是记录一下,搭建过程中的一些问题和方法。方便以后总结和翻阅二、简介搭建的平台使用的是Python3.6,未来有空可能考虑加个java版本。前端用的Vue,主体是httprunner2.......
  • 【python基础】类-继承
    编写类时,并非总是要从空白开始。如果要编写的类时另一个现成类的特殊版本,可使用继承。一个类继承另一个类时,它将自动获得另一个类的所有属性和方法原有的类称为父类,而新类被称为子类。子类继承了其父类的所有属性和方法,同时还可以定义自己的属性和方法。继承语法格式:class子类......
  • vue中的data为什么是一个函数
    Vue中的data必须是个函数,因为当data是函数时,组件实例化的时候这个函数将会被调用,返回一个对象,计算机会给这个对象分配一个内存地址,实例化几次就分配几个内存地址,他们的地址都不一样,所以每个组件中的数据不会相互干扰,改变其中一个组件的状态,其它组件不变。简单来说,就是......
  • CentOS7 源码编译安装 Python 3.8.10,开启 SSL 功能
    背景CentOS7自带的Python3,或者通过yum安装的Python3,可能会有无法使用ssl的问题:$python3Python3.8.10(default,Jun132023,14:51:15)[GCC11.2.120220127(RedHat11.2.1-9)]onlinuxType"help","copyright","credits"or"license&qu......
  • Python 安装依赖包,出现 ssl.SSLCertVerificationError 的问题,解决方法
    问题描述CentOS7环境,已安装Python3.8.10。最近项目开发,需要切换solidity版本,参考开发文档,需要执行如下命令pipinstallsolc-select==0.2.0#安装指定版本solcsolc-selectinstall<solc版本号>#切换solc版本solc-selectuse<solc版本号>先使用pipinstallsolc-......
  • python基础之并发
    一、多线程示例代码1:简单多线程importtimeimportthreadingdeffoo(t):print("foo开始")time.sleep(t)print("foo结束")start=time.time()t_list=[]foriinrange(100):t=threading.Thread(target=foo,args=(2,))#注意,如果只有一个参......