1.函数的定义:

定义:def 关键词开头,空格之后接函数名和圆括号(),还有最后一个‘:’

    def是固定的,定义函数的关键字。

    空格-是为了将关键字和函数名分开,必须有的。

    函数名:只能包括字符串,下划线和数字,不能是数字开头,尽量要短,能表达清楚函数功能。

    括号:必须带上

    注释:每一个函数应该对功能和参数进行说明,增恰肮代码的可读性。

2.函数的调用:函数名()   要记得加上括号。

3.函数的返回值:

return 关键字 后面接着是需要返回的值。

情况:

A.没有返回值

不写return的情况下,会默认返回一个None

def fun():
print('hello world')
fun()
print(fun())
结果:

hello world
hello world
None

return的出现是结束函数的,及时出现return 不写返回值,系统也会返回值None。

def fun():
print('hello world')
return
print('Ada lace')#验证return终止函数运行
fun()
print(fun())
结果: hello world hello world None

B.返回一个值:

def fun():
s1= 'Ada lace'
length=0
for i in s1:
length+=1
return length#单一的返回值
print(fun())
结果:
8

C.返回多个值:

#多个值返回会被组织成元组返回给调用者。也可以用多个值来接收。

def fun1():
return 1,2,3,4
def fun2():
return 1,[11,22],{'key':159},'ada lace'
print(fun1())
print(fun2())
结果:
(1, 2, 3, 4)#多个值返回会被组织成元组返回给调用者。也可以用多个值来接收。
(1, [11, 22], {'key': 159}, 'ada lace')

关于返回值是多个值  怎么去接收他们的数据:

def fun():
return 1,[11,22],{'key':159},'Ada lace '
# 返回多个值,用一个变量去接收
ret=fun()
print(ret)
#返回多个值,用多个变量接收,返回几个值就用几个变量去接收
a,b,c,d=fun()
print(a,b,c,d) 结果:
(1, [11, 22], {'key': 159}, 'Ada lace ')
1 [11, 22] {'key': 159} Ada lace

D.函数的参数:

实参和形参:

函数调用时用的参数就是实参(实际参数)

定义函数时用的参数就是形参(形式参数)

把实际参数传递给形式参数的过程就是传参(传递参数)

A. 实参角度传参:

1.按照位置进行传参:位置参数

def fun(a,b):
sum=a+b
return sum
print(fun(11,56))#位置参数直接传递数值
结果:67

2.按照关键字传值:关键字参数

def fun(a,b):
sum=a+b
return sum
print(fun(a=56,b=15))#关键字a,b参数直接传递数值
结果:71

3.位置,关键字形式混用:混合传参

注意:这里位置参数必须在关键字参数前面。

形式参数只能赋值一次。

def fun(a,b):
sum=a+b
return sum
print(fun(56,b=11))#位置参数56,关键字参数b=11直接传递数值
结果:67

  

B.形参角度传参:

1.参数内有设置默认值:

def fun(name,age,sex='male'):#将变化很小的值设置成默认值
print(name,age,sex)
print(fun('张学友',23))#没有传参就返回默认值。
print(fun(name='Blake shelton',age=55,sex='female'))
结果:
张学友 23 male
None
Blake shelton 55 female
None

2.默认参数是一个可变的数据类型

def fun(a,l=[]):#这里L是一个可变的数据类型
l.append(a)
print(l)
print(fun(11,l=[11,22,123]))
结果:
[11, 22, 123, 11]
None

  

day 0313函数的初识的更多相关文章

  1. Python_函数的初识、函数的返回值、函数的参数

    1.函数的初识 def关键字 空格 函数名(与变量名命名规则相同):英文冒号 函数体 执行函数:函数名+() 函数是以功能为导向的. def login(): pass def register(): ...

  2. Python 函数的初识

    1.函数的初识 函数的作用:以功能为导向 减少代码重复 # 函数试编程 # 函数以功能(完成一件事)为导向,登录 注册, # 一个函数就是一个功能,一个函数只能写一个功能 # 何时需要 何时调用,随调 ...

  3. Python函数01/函数的初识/函数的定义/函数调用/函数的返回值/函数的参数

    Python函数01/函数的初识/函数的定义/函数调用/函数的返回值/函数的参数 内容大纲 1.函数的初识 2.函数的定义 3.函数的调用 4.函数的返回值 5.函数的参数 1.函数初识 # def ...

  4. 2018-11-9-匿名函数&递归函数初识

    1.匿名函数(lambda) 2.递归函数初识

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

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

  6. python基础学习Day9 函数的初识,实参、形参、

    1.函数 def my_len(): l = [,,,,,,] count = for i in l: count += print(count) my_len() 定义的my_len()方法时,其结 ...

  7. Day 9 函数的初识1

    def my_len(): l1 = [1,2,3,5,6] print(111) print(222) return print(333)print(my_len()) 一.函数的定义1.遇到ret ...

  8. Python函数的初识

    一   什么是函数 定义: 定义一个事情或者功能,等到需要用的时候直接用就可以了,那么这个定义的就是一个函数 函数  :  对代码块和功能的封装和定义 函数定义的格式:     def   函数名() ...

  9. python之函数的初识

    1. 面向过程编程的缺点 代码重复 代码可可读性不高 2. 函数的定义*** ​ 函数是以功能为导向,一个函数封装一个功能.登录,注册,文件的改的操 3.函数的作用*** ​ 函数减少代码的重复性,增 ...

随机推荐

  1. DNS-320 B2 语言包

    神一样的NAS啊,这个语言包在这里http://tsd.dlink.com.tw/downloads2008detailgo.asp,选择sc的就可以了. 真是神一样的配置~ 佩服死d-link了

  2. 在 Redis 上实现的分布式锁

    由于近排很忙,忙各种事情,还有工作上的项目,已经超过一个月没写博客了,确实有点惭愧啊,没能每天或者至少每周坚持写一篇博客.这一个月里面接触到很多新知识,同时也遇到很多技术上的难点,在这我将对每一个有用 ...

  3. .io域名在申请SSL证书时被坑

    注:标题其实与最后内容不符,只是描述一个事实 - 遇到坑了,不代表观点 - io域名坑我. .io后缀的域名是英属印度洋领地的国别域名,由NIC.io(runby Internet Computer ...

  4. 说说自己对RESTful API的理解

    REST不是英文上的rest单词,其英文缩写为presentational State Transfer ,直译为表现状态转移,咋看起来很学术,不懂,其实不用去死抠这个词的意思.REST是一种约束和架 ...

  5. Hbase学习笔记——基本CRUD操作

    进入Hbase的安装目录,启动Hbase bin/start-hbase.sh 打开shell命令行模式 bin/hbase shell 关闭Hbase bin/stop-hbase.sh 一个cel ...

  6. nginx负载均衡一:基础知识

    基础信息 nginx 的 upstream目前支持 4 种方式的分配  1).轮询(默认)  每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除.  2).weight ...

  7. 修改torndb库为依赖pymysql,使其适应python3,一个更简单的操作数据库的类。

    1.python的MySQLdb和pymysql是两个基本数据库操作包,MySQLdb安装很麻烦,要有c++相关环境,python3也安装不了. python3一般安装pymysql,此包与MySQL ...

  8. [Unity3D] C# Basic : Gameplay Scripting

    教程:https://unity3d.com/cn/learn/tutorials/s/scripting 补充:http://www.runoob.com/csharp/csharp-inherit ...

  9. Zookeeper安装使用及JavaAPI使用

    一.Zookeeper单击模式安装及使用 1.系统环境 2.导入JDK和Zookeeper包 1).使用SecureCRT工具打开SFTP连接,直接拖拽,到当前用户文件夹下,然后使用mv命令(mv 文 ...

  10. SQL Server 2012 R2升级到SQL Server 2016无法正常启动数据库服务解决方案

    原定周末把公司的TFS升级到2018,由于TFS 2018需要SQL Server至少是2016以上版本,所以还需要将原来的SQL Server 2012 R2一并升级.今天早上负责的同事告诉我升级失 ...