惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

大猫的无限游戏
大猫的无限游戏
D
DataBreaches.Net
M
MIT News - Artificial intelligence
量子位
N
Netflix TechBlog - Medium
The Cloudflare Blog
The GitHub Blog
The GitHub Blog
P
Proofpoint News Feed
人人都是产品经理
人人都是产品经理
B
Blog RSS Feed
B
Blog
博客园_首页
博客园 - Franky
MyScale Blog
MyScale Blog
有赞技术团队
有赞技术团队
Apple Machine Learning Research
Apple Machine Learning Research
MongoDB | Blog
MongoDB | Blog
云风的 BLOG
云风的 BLOG
爱范儿
爱范儿
H
Help Net Security
Y
Y Combinator Blog
Stack Overflow Blog
Stack Overflow Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
酷 壳 – CoolShell
酷 壳 – CoolShell

老董笔记

尚硅谷机构在哪?尚硅谷培训怎么样?靠谱吗-互联网IT百科 韩顺平介绍,传智讲师,开办泰牛,入尚硅谷等一系列-互联网IT百科 pandas多重索引标准样式(写入excel有空行)-互联网IT百科 cannot join with no overlapping index names-互联网IT百科 pandas多列变多行(即宽表变长表)melt和stack函数-互联网IT百科 pandas多行转多列(长表变宽表)pivot和unstack-互联网IT百科 Index contains duplicate entries, cannot reshape完美解决-互联网IT百科 single positional indexer is out-of-bounds-互联网IT百科 Can only compare identically-labeled Series objects-互联网IT百科 pandas transform用法详解(多个案例)-互联网IT百科 python四舍五入精确实现-互联网IT百科 pandas的groupby使用apply分组排序-互联网IT百科 index 0 is out of bounds for axis 0 with size 0-互联网IT百科 pandas分组过滤filter函数-互联网IT百科 联想Win10系统如何禁用触摸屏关闭触摸-互联网IT百科 groupby分组计算transform转换返回相同长度序列-互联网IT百科 brooks seo教程python教程,brooks seo教程网盘,布鲁seo资源-互联网IT百科 电脑右键文件夹一直转圈电卡死怎么回事-互联网IT百科 施琪嘉的心理成长课(荐)-互联网IT百科 百度SEO公司_SEO推广公司哪家好_SEO外包服务如何选-老董笔记 groupby后agg同1列用多个聚合函数、不同列用不同函数、自定义函数-互联网IT百科 pandas的groupby单列多列分组聚合运算-互联网IT百科 DataFrameGroupBy对象及分组个数、分组大小、组名索引、组数据详解-互联网IT百科 pandas中groupby之Grouper and axis must be same length-互联网IT百科 pandas中groupby的分组原理-互联网IT百科 pandas的groupby的使用详解大全-互联网IT百科 openpyxl单元格自动换行强制换行Alignment(wrapText=True)-互联网IT百科 python教程全套(可就业)-互联网IT百科 联想win10系统CPU显示100%,电脑呼呼响怎么回事-互联网IT百科 如何自制CPU,CPU原理是怎么样的?-互联网IT百科
python函数定义,调用,传参,位置参数及关键字参数,返回值-互联...
2020-09-08 · via 老董笔记

  使用函数是真正开始编程的第一步,函数y=f(x)我们并不陌生,对x进行一顿操作得到一个值y。给不同的x,进行相同的操作,得到相应的y值。

  程序层面函数是执行特定任务的一段代码,将一段代码定义成函数并为该函数指定一个函数名,之后就可以用名称来“调用”这个函数。

  前面我们己经用过一些函数,如len()、id()等。这些是python生来就有的函数称为内置函数。

  除了python的内置函数,我们在编程中还可以自定义函数,在编程中我们大量使用的还是自定义函数,先看一个入门案例:  

 # -*- coding: utf-8 -*-

# 定义一个函数,能够完成打印一句话
def printInfo():
    print('人生苦短,我用Python')
printInfo()
printInfo()
printInfo()
D:python3installpython.exe D:/python/py3script/python66.py
人生苦短,我用Python
人生苦短,我用Python
人生苦短,我用Python

Process finished with exit code 0              



    

定义函数和调用(定义了函数直接写函数名就是调用):

  使用def语句定义一个函数,def语句后面跟着函数的名称,然后是一对小括号,括号里面可以填写函数需要的参数,最后是冒号结束,然后下一行缩进开始写函数体的内容。完整的函数写法如下:

      def 函数名(形参):
          代码块
      return 返回值

  1.声明函数必须使用def关键字。

  2.函数名:从语法角度来看,函数名是一个合法的标识符即可(变量的命名规范一样);从可读性角度来看,函数名应该由一个或多个有意义的单词组合而成,

  3.形参:用于定义该函数可以接收的参数,函数可以有参数也可以无参数。
    1)形参可以有多个,多个形参以英文逗号(,)隔开。      
    2)定义函数时指定了形参,调用该函数时就必须传入对应的参数值(或者说给对应的形参赋值)      
    3)形参和函数外界无任何关系,函数内部通过形参名字使用形参,调用函数时给形参传值,此时这个值叫实参。

 # -*- coding: utf-8 -*-

def sum(num1, num2,):
    print('两数的和是')
    print(num1 + num2 )

sum(1,10) #调用函数

D:python3installpython.exe D:/python/py3script/python66.py
两数的和是
11

Process finished with exit code 0

  4.函数的参数默认值

  1)在定义函数的时候参数可以给定默认值,有默认值的参数必放在没有默认值参数列表的后面。
  2)如果参数有默认值,在函数调用的时候可以不填,不填就使用默认的值。
  2)如果参数有默认值,在函数调用的时候也可以重新赋值。

 # -*- coding: utf-8 -*-

def sum(start, end, step=1):
    num_list = range(start, end, step)
    print(num_list,len(num_list))
    total = 0
    for i in num_list:
       total += i
    if step == 1:
        print("从%d加到%d是%d" % (start, end-1, total))
    elif step == 2:
        print("从%d到%d奇数相加是%d" % (start, end - 1, total))

sum(1,10)
sum(1,10,step=2)
D:python3installpython.exe D:/python/py3script/python66.py
range(1, 10) 9
从1加到9是45
range(1, 10, 2) 5
从1到9奇数相加是25

Process finished with exit code 0

  5.函数位置参数与关键字参数

  1)不通过参数名字而是直接在对应位置传入参数值被称为位置参数
  2)使用位置参数的方式来传入参数值(给形参赋值),必须按照定义函数时指定的形参顺序来传入。
  3)根据参数名来传入参数值被称为关键字(keyword)参数
  4)使用关键字参数的方式来传入值(给形参赋值),则无须关注定义的形参顺序。

 # -*- coding: utf-8 -*-

# 定义一个函数
def star_people(body , girl):
    print("body: ", body)
    print("girl: ", girl)
    return body,girl

# 根据位置传入参数
star_people('刘恺威', '赵丽颖')
# 根据关键字参数来传入参数
star_people(body = '刘恺威', girl = '赵丽颖')
# 使用关键字参数时可交换位置
star_people(girl = '赵丽颖', body = '刘恺威')
# 部分使用关键字参数,部分使用位置参数
star_people('刘恺威',girl ='赵丽颖')
D:python3installpython.exe D:/python/py3script/python66.py
body:  刘恺威
girl:  赵丽颖
body:  刘恺威
girl:  赵丽颖
body:  刘恺威
girl:  赵丽颖
body:  刘恺威
girl:  赵丽颖

Process finished with exit code 0

  6.return返回值

  想要在函数中把结果返回,需要在函数中使用return,return语句可以返回所有的数据类型,可以返回一个或多个值。如果没有写return语句,函数的默认返回值是None。

# -*- coding: utf-8 -*-

def sum(num1, num2,):
    # 用res变量保存两数之和
    res = num1 + num2
    # return
    return res

# 必须用变量接受return返回的值
result = sum(1,10)
print(result)

def add(num1, num2,):
    # 用res变量保存两数之和 但是没有return
    res = num1 + num2

result = add(1,10)
print(result)

def do(num1, num2,):
    # 用res1变量保存两数之和 但是没有return
    res1 = num1 + num2
    # 用res2变量保存两数之差 但是没有return
    res2 = num1 - num2
    return res1,res2

result1,result2 = do(1,10)
print(result1,result2)


D:python3installpython.exe D:/python/py3script/python66.py
11
None
11 -9

Process finished with exit code 0

  7.函数根据有没有参数,有没有返回值,可以相互组合,一共有4种

  无参数,无返回值

  无参数,有返回值

  有参数,无返回值

  有参数,有返回值

很赞哦!

python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群 python学习会