侧边栏壁纸
  • 累计撰写 197 篇文章
  • 累计收到 496 条评论

Python学习笔记之函数定义

2019-9-19 / 0 评论 / 56 阅读
# 时间: 2019年9月19日 20:45
# 函数的定义
'''
基本语法
def functionName ():
    pass
'''

def say():
    print('看张宇童博客,站在巨人的肩膀上')

say() # 看张宇童博客,站在巨人的肩膀上
'''
函数的命名
字母数字下划线,首字符不能为数字
严格区分下划线,且不能使用关键字
函数命名有意义,且不能使用中文哦
'''

'''
驼峰命名法:
    1、大驼峰命名法 ThisIsZhangYuTongBlog  (用于类的命名)
    2、小驼峰命名法 thisBlog               (用于函数命名)
    3、普通情况下一般用下划线命名 this_is_zhangyutong_blog
'''
i = 1
while i <= 10: 
    print('%d、' % (i),end="")
    say()
    i+=1

# 默认函数参数
def say(name = '没有输入名字'):
    print(name)

say('132')
say() 

# 普通收集参数 用于收集多余的普通实参
# def func(*args) 在参数名前加* 则为普通收集参数
def func(a,b,*c):
    print(a,b,c)
# 普通收集参数将收集到的参数存放在元组中
func(1,3,2,53,2) # 1 3 (2, 53, 2)

def add(*args):
    n = 0
    for i in args:
        n += i
    print(n) 
add(1,2,3) # 6

# 关键字收集参数
# 专门用于收集多余的关键字实参
# def func(**kwargs):
#     pass
def say_hello(blogName, blogUrl, **kwargs):
    print(blogName, blogUrl)
    print(kwargs)
'''
张宇童博客 http://www.zyt8.cn
{'describe': '博文很精彩', 'contentDesc': '内容全原创'}
''' 
say_hello('张宇童博客', blogUrl = 'http://www.zyt8.cn', describe = '博文很精彩', contentDesc = '内容全原创')

# 命名关键字参数
'''
def func( arg1, *, arg2, arg3 ):
    pass
语法:在函数定义是写在*号后面的arg2是命名关键字参数
作用:在函数调用的时候必须使用关键字实参进行调用
'''
# example
def func(arg1, arg2, arg3):
    print(arg1, arg2, arg3)
func(123,321,213) # 123 321 213

def func(arg1, arg2, *,arg3 = ''):
    print(arg1, arg2, arg3)
func(123,321,arg3 = {'1': '123'}) # 123 321 123

# 关于 * 和 ** 的用法
'''
*  用来修饰容器类型,把容器内数据展开
** 用来修饰字典类型
example
func(*arg1, **arg2)
'''
def function (name, hello, url) :
    print(name,hello,url)
listvar = [1,2,3]
dictvar = {'name': '张宇童', 'url': 'http://www.zyt8.cn','hello': 'world'}
# function(*listvar)
function(**dictvar)

# 型参声明的排序
# 普通参数,默认参数,普通收集参数,命名关键字参数,关键字收集参数

print(print.__doc__)

评论一下?

OωO
取消