python--初学笔记

参数分类

  -普通参数

  -默认参数

  -关键字参数

  -收集参数

-普通参数

  -定义的时候直接定义的变量名

  -调用的时候直接把变量或者值放入指定位置

    def 函数名(参数1, 参数2, ...):

      函数体

    #调用

    函数名(value1, value2, ......)

    #调用的时候,具体值参考的是位置,按位置赋值

-默认参数

  -形参带有默认值

  -调用的时候,如果没有对应的形参赋值,则使用默认值

    def func_name(p1=v1, p2=v2......):

      func_block

    #调用1

    func_name()

    #调用2

    value1 =100

    value2 = 200

    func_name(value1, value2)

 -关键书参数

  -语法

    def func_name(p1=v1,p2=v2......)

      func_body

    调用函数:

    func_name(p1=value1, p2=value2......)

  -比较麻烦,但也有好处

    -不容易混淆,一般实参和形参只是按照位置一一对应即可,容易出错

    -使用关键字参数,可以不考虑参数的位置

def reg(name, age, gender="male"):
if gender == "male":
print("{0} is {1},and he is a good student".format(name, age))
else:
print("{0} is {1},and she is a good student".format(name, age))

reg("xcl", 18, 'female')
reg("lxc", 18)

-收集参数

  -语法

    def func_name(*args):

      func_body

      按照list使用方式访问args得到传入的参数

    #调用

    func_name(p1,p2,p3,...)

-参数名args不是必须这么写的,但是,我们推荐直接使用args,约定俗成

-参数args前需要有星号

-收集参数可以和其他参数共存

def stu(*args):
print("自我介绍下:")
print(type(args))
for item in args:
print(item)

p = "liyang"
stu(p)
stu(p, 18)

 -收集参数的关键字收集参数

  -把关键字参数按字典格式手机参数

  -语法:

    def func_name(**kwargs):

      func_body

    #调用

    func_name(p1=v1, p2=v2, p3=v3......)

  -kwargs一般约定俗成

  -调用的时候,把多余的关键字参数放入kwargs

  -访问kwargs需要按字典格式访问

 def stu(**kwargs):
print("自我介绍下:")
print(type(kwargs))
for k, v in kwargs.items():
print(k, ":", v)

stu(name="liyang", age=18, adr="bj", lover="liyangynag", work="Teacher")
print("*" * 20)

  

收集参数混合调用的顺序问题

  -收集参数,关键字参数,普通参数可以混合使用

  -使用规则就是,普通测试和关键字参数优先

  -定义的时候一般普通参数,关键字参数, 收集参数tuple, 收集参数dict

 #返回值

  -函数和过程的区别

    -有无返回值

  -需要用return显示返回内容

  -如果没有返回,则默认返回None

  -推荐写法,无论有无返回值,最后都有以return结束



def func_1():
print("有")
return 1

def func_2():
print("没有")

f1 = func_1()
print(f1)
f2 = func_2()
print(f2)

运行结果:

1
没有
None

#函数文档

  -函数的文档的作用是对当前函数使用相关的参考信息

  -文档写法:

    -在函数的内部开始第一行使用三引号字符串

    -一般具有特定的格式

    -参看案例

  -文档查看

    -使用help函数,形如help(func_name)

    -使用__doc__,查看案例

  

def stu(name, age):
'''
这是文档的内容
:param name: 表示学生名字
:param age: 表示学生的年龄
:return: 此函数没有返回值
'''
pass

print(help(stu))
print("*" * 20)
print(stu.__doc__)

运行结果:

Help on function stu in module __main__:

stu(name, age)
    这是文档的内容
    :param name: 表示学生名字
    :param age: 表示学生的年龄
    :return: 此函数没有返回值

None
********************

    这是文档的内容
    :param name: 表示学生名字
    :param age: 表示学生的年龄
    :return: 此函数没有返回值

  

原文地址:https://www.cnblogs.com/Slxc/p/9698910.html