zoukankan      html  css  js  c++  java
  • python_形参、实参

    #参数:形参、实参
    '''
    def display_message(title):

    print("My favourite book is %s" %title)

    #return 0


    #display_message('alice in Wonderland'.title())

    def describe_pet(pet_name,animal_type="dog"):
    """显示宠物信息"""
    print("My "+animal_type+"'s name is "+pet_name)

    describe_pet(pet_name="Who") #该处实参使用形参的默认值,animal_type = dog
    describe_pet(pet_name="Who",animal_type="cat") #animal_type提供了实参,Python将忽略形参的默认值

    #describe_pet() #实参不匹配,没有指定任何参数,实参个数必须与形参个数一致

    def null(x,y):
    print(x)
    print(y)

    null(1,2)
    print(display_message("mo"))

    '''

    #返回值
    #让返回值变为可选的,只需要把可选的形参放在最后,并指定一个默认值——空字符串。但是在传实参时,位置与形参一一对应。
    '''
    def full_name(first_name,last_name,middle_name =''):
    full_name = first_name+' '+middle_name+' '+last_name

    return full_name.title()
    name= full_name("liu","qian",'01')
    print(name)
    '''

    #返回字典
    '''
    def info(name,age ,sex):
    """返回一个字典,其中包含有关一个人的信息"""
    message = {'name':name,'age':age,'sex':sex}
    return message

    b=info("Monica",24,"F")
    print(b)

    def test1(**kwargs):
    print(kwargs)

    test1(name = "Lee",age = 24)
    '''
    #结合函数和while循环
    def full_name(first_name,last_name):
    full_name = first_name+' '+last_name
    return full_name.title()

    exit_flag = False
    while not exit_flag:
    print("Please input your name:"," ","(enter 'q' at any time to quit)")
    f_name = input("First_name:") #输入first_name,last_name
    if f_name == 'q':
    #exit_flag = True
    break

    l_name = input("Last_name:")
    if l_name == 'q':
    exit_flag == 'q'
    name = full_name(f_name,l_name) #调用方法传入实参
    print(name)
    ----------------------------------------------------
    def data(host,port=3396):
    pass

    data()
    '''
    #默认参数特点:调用函数时,默认参数非必传
    #用途:1.默认安装值 2.数据库的端口号


    '''
    def test(**kwargs):
    print(kwargs)
    print(kwargs['name'])

    test(name = 'Alex',age =22)
    test(**{'name':'Alex','age':22})
    '''


    #*args接收N个位置参数,不能接收关键字参数,转换成元组的形式。
    #kwargs把N个关键字参数,转换成字典的方式
    def test2(name,hobby='tesla',*args,**kwargs):
    info = {}
    info['name']=name
    info['hobby']=hobby
    for key,value in kwargs.items():
    info[key]=value
    # print(name)
    # print(kwargs)
    return info

    user_info =test2('alex','blue','apple',age=23,sex="f")
    print(user_info)

  • 相关阅读:
    Linux系统常用工具集
    Storm安装部署
    Linux下搭建Elasticsearch7.6.2集群
    解决SpringMVC @RequestBody无法注入基本数据类型
    微服务概念
    HashMap的原理简单介绍
    mysql进阶
    vue 路由缓存 keep-alive include和exclude无效
    el-date-picker 时间日期格式,选择范围限制
    RedisTemplate使用rightPushAll往list中添加时的注意事项
  • 原文地址:https://www.cnblogs.com/monica001/p/10490712.html
Copyright © 2011-2022 走看看