下面就一一介绍一下内置函数的用法:
下面就一一介绍一下内置函数的用法:
1、abs() 返回一个数值的绝对值,可以是整数或浮点数等。
print(abs(-18))
print(abs(0.15))
print(abs(0.15))
result:
18
0.15
2、all(iterable) 如果iterable的所有元素不为0、''、False或者iterable为空,
18
0.15
2、all(iterable) 如果iterable的所有元素不为0、''、False或者iterable为空,
all(iterable)返回True,否则返回False。
print(all(['a','b','c','d'])) #列表list,元素都不为空或0,返回True
True
print(all(['a','b','','d'])) #如果存在一个为空的元素,返回False
False
print(all([0,1,2,3])) #如果存在为0的元素,同样返回False
False
print(all([])) #空元组和空列表返回值为True
True
print(all(()))
True
3、any(iterable) 如果iterable的任何元素不为0、''、False,all(iterable)返回True,如果iterable为空,返回Fasle。
True
print(all(()))
True
3、any(iterable) 如果iterable的任何元素不为0、''、False,all(iterable)返回True,如果iterable为空,返回Fasle。
注意:此函数与all()函数的在于,any()函数中有任意一个元素为0、''、False不影响整体,会返回True,而all()函数中必须是全部不包含特殊元素才会返回True,只要有一个特殊元素,会直接返回False.
print(any(['a','b','c','d'])) #列表list,元素都不为空或0
True
print(any(['a','b','','d'])) #列表list,存在一个为空的元素,返回True
True
print(any([0,False])) #如果元素全部是0,Fasle,返回Fasle
False
print(any([])) #any函数中空列表和空元组返回Fasle
False
print(any(()))
False
4、bin() 将一个整数转换成一个二进制字符串,结果以'0b'为前缀。
print(bin(32)) #将十进制转换成二进制
print(bin(64))
print(bin(128))
result:
0b100000
0b1000000
0b10000000
5、hex() 将一个整数转换成一个小写的十六进制字符串,结果以'0x'为前缀。
0b100000
0b1000000
0b10000000
5、hex() 将一个整数转换成一个小写的十六进制字符串,结果以'0x'为前缀。
print(hex(255)) #将整数转换成十六进制
print(hex(192))
result:
0xff
0xc0
6、oct() 将一个整数转换成八进制的字符串,结果以'0o'为前缀。
0xff
0xc0
6、oct() 将一个整数转换成八进制的字符串,结果以'0o'为前缀。
print(oct(255)) #将整数转换成八进制
print(oct(192))
result:
0o377
0o300
7、bool() 返回一个布尔值,True或False。
0o377
0o300
7、bool() 返回一个布尔值,True或False。
print(bool()) #bool值缺省为False
False
print(bool(0))
False
print(bool('jack'))
True
print(bool(""))
False
8、bytes()将一个字符串转换成你想要的编码格式的字节。
print(bytes('你好',encoding='utf-8')) #将字符串转换成utf-8编码格式的字节
b'xe4xbdxa0xe5xa5xbd'
print(bytes('你好',encoding='gbk')) #将字符串转换gbk编码格式的字节
b'xc4xe3xbaxc3'
9、chr() 介绍chr()函数之前先看一下ASCII码对照表:
chr()函数就是返回整数对应的ASCII码对照表里的字符,取值范围[0~255]之间的正数。
b'xc4xe3xbaxc3'
9、chr() 介绍chr()函数之前先看一下ASCII码对照表:
chr()函数就是返回整数对应的ASCII码对照表里的字符,取值范围[0~255]之间的正数。
ord()函数作用正好和chr()函数相反,不再介绍,请看下面例子:
n = chr(65) #根据十进制找到在ascii码里对应的字符
print(n)
print(n)
result:A
a= ord("a") #根据字符找到在ascii码里对应的十进制
print(a)
print(a)
result:97
10、compile(source,filename,mode)
10、compile(source,filename,mode)
将source编译为,代码对象能够通过exec语句来执行或者eval()进行求值。
source:字符串或者对象;
filename:代码文件名称,如果不是从文件读取代码则传递一些可辨认的值;
model:编译代码的种类,可以指定为'exec','eval','single'。
code="for i in range(0,10):print(i)"
cmpcode = compile(code,'','exec') #可以将字符串转换成python代码执行
print(cmpcode)
result:
exec() exec语句用来执行储存在字符串或文件中的Python语句。
exec("print('hello,world')") #执行exec()里的python语句
eval() eval()函数将字符串str当成有效的表达式来求值并返回计算结果。
#执行python代码,可以接收或字符串,没有返回值
divmod(a,b) divmod(a,b)方法是计算a,b的商和余数,即:a//b 余几,返回结果为元组。以后做网
enumerate(iterable,start=0) 返回一个枚举对象。iterable必须是序列,迭代器,或者其他支持迭代的对象。
enumerate(dic.keys(),start=0):
filter() 对于序列中的元素进行筛选,最终获取符合条件的序列。
22:
filter(lambda a:a>22,li) #通过lambda函数处理,lambda是有返回值的,条件成立返回True
ret = filter(lambda i:type(i) == str,li) #使用filter函数结合lambda表达式来过滤type为str的元素
l1.append(i) #把过滤掉的str元素导入到新列表中
filter(numb,li)
map(函数,可迭代的对象)
map()函数接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。
>> def f(x):
>> map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9])
L = []
L.append(f(n))
>> map(str, [1, 2, 3, 4, 5, 6, 7, 8, 9])
map(lambda a:a+100,li)
map(lambda a, b: a + b, li, sl)
第一个参数为func函数本身,第二个参数为x(li列表中的每个值),第三个参数为y(li1列表中的每个值)
reduce() 对于序列内所有元素进行累计操作:
当然也可以通过结合lambda表达式3行解决
isinstance() 判断对象是不是类的实例。
len() 判断字符串长度。
max():取最大值; min():取最小值; sum():取总的值
pow()返回x的y次方的值。
round() 方法返回浮点数x的四舍五入值。
random方法返回随机生成的一个实数,它在[0,1]范围内。random的使用一般对于自动生成密码,验证码之类的用的比较多。
random.random())
randint(1,99) #随机数字
randrange(0,4) 自动生成一个0-4的随机数
randrange(0,10) 生成 0--10内的随机数
randrange(65,91) 生成 65-91内的随机数
string.ascii_letters + string.digits + sal
or i in range(length))
choice()方法返回一个列表,元组或字符串的随机项。
for i in range(6): #循环6次
randrange(0,5) #生成一个0-4的随机值,然后根据r的值判断数字出现的位置
利用每个可迭代元素,制作一个迭代器来聚合元素。
str='python String function'
生成字符串变量str='python String function'
字符串长度获取:len(str)
例:print '%s length=%d' % (str,len(str))
生成字符串变量str='python String function'
字符串长度获取:len(str)
例:print '%s length=%d' % (str,len(str))
字母处理
全部大写:str.upper()
全部小写:str.lower()
大小写互换:str.swapcase()
首字母大写,其余小写:str.capitalize()
首字母大写:str.title()
print '%s lower=%s' % (str,str.lower())
print '%s upper=%s' % (str,str.upper())
print '%s swapcase=%s' % (str,str.swapcase())
print '%s capitalize=%s' % (str,str.capitalize())
print '%s title=%s' % (str,str.title())
格式化相关
获取固定长度,右对齐,左边不够用空格补齐:str.ljust(width)
获取固定长度,左对齐,右边不够用空格补齐:str.ljust(width)
获取固定长度,中间对齐,两边不够用空格补齐:str.ljust(width)
获取固定长度,右对齐,左边不足用0补齐
print '%s ljust=%s' % (str,str.ljust(20))
print '%s rjust=%s' % (str,str.rjust(20))
print '%s center=%s' % (str,str.center(20))
print '%s zfill=%s' % (str,str.zfill(20))
字符串搜索相关
搜索指定字符串,没有返回-1:str.find('t')
指定起始位置搜索:str.find('t',start)
指定起始及结束位置搜索:str.find('t',start,end)
从右边开始查找:str.rfind('t')
搜索到多少个指定字符串:str.count('t')
上面所有方法都可用index代替,不同的是使用index查找不到会抛异常,而find返回-1
print '%s find nono=%d' % (str,str.find('nono'))
print '%s find t=%d' % (str,str.find('t'))
print '%s find t from %d=%d' % (str,1,str.find('t',1))
print '%s find t from %d to %d=%d' % (str,1,2,str.find('t',1,2))
#print '%s index nono ' % (str,str.index('nono',1,2))
print '%s rfind t=%d' % (str,str.rfind('t'))
print '%s count t=%d' % (str,str.count('t'))
字符串替换相关
替换old为new:str.replace('old','new')
替换指定次数的old为new:str.replace('old','new',maxReplaceTimes)
print '%s replace t to *=%s' % (str,str.replace('t', '*'))
print '%s replace t to *=%s' % (str,str.replace('t', '*',1))
字符串去空格及去指定字符
去两边空格:str.strip()
去左空格:str.lstrip()
去右空格:str.rstrip()
去两边字符串:str.strip('d'),相应的也有lstrip,rstrip
str=' python String function '
print '%s strip=%s' % (str,str.strip())
str='python String function'
print '%s strip=%s' % (str,str.strip('d'))
按指定字符分割字符串为数组:str.split(' ')
默认按空格分隔
str='a b c de'
print '%s strip=%s' % (str,str.split())
str='a-b-c-de'
print '%s strip=%s' % (str,str.split('-'))
字符串判断相关
是否以start开头:str.startswith('start')
是否以end结尾:str.endswith('end')
是否全为字母或数字:str.isalnum()
是否全字母:str.isalpha()
是否全数字:str.isdigit()
是否全小写:str.islower()
是否全大写:str.isupper()
str='python String function'
print '%s startwith t=%s' % (str,str.startswith('t'))
print '%s endwith d=%s' % (str,str.endswith('d'))
print '%s isalnum=%s' % (str,str.isalnum())
str='pythonStringfunction'
print '%s isalnum=%s' % (str,str.isalnum())
print '%s isalpha=%s' % (str,str.isalpha())
print '%s isupper=%s' % (str,str.isupper())
print '%s islower=%s' % (str,str.islower())
print '%s isdigit=%s' % (str,str.isdigit())
str='3423'
print '%s isdigit=%s' % (str,str.isdigit())
常用内置模块函数:
abs(x) 返回x的绝对值
apply(func[,args[,kwargs]]) 把函数的参数放置在序列中传入函数
bool([x]) 把每一个值或者表达式转换为bool类型,如果表达式x为
abs(x) 返回x的绝对值
apply(func[,args[,kwargs]]) 把函数的参数放置在序列中传入函数
bool([x]) 把每一个值或者表达式转换为bool类型,如果表达式x为
值,则返回True,否则返回False
cmp(x,y) 比较x,y的大小
delattr(obj,name) 等价于del obj.name
eval(s[,globals[,locals]]) 计算表达式的值
float(x) 把数字或者字符串转换成float类型数据
hash(object) 返回一个对象的hash值
help([object]) 返回内联函数的帮助说明
id(x) 返回一个对象的标示
input([prompt]) 接受控制台的输入,并把输入的值转换成数字
int(x) 把数字或字符串转换为整型
len(obj) 对象包含的元素的个数
range([start,]end[,step]) 生产一个列表并返回
raw_input([prompt]) 接受控制台的输入,返回字符串类型
reduce(func,sequence[,initial]) 对序列的值进行累加计算
round(x,n=0) 四舍五入的函数
set([interable]) 返回一个set集合
sorted(iterable[,cmp[,key[,reverse]]]) 返回一个排序后的列表
sum(iterable[,start=0]) 返回一个序列的和
type(obj) 返回一个对象的类型
xrange(start[,end[,step]]) 功能和range()类似,但是一次返回一个值
zip(seq1[,seq2,...]) 把n个序列作为列表的元素返回
cmp(x,y) 比较x,y的大小
delattr(obj,name) 等价于del obj.name
eval(s[,globals[,locals]]) 计算表达式的值
float(x) 把数字或者字符串转换成float类型数据
hash(object) 返回一个对象的hash值
help([object]) 返回内联函数的帮助说明
id(x) 返回一个对象的标示
input([prompt]) 接受控制台的输入,并把输入的值转换成数字
int(x) 把数字或字符串转换为整型
len(obj) 对象包含的元素的个数
range([start,]end[,step]) 生产一个列表并返回
raw_input([prompt]) 接受控制台的输入,返回字符串类型
reduce(func,sequence[,initial]) 对序列的值进行累加计算
round(x,n=0) 四舍五入的函数
set([interable]) 返回一个set集合
sorted(iterable[,cmp[,key[,reverse]]]) 返回一个排序后的列表
sum(iterable[,start=0]) 返回一个序列的和
type(obj) 返回一个对象的类型
xrange(start[,end[,step]]) 功能和range()类似,但是一次返回一个值
zip(seq1[,seq2,...]) 把n个序列作为列表的元素返回