python 学习之函数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 学习之函数相关的知识,希望对你有一定的参考价值。
1.内置函数
callable() #定义是否能调用
def (f1):
false
f1()
print(callable(f1))
#判断f1是否能被调用,可以返回True 否则返回False
chr() 用来做ASCII码转换 a=chr(65) print(a) A
#65所对应的ascii码
ord() 用来做ASCII码转换 b=ord‘A‘) print(b) 66
#A在ASCII码表所对应的数字
import random #随机生成字母
list1 = []
for i in range(0,6):
num =
random.randrange(65,91) #65-91 为A-Z
asc = chr(num)
list1.append(asc)
random_str = ‘‘.join(list1)
print(random_str)
BFRVQP #随机生成的字母
import random 随机生成字母和数字
list1 = []
for i in range(6):
#循环6次
r = random.randrange(0,6) #r为0到6的随机数
if r == 3 or r ==
5:
num1 = random.randrange(0,10) #num1为0-10的随机数
list1.append(str(num1)) str类型.join时列表里面的元素必须为str类型
else:
num =
random.randrange(65,91) #65-91 为A-Z
asc = chr(num)
list1.append(asc)
random_str = ‘‘.join(list1)
print(random_str) G623E1
#随机生成的字母和数字
#python执行代码过程
python会把字符串-》编译-》特殊代码(python代码)-》执行
#编译函数:
compile()
#执行函数
exec()#可以执行所有python代码,没有返回值,接受代码或者字符串(如果直接代码直接执行,如果接受字符串转换成python代码再执行)
eval()
#只能做表达式运算,有返回值
exec(7+8) #没有返回值
ret=eval(7+8) #print(ret)有返回值
s =
"print(sss)"
#编译类型 single eval exec
#将字符串编译成python代码
r = compile(s,‘<string>‘,‘exec‘)
exec(r) #用来做编译
s=‘8*8‘ #用来转换成表达式
ret1 = eval(s)
print(ret)
dir() #查看类里面有哪些功能
help() #查看功能的详细使用
#共97条数据,每页显示10条 用来计算可不可以整除,返回元组 (商和余数)
r = divmod(97,10) #返回元组
n1,n2 =
r
#对象为类的实例
#isinstance() #判断对象是否为类的实例
s = ‘123‘
#调用str类
r=isinstance(s,str)
print(r) #返回True或者False
#filter 函数返回True,将元素添加到结果
#map 将函数返回值添加到结果
#filter(‘函数‘,‘可迭代的对象‘)
#fileter内部,循环第二个参数,让每个循环元素执行函数,如果函数返回值为True,表示该元素合法,,将元素添加到fileter()返回值
#
result = []
# for item in 第二个参数: #第二个参数为列表
# r = 第一个参数(item)
#把item传参给f2函数
# if r:
# result.append(item)
def f2(a):
if a >22:
return True
li =
[11,22,33,44,55]
ret = filter(f2,li) #ret为一个对象
print(list(ret))
f1 = lambda a:a>30 #f1函数名 a为函数名括号里面的参数 a应用参数
li =
[11,22,33,44,]
ret = filter(lambda a:a>22,li)
print(list(ret))
#map(函数,可以迭代的对象)
list1=[1,2,3,4,5,]
ret = map(lambda a:a+100,list1)
#让其中每个元素+100
print(list(ret))
#globals()代表所有全局变量 locals代表所有局部变量
#hex() 十进制转换为16进制
#bytes()将字符串转换为字节
#len() 查看实例长度,python2里面查看字节长度,python3查看字符长度
s =
"王永翔"
a=bytes(s,encoding=‘utf-8‘)
print(len(a)) #结果为9
#round 四舍五入
#pow(3,4) #为三的四次方
2.装饰器
#@+函数名
#功能:
#1. 自动执行outer函数并且将下面的函数名f1当做参数传递
#2.
将outer函数的返回值,重新赋值给f1
def outer(func):
def inner():
print(‘log‘)
a=func()
return a
return inner
@outer
def f1():
print(‘F1‘)
return
‘哈哈‘
print(f1())
以上是关于python 学习之函数的主要内容,如果未能解决你的问题,请参考以下文章