Python函数/动态参数/关键字参数

 Python函数/动态参数/关键字参数

1.函数

#函数语法:
#函数名规范:小谢字母开头,不同字母下划线隔开(字母数字下划线)
#def 函数名():
    #函数体:希望函数做的事情

1.1.无参函数

#无参函数
def music():
    print("唱着又没动听的歌声...")
#调用函数
music()

1.2.有参函数

#有参函数
def zgl_music(name): #形参
    print("{0}唱着又没动听的歌声...".format(name))

zgl_music("诸葛亮")#传参:实参

#有参函数-默认参数
def speak(name,yy="中文"):
    print("{0}说着{1}".format(name,yy))
speak(name="刘备")#刘备说着中文
speak("关于","阿拉伯语")#关于说着阿拉伯语

1.2.1.请把1-100的整数相加和的功能,写成一个函数

#请把1-100的整数相加和的功能,写成一个函数
def jia(sum1,sum2):
    #判断sum1<sum2
    if sum1<sum2:
        sum = 0
        for item in range(sum1,sum2+1):
            sum = sum+item
        print("{0}到{1}之间数字相加的结果为:{2}".format(sum1,sum2,sum))
    else:
        print("输入错误!")

jia(1,100)

1.3.return

reruen #返回函数结果
#返回a与b的和
def sum(a,b):
    return a+b #将结果返回

sum = sum(1,2)#返回的结果赋值给另一个变量
print(sum)# 3

1.3.1.无参无返

#无参无返
def sum1():
    print("这是个无参无返的函数")
#调用函数
sum1()

1.3.2.有参无返

#有参无返
def sum2(a,b):
    print(a+b)
#调用函数
sum2(2,3)

1.3.3.无参有返

#无参有返
def sum3():
    return 10
#调用函数
sum3()

1.3.4.有参有返

#有参有返
def sum4(a,b):
    return a+b
#调用函数
sum4(5,5)

1.3.5.写一个函数,检查传入列表的长度,如果大于2,那么保留前两个长度的内容,并将新内容返回

def new_list(lists): if len(lists)>2: return lists[0:2] a=[1,2,3,4] print(new_list(a))

1.4.动态参数/不定长参数☆ ☆ ☆

#动态参数/不定长参数
def sum(*args): #*args  arguments
    print(args)#('张三', '李四', '王五', '麻六')  元组
    print("张三:{0}".format(args[0]))
    print("李四:{0}".format(args[1]))
    print("王五:{0}".format(args[2]))
    print("麻六:{0}".format(args[3]))

sum("张三","李四","王五","麻六")

1.4.1.动态参数练习

#动态参数求两个数的和
#第一种
def sum1(*a):
    return a[0]+a[1]

print(sum1(8,9))

#第二种
def sum2(*args):
    sum = 0
    for item in args:
        sum += item
    return sum

print(sum2(2,3))

1.4.1.1.补充1

#第一种
def sum2(*args,a):
    sum = 0
    for item in args:
        sum += item
    print("a = {0}".format(a))
    return sum

print(sum2(2,3,a=1))
输出:

a = 1
5

1.4.1.2.补充2

#第二种
def sum2(a,*args):
    sum = 0
    for item in args:
        sum += item
    print("a = {0}".format(a))
    return sum

print(sum2(2,3,4,5,6))
输出:

a = 2
18

1.5.关键字参数**kwargs☆ ☆ ☆

#关键字参数  key-value  **kwargs
def kw_sum(**kwargs):# key=value
    print(kwargs)

a={"name":"张三"}
kw_sum(k=1,y=2,m=3) #{'k': 1, 'y': 2, 'm': 3}

1.6.变量作用域

#全局变量:在模块里面都能调用
#局部变量:只能用于函数
#当全局和局部变量同名且同时存在的时候,函数有限调用局部变量
a=1#全局变量

def add(b):
    a=5#局部变量
    print(a+b)
add(10)#15

1.6.1.全局变量global

global a#全局变量/声明这是一个全局变量

def add(b):
    a=5#局部变量
    print(a+b)
add(10)#15

 

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python函数/动态参数/关键字参数 - Python技术站

(0)
上一篇 2023年4月2日 下午4:13
下一篇 2023年4月2日

相关文章

  • Python3.7.3环境搭建

    Python3.7.3介绍 Python3.7.3安装(Win10) 到2019年初,Python3已经更新到了Python3.7.3,Python有两个大版本Python2和Python3,Python3是现在和未来的主流。 本文介绍Python3.7.3的安装步骤. 一、下载Python3.7.3 1.百度搜索Python,找到Python官网,点击进入…

    2023年4月2日
    00
  • Python unittest+ddt+openpyxl+configparser

    1.技术介绍 框架:unittest 请求处理:requests excel数据处理:openpyxl 参数化:ddt 配置解析器:configparser 报告模板:HTMLTestRunnerNew.py(下载地址:https://pan.baidu.com/s/1w9AZU9AkIpxCYuzTto0EQA?pwd=1234) testdemo.xls…

    2023年4月2日
    00
  • Python单元测试框架unittest/反射

    1)写用例 TestCase 2)执行用例 1:TestSuite存储用例,2:TestLoader找用例,存储用例,存放指定的TestSuite 3)对比实际结果/期望结果,判定用例是否通过#断言Assert 4)出局测试报告TextTestRunner 1.测试类 import requests class HttpRequest(): def __in…

    2023年4月2日
    00
  • Python参数解析器configparser

    1.configparser介绍 configparser是python自带的配置参数解析器。可以用于解析.config文件中的配置参数。ini文件中由sections(节点)-key-value组成 2.安装: pip install configparse 3.获取所有的section import configparser cf = configpar…

    2023年4月2日
    00
  • Python操作Excel(openpyxl)

    1.引入openpyxl库 安装openpyxl库:pip install openpyxl 引入openpyxl库:from openpyxl import load_worbook 2.代码实现 from openpyxl import load_workbook #打开Excel wb = load_workbook(“C:\Users\Adminis…

    2023年4月2日
    00
  • Python面向对象

      ===面向对象=== 1.面向对象简介 类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。 方法:类中定义的函数。 类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。 数据成员:类变量或者实例变量用于处理类及其实例对象的相关的数…

    2023年4月2日
    00
  • Python怎么引入不同的库?

    怎么引入不同的库? 1.在线安装库 1.1.pip install 模块名 1.2.国内源: 清华:https://pypi.tuna.tsinghua.edu.cn/simple 阿里云:http://mirrors.aliyun.com/pypi/simple/ 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple…

    2023年4月2日
    00
  • Python之open()/OS

    1.File对象数据读写与操作 #def open(file, mode=’r’, buffering=None, encoding=None, errors=None, newline=None, closefd=True): # known special case of open #file: 操作的文件 #mode:打开这个文件的模式 ‘r’ ope…

    2023年4月2日
    00
合作推广
合作推广
分享本页
返回顶部