柚子快报激活码778899分享:python内置函数

http://yzkb.51969.com/

 内置函数详解:https://docs.python.org/3/library/functions.html?highlight=built#ascii

abs() # 取绝对值

dict() # 把数据转为字典

help() # 帮助

min() # 找出最小值

max() # 找出最大值

setattr() # 设置属性值

bool() # 判断True or False(bool(0)、bool(Flase)、bool([]))

all() # 可循环的数据集合每个元素bool()均为True;或者空列表也是True

any() # 任意一个值是True即返回True

dir() # 打印当前程序里的所有变量

hex() # 转换为16进制数

slice() # 提前定义切片规则

divmod() # 传入两个变量a、b,得到a//b结果和余数a%b

sorted() # 列表排序sorted(li)等同于li.sort() 用法:sorted(iterable, key)

ascii(2) # 只能返回ascii码

enumerate([3,2,13,4]) # 返回列表的索引

input('dasd')

oct(10) # 转八进制

staticmethod() #

bin(10) # 转二进制

open() # 文件打开

str() # 转字符串

isinstance()

ord('a') # 返回97,ascii码中'a'位置

chr(97) # 返回'a',输入97位置返回ascii码对应字符

sum([1,4,5,-1,3,0]) # 计算列表求和

pow(100,2) # 返回x的y次方,10000

callable() # 查看函数是否可以调用,还可用于判断变量是否是函数

format()

vars() # 打印变量名和对应的值

locals() # 打印函数的局部变量(一般在函数内运行)

globals() # 打印全局变量

repr() # 显示形式变为字符串

compile() # 编译代码

complex() # 将一个数变为复数

'''

>>> complex(3,5)

(3,5j)

'''

round(1.2344434,2) # 指定保留几位小数 输出1.23

# delattr, hasattr, getattr, setattr # 面向对象中应用

hash() # 把一个字符串变为一个数字

memoryview() # 大数据复制时内存映射

set() # 把一个列表变为集合

'''

>>> set([12,5,1,7,9])

{1, 5, 7, 9, 12}

'''

几个***钻古怪的内置方法用法提醒

1、compile()编译字符串为字节代码

f = open("print.py")

data =compile(f.read(),'','exec') # 参数:source(字符串对象), filename(代码文件名), mode(编译代码种类exec\eval\single)

exec(data)

>>> str = "3 * 4 + 5"

>>> a = compile(str,'','eval')

>>> eval(a)

17

2、items()字典转化数组

>>> d = {}

>>> for i in range(10):

... d[i] = i - 50

...

>>> print(d)

{0: -50, 1: -49, 2: -48, 3: -47, 4: -46, 5: -45, 6: -44, 7: -43, 8: -42, 9: -41}

>>> d.items()

dict_items([(0, -50), (1, -49), (2, -48), (3, -47), (4, -46), (5, -45), (6, -44), (7, -43), (8, -42), (9, -41)])

>>> sorted(d.items())

[(0, -50), (1, -49), (2, -48), (3, -47), (4, -46), (5, -45), (6, -44), (7, -43), (8, -42), (9, -41)]

>>> sorted(d.items(), key = lambda x:x[1])

[(0, -50), (1, -49), (2, -48), (3, -47), (4, -46), (5, -45), (6, -44), (7, -43), (8, -42), (9, -41)]

>>> sorted(d.items(), key = lambda x:x[1], reverse=True)

[(9, -41), (8, -42), (7, -43), (6, -44), (5, -45), (4, -46), (3, -47), (2, -48), (1, -49), (0, -50)]

3、字符串转代码

# eval() # 字符串转代码(只能处理单行代码)(可以拿到返回值)

f = "1+3/2"

eval(f)

# 输出结果:2.5

eval('print("hello world")')

# 输出结果:hello world

# exec() # 字符串转代码(可以解析多行代码)(不能拿到返回值)

code = "\nif 3>5:\n print('3 bigger than 5')\nelse:\n print('dddd')\n\n"

exec(code)

# 输出结果:dddd

# eval和exec()返回值验证

code = '''

def foo():

print('run foo')

return 1234

foo()

res = eval("1+3+3")

res2 = exec("1+3+3")

res3 = exec(code)

print('res',res,res2,res3)

# 输出结果:res 7 None None

4、字符串转bytearray

# bytearray() 将字符串转为bytearray,完成修改后,decode()后,可在原内存地址修改字符串

>>> s = 'abcd路飞'

>>> s

'abcd路飞'

>>> s = s.encode('utf-8')

>>> s

b'abcd\xe8\xb7\xaf\xe9\xa3\x9e'

>>> s = bytearray(s)

>>> s

bytearray(b'abcd\xe8\xb7\xaf\xe9\xa3\x9e')

>>> s[4]

232

>>> s[4]=233

>>> s

bytearray(b'abcd\xe9\xb7\xaf\xe9\xa3\x9e')

>>> s.decode()

'abcd鷯飞'

>>> id(s) # 修改内部元素,s指向的内存地址并不会改变

4352883880

 5、map()对序列做映射

map(lambda x:x*x , [1,2,3,4,5]) # 根据提供的函数对指定序列做映射

>>> list(map(lambda x:x*x , [1,2,3,4,5]))

[1, 4, 9, 16, 25]

>>>def square(x) : # 计算平方数

... return x ** 2

...

>>> map(square, [1,2,3,4,5]) # 计算列表各个元素的平方

[1, 4, 9, 16, 25]

>>> map(lambda x: x ** 2, [1, 2, 3, 4, 5]) # 使用 lambda 匿名函数

[1, 4, 9, 16, 25]

# 提供了两个列表,对相同位置的列表数据进行相加

>>> map(lambda x, y: x + y, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10])

[3, 7, 11, 15, 19]

6、filter()条件过滤

filter() # 将符合条件的值过滤出来

# filter(function, iterable)

>>> list(filter(lambda x: x>3, [1,2,3,4,5]))

[4, 5]

import math

def is_sqr(x):

return math.sqrt(x) % 1 == 0

newlist = filter(is_sqr, range(1, 101))

print(newlist)

"""

[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

"""

7、frozenset()不可变集合

>>> s = {12,3,4,4}

>>> s.discard(3) # 集合删除元素,没有也不会报错

>>> s

{12,4}

>>> s = frozenset(s)

>>> s. # 已经没有discard方法可以调用

8、zip()两个数组组成元组

zip() # 可将两个数组一一对应组成元祖

>>> a = [1,2,3,45,6]

>>> b = ['a','b','c']

>>> zip(a)

>>> list(zip(a,b))

[(1, 'a'), (2, 'b'), (3, 'c')]

9、print()带参数的打印

>>> s = 'hey, my name is alex\n, from shandong'

>>> print('haifeng','gangsf',sep='<-')

haifeng<-gangsf

msg = "回到最初的起点"

f = open("print_tofile","w")

print(msg,"记忆里青涩的脸",sep="|",end="",file=f)

print(msg,"已经不忍直视了",sep="|",end="",file=f)

"""

生成print_tofile文件:回到最初的起点|记忆里青涩的脸回到最初的起点|已经不忍直视了

"""

10、slice()切片

slice() # 实现切片对象,主要用在切片操作函数里的参数传递

# 例子:slice('start', 'stop', 'step') # 起始位置、结束位置、间距

a = range(20)

pattern = slice(3, 8, 2) # 3到8,间隔两个数

for i in a[pattern]: # 等于a[3:8:2]

print(i)

11、reduce()对参数序列中元素进行累积

  reduce() 函数将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给 reduce 中的函数 function(有两个参数)先对集合中的第 1、2 个元素进行操作,得到的结果再与第三个数据用 function 函数运算,最后得到一个结果。

reduce() 函数语法:

reduce(function, iterable[, initializer])

参数

function -- 函数,有两个参数

iterable -- 可迭代对象

initializer -- 可选,初始参数

   返回值:函数计算结果

>>>def add(x, y) : # 两数相加

... return x + y

...

>>> reduce(add, [1,2,3,4,5]) # 计算列表和:1+2+3+4+5

15

>>> reduce(lambda x, y: x+y, [1,2,3,4,5]) # 使用 lambda 匿名函数

15

 

柚子快报激活码778899分享:python内置函数

http://yzkb.51969.com/

相关阅读

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。