11.26python笔记(进阶1.1-1.3)
1.1 函数定义
函数就是完成特定功能的一个语句组,这组语句可以作为一个单位使用,并且给它取一个名字。
可以通过函数名在程序的不同地方多次执行(这通常叫函数调用)。
预定义函数
可以直接使用
自定义函数
用户自己编写
为什么使用函数
降低编程难度
- 通常将一个复杂的大问题分解成一系列的小问题,然后将小问题划分成更小的问题,当问题细化为足够简单时,我们就可以分而治之。各个小问题解决了,大问题就迎刃而解了。
代码重用 - 避免重复劳作,提供效率
函数的定义和调用 参数可选
- def 函数名([参数列表]): //定义
- 函数名([参数列表]) //调用
函数名的命名规则: 函数名可以是数字字母下划线 不能以数字开头,一般情况下函数名定义 ,除了第一个单词小写其它单词的首字母都大写 ,也可以单词之间通过下划线链接
类: 每个单词的首字母大写
def fun():
print "hello world"
例子:
#!/usr/bin/python
def fun():
sth = raw_input("Please input somting: ")
try:
if type(int(sth))==type(1):
print "%s is a number" %sth
except:
print "%s is not number" %sth
fun()
1.2 函数的参数
形式参数和实际参数
- 在定义函数时,函数名后面括号中的变量名称叫做“形式参数”,或者称为“形参”
- 在调用函数时,函数名后面括号中的变量名称叫做“实际参数”,或者称为“实参”
def fun(x,y): 形参
print x+y
fun(1,2) 传进去实际的参数 实参
def fun(x,y):
if x>y:
print x
else:
print y
例子:定义函数的时候传参数
import sys 导入sys模块
def isNum(s):
for i in s:
if i in '0123456789':
pass
else:
print "%s is not a number" %s
sys.exit() 退出脚本
else:
print "%s is a number" %s
isNum(sys.argv[1]) 实参传入 argv[1]
1.3 函数的默认参数
练习:
打印系统的所有PID
要求从/proc读取。
os.listdir() 使用os模块的listdir()
#!/usr/bin/python
import sys
import os
def isNum(s):
for i in s:
if i in '-0123456789':
pass
else:
#print "%s is not a number" %i
break
else:
print s
for i in os.listdir('/proc'):
isNum(i)
缺省参数(默认参数) 默认参数只能在最后的形参上 默认参数只能写在最右边
def fun(x, y=100): 如果调用函数时,没有实际参数y 则y的值就是100
print x,y
fun(1,2)
fun(1)
- [DeeplearningAI笔记]改善深层神经网络1.1_1.3深度学习实用层面_偏差/方差/欠拟合/过拟合/训练集/验证集/测试集
- 《Reverse Engineering for Beginners》 - 第1章 代码模式 - 笔记(1.1-1.3)
- C#学习之路,学习笔记 1.1 C#简介
- JavaScript学习笔记---进阶
- django学习笔记1.1 开始django2.01
- PHP学习笔记 - 进阶篇(8)
- 《MLAPP》读书笔记 1.1-1.3
- [python]小白进阶笔记(零)
- ROS 进阶学习笔记(15) - Use Service to play ROS-Serial communication
- JavaScript学习笔记 - 进阶篇(8)- DOM对象,控制HTML元素
- 1.1 学习之初;1.2 约定;1.3 认识Linux;1.4 创建虚拟机;1.5安装centos7
- SICP学习笔记 - 第一章 (1.1)
- WSDL1.1学习笔记
- Intent进阶 和 Intent-filter 学习笔记
- Android进阶笔记14:3种JSON解析工具(org.json、fastjson、gson)
- zookeeper学习笔记-基本用法进阶
- Python 进阶学习笔记2
- UNIX环境编程学习笔记(25)——信号处理进阶学习之 sigaction 函数
- 互联网产品进阶笔记(3)原型设计的工具
- Linux操作系统及常用命令实战和进阶-笔记