Python的内置函数
Posted 小女子的测试之路
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python的内置函数相关的知识,希望对你有一定的参考价值。
函数名 | 功能描述 | 示例 |
abs() | 返回数字的绝对值 | abs(-45) |
divmod() | 把除数和余数运算结合起来,返回一个包含商和余数的元组 | divmod(7,2) 返回:(3,1) |
raw_input() | 获取控制台输入,将所有输入看作字符串,返回字符串类型 |
a=raw_input("input=") input=abc type(a) #<type ‘str‘> |
input() | 获取控制台输入,希望能够读取一个合法的python表达式,即输入字符串时,需要用引号括起来,否则报语法错误 |
a=raw_input("input=") input=abc #会报错 |
staticmethod() | 声明方法为静态方法,类可以不用实例化就可以调用静态方法,实例化也可以调用 |
class C(object): @staticmethod def f(): print("staticmethod") C.f() #静态方法无需实例化 cobj = C() cobj.f() #实例也可调用 |
all() | 用于判断给定的可迭代参数iterable中的所有元素是否不为0,‘‘,False或者iterable为空,如果是返回True,否则返回False |
all([‘a‘,‘b‘]) #True all([‘a‘,‘‘]) #Flase all([0,1,2]) #False all([]) #True all(()) #True |
int(x,base=10) | 用户将一个字符串或者数字转换为整形,base标识进制 |
int() # 默认为0 int(3.6) # 3 int(‘12‘,16) #18 |
ord() | 返回对应字符的十进制整数 | ord(‘a‘) #97 |
unichr() | 返回unicode的字符 |
unicode(97) # u‘a‘ |
str() | 返回一个对象的字符串格式 |
dict={‘a‘,‘b‘,‘c‘} str(dict) #"{‘a‘,‘b‘,‘c‘}" |
any() | 用于判断给定的可迭代参数iterable是否全部为空对象,如果都为空、0、false、则返回False,否则返回True |
any([‘a‘,‘b‘,‘c‘]) # True any([‘a‘,‘‘,‘c‘]) #True any([0,‘‘,False]) #False any([]) #False any(()) #False |
eval() | 用来执行一个字符串表达式,并返回表达式的值 |
x=7 eval(‘3*x‘) # 21 eval(‘pow(2,2)‘) #4 eval(‘2+2‘) #4 |
isinstance() | 用来判断一个对象是否是一个已知的类型,会认为子类是一种父类类型,考虑继承关系 |
a=2 isinstance(a,int) #True isinstance(a,str) #False isinstance(a,(str,int,list)) #True
class A:pass class B(A):pass isinstance(B(),A) #True type(B()) == A #Flase |
type() | 用来判断一个对象的类型,不会认为子类是一种父类类型,不考虑继承关系 | type(1) # <type ‘int‘> |
pow() | math模块中计算x的y次方,如果z存在,则再对结果进行取模,等效于pow(x,y)%z,一般都返回float类型 |
math.pow(100,2) #10000.0 math.pow(100,-2) #0.0001 |
sum() | 求和计算,sum(iterable[,start]),start指定相加的参数,没有默认为0 |
sum([0,,1,2]) #3 sum([2,3,4],1) #10元组计算总和后再加1 |
basestring() | 此方法是str和unicode的超类(父类),也是抽象类,不能被调用和实例化,但可以用来判断一个对象是否为str或者unicode的实例,isinstance(obj, basestring) 等价于 isinstance(obj, (str, unicode)) | isinstance("Hello world", basestring) |
execfile() | 用来执行一个文件 |
execfile(‘test.py‘)等价于 with open(‘test.py‘,‘r‘) as f:exec(f.read()) |
issubclass() | issubclass(class,classinfo),判断class是否是classinfo的子类,是则返回True,不是则返回False |
class A:pass class B(A):pass issubclass(B,A) #返回True |
bin() | 返回一个整数int或者长整数long int的二进制表示 |
bin(10) # ‘0b1010‘ bin(20) # ‘0b10100‘ |
iter() | 函数用来生成迭代器 |
lst=[1,2,3] for i in iter(lst):print (i) |
tuple() | 函数将列表转换为元组;针对字典,会返回字典的key组成的元组;元组会返回元组自身;元组的元素不能修改 |
tuple([1,2,3,4]) # (1,2,3,4) tuple({1:2,3:4}) # (1,3) |
list() | 将元组转换为列表 |
list((12,‘xyz‘,‘abc‘)) # [123,‘xyz‘,‘abc‘] |
bool() | 将给定参数转换为布尔类型,如果没有参数,返回False |
bool() # False bool(0) # False bool(1) # True |
filter() | 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表;两个参数,第一个为函数,第二个为序列;filter(function,iterable) |
过滤出所有基数 def is_odd(n):return n%2 == 1 newlist = filter(is_odd,[1,2,3,4,5,6]) #newlist = [1,3,5] |
len() | 返回字符串长度或者项目个数 |
str = “runnoob” len(str) #6 l = [1,2,3,4,5] len(l) # 5 |
range() | 可创建一个整数列表,一般用在for循环中,range(start,stop[,step]) |
range(5) # [0,1,2,3,4,5] range(1,5) # [1,2,3,4,5] range(0,6,2) # [0,2,4,6] |
float() | 将整数和字符串转换成浮点数 |
float(1) # 1.0 float(112) # 112.0 float(‘123‘) # 123.0 |
callable(object) | 用于检查一个对象是否是可调用的,返回True,object仍然可能调用失败;如果返回False,调用object绝对不会成功 |
callable(0) # False callable("baidu") # False def add(a,b):return a+b callable(add) # True |
format() |
格式化字符串的函数 str.format(),增强了字符串格式化的功能 1.format函数可以接受不限个数的参数,位置也可以不按顺序 2.也可以设置参数 |
1.位置不按顺序 "{}{}".format("H","W") #"H W" "{0}{1}".format("H","W") #"H W" "{1}{0}{0}".format("H","W") # "W H H" 2.设置参数 "网站名:{name},地址:{url}".format(name="百度",url="www.baidu.com") 通过字典设置参数 site = {"name":"百度","url":"www.baidu.com"} "网站名:{name},地址{url}".format(**site)
通过列表索引设置参数 my_list = [‘百度‘,‘www.baidu.com‘] "网站名:{0[0]},地址{0[1]}".format(my_list) #0是必须的 |
locals() |
以字典类型返回当前位置的全部局部变量 对于函数,方法,lambda函式,类,以及实现了__call__方法的类实例,它都返回了True |
def baidu(arg): z=1 print(locals()) baidu(4) #{‘z‘:1,‘arg‘:4}返回一个名字/值对的字典 |
:" |
以上是关于Python的内置函数的主要内容,如果未能解决你的问题,请参考以下文章
二级Python----Python的内置函数及标准库(DAY 8)