Python笔记(五)
# -*- coding:utf-8 -*-
# 函数
# python中定义函数的规则如下:以def开头,接函数名称和(),传入的参数和变量放在圆括号中间,函数以:起始,并且缩进,return选择性的返回一个值给调用方,不带返回值的return相当于返回NONE
print "********************1***********************"
def printsmt(str):
print str
return
printsmt(")
# 前面说过可变对象和不可变对象,所以在参数传递时,对于不可变类型,传递的值,而对于参数本身没有影响,所以函数内部的更改不会对其产生影响;但是对于可变类型,则是将参数真正的传递过去,更改后外部的值也会收到影响
# 传递不可变对象
print "********************2***********************"
def changeStr(a):
a="
print "Method:",a
b="
changeStr(b) # 输出Method:543s21
print b # 输出12345
# 传递可变对象
print "********************3***********************"
def changeList(list):
list.append(["mango"]);
print "Method:",list
fruits=['apple','orange','bananas']
changeList(fruits)
print fruits
# 参数:必备参数、关键字参数、默认参数、不定长参数
# 必备参数:必须以正确的顺序传入,调用数量和声明一致
print "********************4***********************"
try:
changeStr() #这里会直接返回错误 takes exactly 1 argument.
except Exception as err:
print(err);
# 关键字参数:和函数调用关系紧密,函数调用使用关键字参数来确定传入的参数值,如:
print "********************5***********************"
def printKey(name,age):
print name,age
printKey("zhangsan",18) # 按传入输出
printKey(age=19,name='lisi') # 即便输入的顺序不对,但通过调用键字输入,解释器一样可以匹配。
# 缺省参数 缺省参数的值如果没有传就会被认为默认值。
print "********************6***********************"
def printDefault(name,age=35):
print name,age
printDefault(age=50,name="lisi") #输出 lisi 50
printDefault("zhangsan") # 输出 zhangsan 35
# 不定长参数 有时候传入参数的长度不确定,这时候就会定义不定长参数,如:
print "********************7***********************"
def printarg(arg1,*args):
print arg1
for arg in args:
print arg
printarg(1)
printarg(1,2,3,4,5)
# 匿名函数 使用lambda来创建匿名函数,lambda只是一个表达式,函数体比def简单的多
print "********************8***********************"
sum=lambda arg1,arg2:arg1+arg2
print sum(10,20)
# 全局变量和局部变量,变量存在作用域,定义在函数内部的变量有一个局部作用域,只能在函数内部生效,定义在函数外部的拥有全局作用域。
Python笔记(五)的更多相关文章
- guxh的python笔记五:面向对象
1,面向对象编程思想 类:一类具有相同属性的抽象 属性(静态属性):实例变量.类变量.私有属性 方法(动态属性):构造函数.析构函数(默认就有).函数.私有函数 对象/实例:类经过实例化后,就是对象/ ...
- python笔记五:IO与文件
1.python IO: Python提供了两个内置函数从标准输入读入一行文本,默认的标准输入是键盘: 1)raw_input([prompt]) 函数从标准输入读取一个行,并返回一个字符串 2 ...
- python笔记五(条件判断/循环/break和continue)
一 条件判断 if <条件判断1>: <执行1> elif <条件判断2>: <执行2> elif <条件判断3>: <执行3> ...
- Python笔记(五)_内置函数BIF
查看所有的内置函数:dir(__builtins__) abs() 获取绝对值 max() 返回给定元素中的最大值 min() 返回给定元素中的最小值 sum() 求和 reverse ...
- Python笔记(五):异常处理和数据存储
注:和上一篇有关联 (一) finally 和 输出异常信息 try: the_man = open(r'C:\Users\123456\Desktop\test.txt') ...
- Python笔记之不可不练
如果您已经有了一定的Python编程基础,那么本文就是为您的编程能力锦上添花,如果您刚刚开始对Python有一点点兴趣,不怕,Python的重点基础知识已经总结在博文<Python笔记之不可不知 ...
- Crazyflie笔记五: CRTP 实时通信协议(一)(转)
源:Crazyflie笔记五: CRTP 实时通信协议(一) 这里详细介绍了 Crazyflie 的 CRTP实时通信协议的相关内容,由于内容很长,分几篇博文来讲述.这里是第一节内容.欢迎交流:301 ...
- s21day10 python笔记
s21day10 python笔记 一.函数补充 1.1 参数 基本参数知识 def get_list_date(aaa): #aaa:形式参数(形参) 任意个数 v = [11,22,33,44] ...
- s21day02 python笔记
s21day02 python笔记 一.昨日内容回顾及补充 内容回顾 补充 if条件语句嵌套 10086示例 pycharm更改解释器 python3.7解释器 python2.7解释器 二.循环语句 ...
- s21day01 python笔记
s21day01 python笔记 一.计算机基础 计算机的初步认识 用户:人 软件:QQ.浏览器等 解释器/编译器/虚拟机:java解释器.python解释器等 操作系统 硬件:CPU.内存.硬盘. ...
随机推荐
- 时间&物质&效率
由于我的家庭是地道的农民家庭,在上学的时候,父母很辛苦的供我读初中,高中,大学. 现在我想说的是,用时间来换取效率是我求学时最大的遗憾. 举一个例子吧:每次回家坐火车,火车很费时间,假如我不缺钱,完全 ...
- Java代码运用及算法思路养成——用*号输出形状
简单的了解了一些循环算法后,尝试用循环算法,输出形状图形 例1矩形与平行四边形的比较(可以看做矩形的每一行在输出前都输出了矩形长度数量-1的空格数量并且依次递减) 例2三角形(三角形可看做半个矩形,考 ...
- Ad_hoc_polymorphism 备份
https://en.wikipedia.org/wiki/Polymorphism_(computer_science) https://en.wikipedia.org/wiki/Ad_hoc_p ...
- ZBrush的双十一来了,然鹅...
不管是“光棍节”还是“剁手节” 似乎和我都没有什么关系 事实证明,我错了 今早竟然有不识趣的人发红包祝我单身快乐 纳尼,这是唱的哪一出? 我能直接怼回去,说不领么? 但好像又不是我的风格 哎,一个红包 ...
- 洛谷P2894 [USACO08FEB]酒店Hotel_区间更新_区间查询
Code: #include<cstdio> #include<algorithm> #include<cstring> using namespace std; ...
- python之openpyxl模块
一 . Python操作EXCEL库的简介 1.1 Python官方库操作excel Python官方库一般使用xlrd库来读取Excel文件,使用xlwt库来生成Excel文件,使用xlutils库 ...
- Nginx学习(1)--- 介绍与安装
1.基础介绍 常用功能 1.HTTP服务 动静分离.WEB缓存.虚拟主机设置.URL Rewrite 2.负载均衡 3.反向代理 4.正向代理 5.邮件服务器 优点 高扩展.高可用.支持高并发.低资源 ...
- java:递归算法
JAVA中的递归是只一个方法在(满足条件时(或不满足条件时[这里的判断根据业务的实际需求写]))自己调用自己的方法名,要求参数和方法名一致, 然后根据判断跳出该方法,返回相应的返回值! 实例: 我们要 ...
- Elasticsearch 入门 - Modifying Your Data
index/update/delete 均有大概1秒的缓存时间 Indexing/Replacing Documents curl -X PUT "localhost:9200/custom ...
- 安装oracle服务端之后再安装oracle客户端导致sqlplus命令无法使用??
首先小编自述一下所遇到的问题: 昨天在已经安装 oracle 服务端的 win7 X64 主机上安装 oracle client 之后,发现我的sqlplus命令无法用了??经过百度,都说我服务没有开 ...