python函数的定义和调用,python函数的定义
目录
1.内置函数和数字相关1。数据类型2。十进制转换3。数学运算与数据结构相关1。序列2。数据集3。相关内置函数与作用域关联与迭代器生成器关联字符串类型代码执行I/O内存关联操作相关模块相关文件相关帮助调用相关查看内置属性2。匿名函数练习1。内置函数内置函数是Python提供的可以直接使用的函数,比如打印、输入等。
截至python版本3.6.2,python总共提供了68个内置函数,如下所示
abs() dict() help() min() setattr()
all() dir() hex() next() slice()
any() divmod() id()对象()已排序()
ascii()枚举()输入()oct()静态方法()
bin() eval() int() open() str()
bool()exec()is instance()ord()sum()
bytearray()filter()issubclass()pow()super()
bytes()float()ITER()print()tuple()
callable()format()len()property()type()
chr()frozenset()list()range()vars()
class method()getattr()locals()repr()zip()
compile()globals()map()reversed()_ _ import _ _()
复杂()具有属性()最大()轮次()
Delattr() hash() memoryview() set()本文将这68个内置函数综合归类为12类。正在学习Python基础的读者一定不要错过。建议收藏学习!
1.数据类型bool: boolean (True,False)int:integer(integer)float:浮点(decimal) complex: complex 2。二进制转换bin()将给定参数转换为二进制otc()将给定参数转换为八进制hex()将给定参数转换为十六进制print(bin(10)) #
Print(十六进制(10)) #十六进制:0xa
Print(oct(10)) # Octal: 0o123。数学运算abs()返回绝对值divmode()返回商和余数round()并四舍五入pow(a,b)求a的b次方如果有三个参数,求次方后,取第三个数的余数sum()和min()求最小值max()求最大值。
Print(divmod(20,3)) #求商和余数:(6,2)
Print(round(4.50)) #五家六口:4
打印(round(4.51)) #5
Print(pow(10,2,3)) #如果给定第三个参数,则表示最后的余数:1
Print (sum ([1,2,3,4,5,6,7,8,9,10])# sum:55
Print(min(5,3,9,12,7,2)) #求最小值:2
Print(max(7,3,15,9,4,13)) #求最大值:15和数据结构相关性1。序列(1)列表和元组
List()将迭代对象转换为列表元组()将迭代对象转换为元组打印(list ((1,2,3,4,5,6)) # [1,2,3,4,5,6]
Print (tuple ([1,2,3,4,5,6])#(1,2,3,4,5,6) (2)相关内置函数
Reversed()翻转一个序列并返回翻转序列的迭代器列表slice()的slice lst= Hello。
它=reversed(lst) #不会改变原来的列表。返回一个迭代器,一个设计规则
Print(list(it)) #[啊,好,你]
lst=[1,2,3,4,5,6,7]
print(lst[1:3:1]) #[2,3]
S=slice(1,3,1) #用于切片
Print(lst[s]) #[2,3](3)字符串
Str()将数据转换成字符串输出(str(123) 456) #123456
Format()与具体数据相关,用于计算各种小数、精算等。
你好,世界!
Print (format (s, 20)) #在剧中
打印(格式, 20 )#左对齐
Print(格式, 20 )#右对齐
#你好世界!
#你好世界!
#你好世界!
Print(格式(3, b )# binary:11
Print(format(97, c )#到unicode字符:a
Print(格式(11, d )#小数:11
Print(格式(11, o )#八进制:13
Print(格式(11, x )#十六进制(书写字母):b
Print(格式(11, X )#十六进制(大写字母):b
打印(格式(11, n )) #和样本D: 11
打印(格式(11)) #和样本D: 11
Print(format(123456789, e )#科学计数法。默认情况下,保留6个小数位:1.234568e 08
Print (format (123456789, 0.2e )#科学计数法。保留2位小数(小写):1.23e 08
Print (format (123456789, 0.2e )#科学计数法。保留两位小数(大写):1.23E 08
Print(format(1.23456789, f )#小数点计数法。保留6位小数:1.234568
Print(格式(1.23456789, 0.2f )#小数点计数法。保留两位小数:1.23
Print(格式(1.23456789, 0.10 f )#小数点计数法。保留10个小数位:1 . 400000000000001
Print (format (1.23456789E3, F )#小数点计数法。当它很大时,输出INF:1234.567890bytes()将字符串转换成字节类型bs=bytes(今天吃饭了吗,编码=utf-8 )
print(bs)# b \ xe4 \ xbb \ x8a \ xe5 \ xa4 \ xa9 \ xe5 \ x90 \ x83 \ xe9 \ xa5 \ xad \ xe4 \ xba \ x86 \ xe5 \ x90 \ x97
Bytearray()返回一个新的字节数组。这个数的元素是可变的,每个元素的取值范围是[0,256]
ret=bytearray(alex ,编码=utf-8 )
print(ret[0]) #97
打印(ret)#字节数组(balex )
Ret[0]=65 #将65的位置A分配给Ret[0]
print(str(ret)# bytearray(b Alex )ord()输入字符查找带有字符码的位置chr()输入位置号查找对应的字符ascii()是返回的ascii码。如果该值不是,则返回uprint(ord( A )#字母A在编码表中的编码位置:97
在编码表中打印(ord( Zhong )# Zhong ):20013
Print(chr(65)) #给定代码位,找出字符是什么:a
印刷品(人权委员会(1999年))#遗失
对于范围内的I(65536):#打印出从0到65535的字符
print(chr(i),end= )
print(ascii( @ )# @ repr()返回对象的字符串形式s= Today \ nI ate % s \ t meals % 3
印刷品#今天吃了三顿饭#
Print(repr(s)) #按原样输出,过滤掉转义字符\ n \ t \而不考虑百分号%
# 我今天吃了三顿饭 2。数据集字典:dict创建字典集:set创建一个集合frozenset()创建一个冻结集合,不能添加或删除。
3.相关的内置函数len()返回一个对象中元素的个数。sorted()对可迭代对象进行排序(lamda)语法:sorted(Iterable,key=function(排序规则),reverse=False)
Iterable: iterable对象关键字:排序规则(排序函数)。在sorted中,iterable对象的每个元素都将被传递给这个函数的参数。根据函数运算的结果进行排序。反转:是否倒叙。真:闪回,假:正序列lst=[5,7,6,12,1,13,9,18,5
Lst.sort() # sort是列表中的一个方法。
打印(第一页)#[1,5,5,6,7,9,12,13,18]
Ll=sorted(lst) #内置函数。返回一个新的列表。新列表已排序
print(ll) #[1,5,5,6,7,9,12,13,18]
L2=排序(lst,reverse=True) #逆序
print(l2) #[18,13,12,9,7,6,5,5,1]
#根据字符串的长度对列表进行排序
lst=[一,二,三,四,五,六]
定义f(s):
归还贷款
l1=已排序(lst,key=f,)
Print (L1) # [一,二,六,四,五,三] enumerate()获取集合的枚举对象lst=[一,二,三,四,五。
对于index,el in enumerate (lst,1): #获取索引以及元素。默认情况下,索引从0开始。这是可以改变的
打印(索引)
打印(el)
# 1
#一
# 2
#二
# 3
#三
# 4
#四
# 5
# fiveall()所有iterable对象为真,结果为真。iterable对象之一为true,结果为trueprint (all ([1, hello ,true,9))# true
print (any ([0,0,0,false,1, good]) # truezip()函数用于将一个iterable对象作为参数,将对象中对应的元素打包成一个元组,然后返回由这些元组组成的列表。如果每个迭代器中的元素个数不一致,则返回列表的长度与最短对象lst1=[1,2,3,4,5,6]的长度相同
Lst2=[《醉山歌》,《驴得水》,《放牛班的春天》,《美丽人生》,《保卫者》,《厌松子的生活》]
Lst3=[美国,中国,法国,意大利,韩国,日本]
print(zip(lst1,lst1,lst3)) #位于0x00000256CA6C7A88的zip对象
对于邮政编码中的El(lst 1、lst2、lst3):
打印(el)
# (1,《醉山歌》,《美国》)
# (2,《驴得水》,《中国》)
# (3,《牛郎班的春天》,《法国》)
# (4,《美丽人生》,《意大利》)
# (5,“后卫”,“韩国”)
# (6,《被遗弃的松子的生活》,《日本》)fiter () Filter (lamda)语法:fiter(function。可迭代)
函数:用于过滤的函数。Iterable中的元素将自动传递给filter中的函数。然后根据函数返回的真或假来判断是否保留这些数据。可迭代的:一个可迭代的对象。
在微信官方账号搜索顶级建筑师,后台回复“面试”,送你惊喜礼包。
Def func(i): #判断奇数
return i % 2==1
lst=1,2,3,4,5,6,7,8,9
L1=过滤器(func,lst) #l1是一个迭代器
在0x000001CE3CA98AC8处打印(l1) #过滤器对象
Print(list(l1)) #[1,3,5,7,9]map()将根据提供的函数(lamda)语法映射指定的序列列:map(function,iterable)
您可以映射iterable对象中的每个元素,并分别执行函数。
返回I
lst=[1,2,3,4,5,6,7,]
It=map(f,lst) #将iterable对象中的每个元素传递给前面的函数进行处理。处理结果将作为迭代器print (list (it)) # [1,2,3,4,5,6,7]返回,与范围相关的locals()返回当前范围内的名称,globals()返回全局范围内的名称
a=10
Print (locales ()) #当前范围内的内容
Print(globals()) #全局范围内的内容
印刷品(“今天有很多内容”)
函数()
# {a: 10}
# {__name__: __main__ , __doc__ :无, __package__ :无, __loader__ :
# _frozen_importlib_external。0x0000026F8D566080处的SourceFileLoader对象,
# __spec__: None, __annotations__: {}, __builtins__ :模块 builtins
#(内置), _ _ file _ _ : d:/py charm/practice/week 03/new 14 . py , _ _ cached _ _ :无,
# func :函数func位于0x0000026F8D6B97B8 }
#今天,有很多内容与迭代器生成器相关。range()生成数据。next()迭代器向下执行一次。在内部,它实际上使用_ _ next _ _()方法返回迭代器的下一项,iter()获取迭代器。在内部,它实际上使用_ _ ITER _ _()方法来获取I在范围(15,-1,-5)内的迭代器。
打印(一)
# 15
# 10
# 5
# 0
lst=[1,2,3,4,5]
It=iter(lst) # __iter__ () Get迭代器
打印(它。__下一个_ _())1
打印(下一页(它))# 2 __下一页_ _()
打印(下一个(它))#3
Print(next(it)) #4字符串类型代码执行eval()执行字符串类型代码,返回最终结果。exec()执行字符串类型代码,compile()编码字符串类型代码。代码对象可以由exec语句执行,也可以由eval () s1=input(请输入a b:) # input: 8 9
Print(eval(s1)) # 17可以动态执行代码。代码必须有返回值
s2=对于范围(5)中的I:print(I)
A=exec(s2) # exec执行代码不返回任何内容。
# 0
# 1
# 2
# 3
# 4
打印(a)#无
#动态执行代码
执行(“”)
定义函数():
印刷品(“我是周杰伦”)
)
Func() #我是周杰伦
code1=for i in range(3): print(i)
Com=compile (code1,,mode= exec) # compile不执行你的代码。它只是编译。
Exec(com) #执行编译的结果
# 0
# 1
# 2
code2=5 6 7
com2=compile(code2,,mode=eval(eval(com2)) # 18
Code3=name=input(请输入您的姓名:) # Enter: hello
com3=编译(code3,,mode=single )
执行(com3)
print(name)# hello I/O print():print output input():获取用户输出的内容。Print (hello , world ,sep= * ,end= @) # sep:打印出来的内容有什么联系,end:结尾是什么?
# hello * world @ memory-related hash():获取对象的哈希值(int,str,bool,tuple)。哈希算法:(1)目的是唯一性;(2) dict搜索效率很高,哈希表。交换空间需要更多内存。
s= Alex print(hash(s))#-168324845050430382 lst=[1,2,3,4,5] print (hash (lst)) #错误,列表为非哈希id():获取内存地址s= Alex print(ID(s))# 2278345368944文件操作相关open():用于打开文件并创建文件句柄f=open (file ,mode= r ,encoding= UTF
阅读()
F.close()模块相关__ import__():用于动态加载类和函数#让用户输入要导入的模块。
导入操作系统
Name=input(请输入要导入的模块:)
__import__(name) # module help可动态导入Help (): function用于检查函数或模块用途的详细描述print(help(str)) # Call相关callable()用于检查一个对象是否可调用。如果它返回true,True,对象调用可能会失败,但如果它返回False,调用将永远不会成功。a=10
Print(callable(a)) #False不能调用变量A
#
def f():
打印(“你好”)
可以调用print (callable (f) # true函数查看内置属性dir():查看对象的内置属性,访问__dir__()方法print(dir(tuple)) # View tuple方法。如果你觉得这篇文章对你有帮助,请给我点个赞,看好了!
2.匿名函数传统的函数定义包括:函数名和函数体。
def发送电子邮件():
及格
# 1.执行
发送电子邮件()
# 2.作为列表元素
data _ list=[发送电子邮件,发送电子邮件,发送电子邮件]
# 3.作为参数传递
Other_function(send_email)匿名函数是一个基于lambda表达式实现的可以不需要名字定义的函数,例如:
data _ list=[x:x 100,x:x 110,x:x 120]
print(data _ list[0])f1=lambda x:x 100
res=f1(100)
Print(res)基于lambda定义的函数格式为:Lambda参数:函数体
参数,支持任何参数。x:函数体
x1,x2:函数体
Lambda *args,**kwargs:函数体函数体,只能支持单行代码。定义xxx(x):
返回x 100
Lambda x: x 100返回值。默认情况下,函数体的单行代码执行结果返回给函数的执行。func=x:x 100
v1=func(10)
打印(v1) # 110def func(a1,a2):
返回a1 a2 100
O=LambdaA1,A2: A1A2100匿名函数适用于简单的业务处理,可以快速简单地创建。
根据函数练习编写匿名函数的表达式。
定义函数(a1,a2):
返回a1 a2
func=a1,a2: a1 a2def func(数据):
返回数据。替换(仓小姐, * * * )
C=lambda data: data.replace(仓先生, * *) def func (data):
name_list=data.replace( . )
返回名称列表[-1]
Func=lambda data: data.replace( . )[-1]在编写匿名函数时,由于受限制的函数体只能写一行,所以匿名函数只能处理非常简单的函数。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。