---恢复内容开始---

python函数的定义

 def add():
a = 1
b = 2
c == a + b
print(c)

函数就是把一段实现某一个功能的代放进一个封装的方法名里,这个方法就叫做函数名

函数的参数

 def plus(a,b):
c = a + b
    print(c)
plus(100,20)

在这段代码里:

a,b是形参

100,20是实参

所谓实参,就是是实在在的传递的参数,形参就是用来接收的参数

下面说返回值:return

 def plus(a,b):
c = a + b
return c
result = plus(100,20)
print('resule = %d'%result)

返回值就是函数执行完以后,最后返回给系统的一个数(0 1)或者一个运算值。总之就是一个数据,你要想要这个数据,就要保存

举例子: 我给了儿子100块去超市买点东西来吃,儿子回来后给我时报辣条和一包烟

函数执行的时候一旦遇到return后面的东西就不执行了

 def plus(a,b):
c = a + b
print('------1-------')#验证就用print打印,看进行到了哪一步
return 1
print('------2-------')
return 2
print('------3-------')
return c
result = plus(100,20)
print('resule = %d'%result)

此时,打印的结果为

------1-------
resule = 1

后面的return 2 和return c 就不再执行了

总结一下函数的返回值

函数的 参数 和 返回值 都是可以有也可以没有的,要看情况

返回值,比如函数执行的是一个这样的任务,打开电脑的摄像头,执行完了以后返回值为1,这个1只是返回给系统,系统看到1知道你已经执行成功了。

小练习:

输入一个数,输出从1到这个数的累积和

要用到参数、返回值

 #0 定义一个函数,对数据进行处理
def sun_result(num):
i = 1
my_sum = 0
while i <= num:
my_sum = my_sum + i
i += 1
return my_sum
#1 输入一个整数,并获取
num = int(input('请输入一个整数:'))
#2 调用函数,吧获取的数据传递过去
result = sun_result(num)
#3 打印函数的执行结果
print(result)

函数的参数(高级)                                                                                                                                                                                                                  

1、传递不定个数的参数   *形参

                   

 def test(*argv):
for temp in argv:
print(temp)
test(1,2,3,'haha',4)

打印结果:

1
2
3
haha
4

2、如果前面要输入一个必须的参数,然后后面餐能打印

def test(num1,*argv):

   print(num1)

  print('------')

   for temp in argv:

    print(temp,end='  ')

test(0,1,2,'haha')  

打印结果:

0

----

1  2  haha

第一个传递给num,剩下的给argv

如果第一个必须要输入一个特定的数字,就加一个判断

缺省函数

形参里面的变量默认一个值,如果不对这个变量进行实参赋值,就用默认的

调用函数时,缺省参数的值如果没有传入,则被认为是默认值。下例会打印默认的age,如果age没有被传入:

     def printinfo( name, age = 35 ):
# 打印任何传入的字符串
print "Name: ", name
print "Age ", age # 调用printinfo函数
printinfo(name="miki" )
printinfo( age=9,name="miki" )
以上实例输出结果: Name: miki
Age 35
Name: miki
Age 9

---恢复内容结束---

Python 函数之路的更多相关文章

  1. python成长之路六-函数的初识

    定义函数 我们现学已知的python函数有<内置函数> 而我们现在要学的是<自定义函数> 1,def  定义一个函数 def name(): # 后接函数名 冒号 pass 2 ...

  2. Python菜鸟之路:Python基础——函数

    一.函数 1. 简介 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.函数能提高应用的模块性,和代码的重复利用率. 2. 组成 函数代码块以 def 关键词开头,后接函数名和圆括号( ...

  3. python爬虫之路——初识函数与控制语句

    介绍python函数的定义与使用方法,介绍Python的常用控制语句:判断和循环 函数: 格式 def   函数名(参数1,参数2): return ‘结果’ 判断语句:就是多选一 二选一: if c ...

  4. Python学习之路-Day2-Python基础3

    Python学习之路第三天 学习内容: 1.文件操作 2.字符转编码操作 3.函数介绍 4.递归 5.函数式编程 1.文件操作 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个 ...

  5. Python学习之路-Day2-Python基础2

    Python学习之路第二天 学习内容: 1.模块初识 2.pyc是什么 3.python数据类型 4.数据运算 5.bytes/str之别 6.列表 7.元组 8.字典 9.字符串常用操作 1.模块初 ...

  6. python精进之路1---基础数据类型

    python精进之路1---基本数据类型 python的基本数据类型如上图,重点需要掌握字符串.列表和字典. 一.int.float类型 int主要是用于整数类型计算,float主要用于小数. int ...

  7. Python学习之路【第一篇】-Python简介和基础入门

    1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是 ...

  8. Python高手之路 ------读书有感

    最近忙中偷闲把前些年买的<Python高手之路>翻了出来,大致看完了一遍,其中很多内容并不理解,究其原因应该是实践中的经验不足,而这对于现如今的我仍是难以克服的事情,对此也就只能说是看会了 ...

  9. Python菜鸟之路:Django 路由补充1:FBV和CBV - 补充2:url默认参数

    一.FBV和CBV 在Python菜鸟之路:Django 路由.模板.Model(ORM)一节中,已经介绍了几种路由的写法及对应关系,那种写法可以称之为FBV: function base view ...

随机推荐

  1. Haskell 笔记(三)类型系统

    类型 (Type) Haskell的类型系统式静态类型系统,在编译的时候就知道数据类型,所以不同类型的值运算在编译的时候就会报错,比如用布尔值和整数运算,在C语言中这种运算就不会报错. Haskell ...

  2. iOS-王云鹤 APP首次启动显示用户指导

    这个功能的重点就是在如何判断应用是第一次启动的. 其实很简单 我们只需要在一个类里面写好用户引导页面  基本上都是使用UIScrollView 来实现, 新建一个继承于UIViewController ...

  3. 350 - Pseudo-Random Numbers

     Pseudo-Random Numbers  Computers normally cannot generate really random numbers, but frequently are ...

  4. spi数据KL25用SPI操作nor flash

    最近研究spi数据,稍微总结一下,以后继续补充: KL25的SPI连接一个nor flash.该flash型号为FM25F04,支撑SPI的模式0和模式3,要求高位先发送,在上升沿采集数据. 通常,S ...

  5. 使用ThreadGroup模拟线程池

    参考文章: [1]创建线程池 http://sunnylocus.iteye.com/blog/223327?page=2#comments [2]线程组ThreadGroup  http://hub ...

  6. Angularjs实现简单分页

    一个后台中总需要一款分页,那我为了自己方便使用,实现如下效果 我把这个组件命名为tm.pagination,原因是因为起名真的太难起了.而且我网名也叫天名, TM就这样了吧.github地址https ...

  7. trie树模板(统计难题)

    统计难题 Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131070/65535 K (Java/Others)Total Submi ...

  8. SR-IOV简介

    转载:http://docs.oracle.com/cd/E38902_01/html/E38873/glbzi.html SR-IOV 技术是一种基于硬件的虚拟化解决方案,可提高性能和可伸缩性.SR ...

  9. Netty 5.0源码分析之综述

    1. 前言 本系列主要是用于梳理Netty的架构流程,深入设计细节,重点关注Netty是如何实现它所声称的特性. (ps:本人水平有限,如有错误,请不吝指教 : )) 2. 什么是Netty Nett ...

  10. [DP之多重背包优化方法]

    首先我们看一道有趣的题目 然后这道题很快想到是一个多重背包和无限背包混合体 那么我们就以这道题 来讨论一下多重背包的优化 首先我们看看朴素打法 memset(F,,]=; ;i<=N;i++) ...