Python学习杂记_11_函数(一)
函数也叫方法,就是把实现某种功能的一组代码封装起来,当你需要这个功能时直接调用函数即可。 定义函数:
定义函数时要注意 “def”关键字,“:”,“函数体缩进”;用“return”使函数有具体返回值,没有return返回“None”.
def SUM(a, b):
return a + b 调用函数:
函数名()的格式就可以调用函数
def SUM(a, b):
return a + b
num1 = int(input("Please input num1: "))
num2 = int(input("Please input num2: "))
sum = SUM(num1,num2)
print("num1 + num2 = %d" %sum) 函数的参数:
参数是写在函数()里面的东东。定义函数时,括号里面的参数是形式参数简称“形参”;调用函数时,括号里面的参数是实际参数简称“实参”。
参数具体有下面几类:
位置参数(必填)
def p_info(name, age,sex): 默认值参数(非必填)
def p_info(name, age,sex = '男'): 可变参数 (*args)
也叫参数组,非必填,传参时个数不固定,接收的是个元祖
def post(*args):
post("001","login","http://www.baidu.com","post","a=1") # 调用时根据实际情况传递的参数可多可少 关键字参数 (**kwargs)
非必填,传参时用 key = value 的方式,参数个数不固定,接收的是个字典,也可直接用字典传参
def p_info(**kwargs):
p_info(name="张三",age=18,id="001") d={"name":"张三","age": 18, "id": "001"}
p_info(**d) # 直接传字典 如果参数列表中同时有“位置参数”,“默认值参数”,“可变参数”和“关键字参数”,调用函数时传参的顺序是
“位置参数”->“默认值参数”->“可变参数”->“关键字参数”
如果参数都是必填参数且个数较多我们很容易忘记各参数的顺序,可以用指定参数传值的方法,称之为参数的“关键字调用” def write(filename, model,e-coding,user,os, money, other):
write(os='Win7',user='张三',model='w',filename='a.txt',e-coding='utf-8',money=999,other='AAA')
# 如此可以不按顺序,但个数不能少 全局变量和局部变量:
有了函数就会涉及到“全局变量”和“局部变量”的概念。局部变量是定义在函数里的,有函数才有它,函数被调用时该函数的
局部变量被定义,函数执行结束时,改变量被释放;全局变量是定义在函数之外的可被整个程序共享,只有程序结束时才被释放。
如果想在函数内操作全局变量,int 和 string型的需要在变量前加global关键字,字典和列表型就不用加global关键字。 name = "张三" def p_info():
name = "Mike"
print("name:", name) p_info()
print(name) 运行结果:
name: Mike
张三 name = "张三" def p_info():
global name
name = "Mike"
print("name:", name) p_info()
print(name) 运行结果:
name: Mike
Mike
Python学习杂记_11_函数(一)的更多相关文章
- Python学习杂记_11_函数(二)
函数的高级运用这部分知识的核心内容就是你要把“函数即变量”这个概念理解并运用得出神入化... 一.函数的递归调用 所谓递归调用就是函数自己调用自己,在Python中如果不做限制递归调用的死循环最多可循 ...
- Python学习杂记_12_函数(三)
内置函数 Python有很多内置函数,以下这些是常用且必须要掌握的: 强制类型转换: bool() # 把一个对象转换成布尔类型 int() # 整形 float() # 小数 str() # 字符 ...
- Python学习笔记之函数
这篇文章介绍有关 Python 函数中一些常被大家忽略的知识点,帮助大家更全面的掌握 Python 中函数的使用技巧 1.函数文档 给函数添加注释,可以在 def 语句后面添加独立字符串,这样的注释被 ...
- Python 学习:常用函数整理
整理Python中常用的函数 一,把字符串形式的list转换为list 使用ast模块中的literal_eval函数来实现,把字符串形式的list转换为Python的基础类型list from as ...
- 【Python学习之五】函数
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 python3.6 Python不但能非常灵活地定义函数,而且本身内置 ...
- Python学习-第一天-函数和模块的使用
目录 Python学习-第一天总结 print输出的一种简单格式 函数参数之可变参数 模块管理函数 if else语句的单行实现(简洁) 变量作用域 函数书写格式 Python学习-第一天总结 pri ...
- python学习道路(day4note)(函数,形参实参位置参数匿名参数,匿名函数,高阶函数,镶嵌函数)
1.函数 2种编程方法 关键词面向对象:华山派 --->> 类----->class面向过程:少林派 -->> 过程--->def 函数式编程:逍遥派 --> ...
- 小甲鱼:Python学习笔记003_函数
>>> # 函数>>> def myFirstFunction(params1,params2...): print("这是我的第一个函数!") ...
- Python学习(二):函数入门
1.函数代码格式: def 函数名(): 函数内容 执行函数:函数名() 2.代码举例: #!/usr/bin/env python #coding=utf-8 #定义函数 def Func1(): ...
随机推荐
- Python While循环、运算符以及一些基础运用
1.循环语句 循环打印"人生苦短,我用python" while True: print("人生苦短,我用python") 利用While循环,打印1~10 c ...
- Oracle两种临时表的创建与使用详解
ORACLE数据库除了可以保存永久表外,还可以建立临时表temporary tables.这些临时表用来保存一个会话SESSION的数据,或者保存在一个事务中需要的数据.当会话退出或者用户提交comm ...
- 662. Maximum Width of Binary Tree
https://leetcode.com/problems/maximum-width-of-binary-tree/description/ /** * Definition for a binar ...
- Spring.Net初认识——竹子整理
留个脚印,过两天总结. 看到知乎上有人对于DI|IOC 的解释,满不错,收藏下先 作者:OneNoodle链接:http://www.zhihu.com/question/23277575/answe ...
- linux centos6 系统优化脚本-经典
转载一篇Ricky的系统优化脚本,这个脚本只能针对centos6x 其他还没有测试,但centos7肯定不行的 #!/bin/bash # ID 201510192126 # Author Ricky ...
- 连续小波变换CWT(2)
如果让你说说连续小波变换最大的特点是什么?多分辨分析肯定是标准答案.所谓多分辨分析即是指小波在不同频率段会有不同的分辨率.具体表现形式,我们回到前一篇文章的第一个图, 图一 对应的信号为 低频时(频率 ...
- MySQL基础2-创建表和主键约束
1.创建表 在操作数据表之前,应该使用"USE 数据库名"指定操作是在哪个数据库中进行 主键约束(唯一标识) ****非空*** ****唯一*** ****被引用****(学习外 ...
- xcode6没有prefix.pch预编译文件解决办法
注意到Xcode6创建的工程没有prefix.pch. 于是手动创建. 在other下选择pch文件 接着到工程的build setting下设置开启预编译并配置路径(文件的路径.因为我新建在cofi ...
- 设计模式之第12章-享元模式(Java实现)
设计模式之第12章-享元模式(Java实现) “怎么回事,竟然出现了OutOfMemory的错误.鱼哥,来帮我看看啊.”“有跟踪错误原因么?是内存泄露么?”“不是内存泄露啊,具体原因不知道啊.对了,有 ...
- 45、gridview在改变位置之后无法完整显示的问题记录
gridview的父布局为layoutFather,gridview id为 layoutGridview layoutFather 高度设置为130dp layoutGridview高度设置为1 ...