一、常用的内置函数
abs(x)返回数值x的绝对值,如果x是复数,abs()函数就会返回该复数的大小(实数部分的平方加上虚数部分的平方,再开根号)
chr(i):i是ASCII字符码0~255,chr()函数返回数值i的单字符字符串。chr函数与ord函数作用相反
ord(c):函数返回单字字符串c的ASCII或Unicode字符。若c是ASCII字符,则ord()函数与chr()函数作用相反;若c是Unicode字符,则ord()函数与unichr()函数作用相反。
complex(real[,imag]):创建一个复数,其值为real+imag*j。若第一个参数为字符串,则不需要指定第二个参数。
dir([object]):返回object对象的属性名称列表。若没有指定参数object,则会返回现有的区域符号表(local Symbol table).
divmod(a,b):将a除以b的商与余数以元组类型返回。如果a、b是整数或者长整数,那么返回值就为(a/b,a%b);如果a,b是浮点数,那么返回值为(math.floor(a/b),a%b).
eval(expression [,globals[,locals]]):运行expression表达式。globals定义全局命名空间(global namespace),locals定义局部命名空间(local namespace)。若没有locals参数,则使用globals定义值;若没有global与local参数,则使用单元本身的命名空间。
float(x):将x转换为浮点数,x可以是数值或字符串。
int(x[,radix]):将数值或字符串x转换成整数。如果x是字符串,就设置radix值。radix是进制的基底值,可以是[2,36]之间的整数或0.如果radix是0,那么python就会根据字符串值进行判断。
max(s[,args...]):若只有一个参数,则返回序数对象s中元素的最大值;若有数个参数,则返回最大的序数(sequence).
min(s[,args...]):若只有一个参数,则返回序数对象s中元素的最小值;若有数个参数,则返回最小的序数(sequence).
pow(x,y[,z]):若没有参数z,则返回x的y次方;若有参数z,则返回x的y次方再除与z的余数。此函数pow(x,y)%z有效率。
tuple(sequence):使用sequence创建一个元组对象。如果sequence本身就是一个元组,其值不变。
二、定义函数
python可以自己创建函数,使用def关键字,语法格式如下所示。
def 函数名称(参数1,参数2,参数3....参数n)"文件字符串"<语句>
“文件字符串”是可以省略的,用来作为描述此函数的字符串。如果“文件字符串”存在的话,那么必须是函数的第一个语句。
定义一个函数规则如下:
1.函数代码块以def关键字开头,后接函数标识符名称和圆括号“()”。
2.任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。
3.函数的第一行语句可以选择性地使用文档字符串,用于存放函数说明。
4.函数内容以冒号起始,并且缩进。
5.return[表达式]结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回none。
示例1如下:
def ss(x,y):"x*y"return x+yds=ss(100,4)
print(ds)输出结果如下:
104
示例2如下:
def test1_sum(t):result=0for i in t:result+=i
return result
示例3如下:
def test1():"python test, how to use python3.8!"return "how to use python3.8!"result=test1()
print(result)输出结果如下:
how to use python3.8!
Python中函数和方法的区别
1、函数要手动传self,方法不用传self。
2、如果是一个函数,用类名去调用,如果是一个方法,用对象去调用。
class Foo(object):def __init__(self):self.name="测试"def func(self):print(self.name)obj = Foo()obj.func()Foo.func(obj)
方法是属于对象的函数,可以分别打印type(some_class.method)和type(some_object.method),会发现前一个是函数,后一个就成了方法。而实际上当类实例化时,会把对象本身当做参数(self)传进函数,并返回一个新的函数,这个新函数就叫方法。
方法其实可以当成某个内置装饰器的产物,静态方法和类方法也是用装饰器定义的,都是一个道理。
笔记心得源于书本清华大学出版社出版的《python3.8 从入门到精通》