pythonreal函数,python 内置函数

Build-in Functionis

abs()

dict()

help()

min()

setattr()

all()

dir()

hex()

next()

slice()

any()

divmod()

id()

object()

sorted()

ascii()

enumerate()

input()

oct()

staticmethod()

bin()

eval()

int()

open()

str()

bool()

exec()

isinstance()

ord()

sum()

bytearray()

filter()

issubclass()

pow()

super()

bytes()

float()

iter()

print()

tuple()

callable()

format()

len()

property()

type()

chr()

frozenset()

list()

range()

vars()

classmethod()

getattr()

locals()

repr()

zip()

compile()

globals()

map()

reversed()

__import()__

complex()

hasattr()

max()

round()

delattr()

hash()

memoryview()

set()

all(iterable)

如果元素都为True,或者为空,返回True.

all([1,2,4,True])

all([])

all([1,2,False])

True

True

False

any(iterable)

如果任意一元素为True 返回True, 如果为空 ,返回False

ascii(object)

返回object 的 string类型.

ascii([[1,2,3],2,3])

output

'[[1,2,3],2,3]'

bin(x)

返回二进制字符串开头带'0b' ,一般只能是int ,不是int 必须定义__index()__方法

class bool([x])

返回bool 结果,if x是 False 或者省略 返回False,其他返回True,bool()是int的子集(subclass)

class bytearray([source[, encoding[, errors]]])

返回新的位数组(0<=x<256), 它有大多数可变序列的常用方法

根据源参数的不同初始化数组

如果它是一个字符串,那么您还必须给出编码(以及可选的错误)参数;bytearray()然后使用str.encode()将-

字符串转换为字节。

如果它是一个整数,那么数组将具有这个大小,并将用null字节初始化。

如果它是符合缓冲区接口的对象,则将使用对象的只读缓冲区来初始化字节数组。

如果它是可迭代的,那么它必须是range 0 < = x < 256的整数的迭代,它被用作数组的初始内容

b = bytearray()

len(b)

b = bytearray('中文', 'utf-8')

len(b)

b = bytearray(5)

len(b)

bytearray([1,2,3,4,5])

len(b)

输出

bytearray(b'')

0

bytearray(b'\xe4\xb8\xad\xe6\x96\x87')

6

bytearray(b'\x00\x00\x00\x00\x00')

5

bytearray(b'\x01\x02\x03\x04\x05')

5

bytes([source[, encoding[, errors]]])

重复bytearray()的例子,输出结果为

b''

b'\xe4\xb8\xad\xe6\x96\x87'

b'\x00\x00\x00\x00\x00'

b'\x01\x02\x03\x04\x05'

callabel(object)

chr(i)

返回unicode编码字符串

范围0到0x10FFFF

@classmethod()

类装饰器

@staticmethod()

静态方法

compile(source, filename, mode, flags=0, dont_inherit=False, optimize=-1)

这个函数用来编译一段字符串的源码,结果可以生成字节码或者AST(抽像语法树),字节码可以使用函数exec()来执行,而AST可以使用eval()来继续编译。

参数source是一串字符串的源码,或者是AST对象数组。

参数filename是读取字符串的文件对象,如果不是从文件里读取源码来编译,那么这里可以放一些用来标识这些代码的字符串。

参数mode是用来指明那种表示的源码类型;如果是exec类型,表示这是一个序列语句,可以进行运行;如果是eval类型,表示这是一个单一的表达式语句,可以用来计算相应的值出来;如果是single类型,表示这是一个单一语句,采用交互模式执行,在这种情况下,如果是一个表达式,一般会输出结果,而不是打印为None输出。

可选参数flags和dont_inherit是用来控制编译源码时的标志,可以查看PEP236文档来了解这些参数,以及相关编译的说明。如果两者使用缺省参数(也即两者都是零值),在调用本函数编译时,主要使用代码中指明的编译特征来对待;如果flags参数设置有值,而dont_inherit没有设置(即是零值),那么编译代码时,不仅源码的编译特征起作用,而且flags指明的特征也起作用,相当两者的并集;如果参数dont_inherit设置有值(即是非零值),编译语句时只有参数flags指明的编译特征值起作用,即是不使用源码里指明的特征。

编译特征是按位图的方式设置到参数里,可以查看__future__

可选参数optimize是用来指明编译器使用优化的等级;缺省值是-1,表示使用命令行参数-O中获取的优化等级为准;如果设置值为0(即是不用优化,debug是设置true),是没有优化;如果设置值为1,assert语句被删除,debug设置为false;如果设置值为2,除了设置值为1的功能之外,还会把代码里文档说明也删除掉,达到最佳优化结果。

本函数编译代码时,如果语法出错会返回SyntaxError;如果代码包含一些空字节,则返回类型错误TypeError。

#compile()

str = "for i in range(0,10): print(i)"

c = compile(str,'','exec') # 编译为字节代码对象

exec(c) # 执行

str2 = "3*x + 4*y"

c2 = compile(str2, '', 'eval') # 编译为表达式

code_str = '''print('olivetree')\nprint( 'olivetree123') '''

c = compile(code_str,'','exec')

exec(c)

code_str = '''1+1 '''

c = compile(code_str, '', 'eval'

eval(c)

complex([real[, imag])

复合函数 real可以为number和string类型,imag只能为number

complex(2,5)

complex(2)

complex('2.0',5.0)

输出

2+5j

2+0j

2.0+5.0j

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值