python第三天
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python第三天相关的知识,希望对你有一定的参考价值。
函数
1).调用函数
a)调用一个函数需要知道函数名和参数,通过help(函数名)可以查看函数的帮组信息,如果调用函数时传入的参数数量不对或者参数的类型不对,都会报TypeError错误,但报错的具体信息不同
b)数据类型转换函数 int(), 转换为整数 str() 转换为字符串 float(), 转换为浮点数 bool() 转换为布尔型数据True False
c) 函数名其实就是一个指向函数的引用,完全可以把函数名赋给一个变量,就相当于给函数起了一个别名
2)定义函数
a)函数定义 ,要调用函数必须先把函数导入进来, from 路径/文件名 import 函数名 from clu2 import my_abs
def my_abs(x): if x>=0: return x else: return -x //return 表示返回None 即return None
b)空函数 知识想先定义一个函数,什么也不做,可以通过pass语句
def pop():
pass
c)改进自定义取绝对值函数,使得当调用函数时传入错误的类型参数,会有相应的提示信息(只允许传入整型或浮点型)
isinstance(obj,class_or_tuple) 这个函数主要用来判断某个数据是不是属于指定类型集合,如果是就返回True 否则False
d)python中函数返回多个值(其实就是返回一个tuple,还是一个值)
函数返回多个值
其实返回的是一个tuple,如图所示
3)函数参数
a)函数参数有多少种 默认参数、可变参数、关键字参数、位置参数
位置参数:调用函数时,pow(2,4)传入的值按照位置顺序赋给参数x和y
默认参数:调用函数时,可以不传入值(pow(2)),参数会有一个默认值。这对于更改以前的旧代码十分有用(只需加一个默认参数)。
默认参数使用误区? 定义一个默认参数如下
调用上述函数时,如果带参数这个调用没问题,如果不带函数 比如 add_end(),add_end() ,第二次调用时会输出两个[‘END‘ ,‘END‘]
这是为什么呢? 其实是由于list为可变对象,所以调用一次后,S的值已经改变啦。再次调用肯定会在原有的基础上变化,
解决方法:把S默认值初始化为不可变对象,比如S=None 如下图所属
可变参数????? //todo
以上是关于python第三天的主要内容,如果未能解决你的问题,请参考以下文章