Python之路10:内置函数

内置函数

Python解释器有许多内置的函数和类型,可以被直接调用的
如图下:


chapter3-built-in.png

abs()

# 返回参数的绝对值

num = abs(-3)
print(num)
# 输出: 3

all()

# 判断是否都为True,则返回True,如果有一个为False,则为False
>>> a = [-1,3,4,5]
>>> bool(a)
True
>>> all(a)
True
>>> a.append(0)
>>> bool(a)
True
>>> a
[-1, 3, 4, 5, 0]  # 0 为 False
>>> all(a)  # 有一个为False,则返回False
False
>>> bool([])
False
>>> all([])
True

any()

# 如果有一个是True,则为True,全为False,则返回False
>>> a 
[-1, 3, 4, 5, 0]
>>> any(a)
True
>>> any([False])
False

ascli()

# 返回 ascli 编码
>>> a = 'abc天天'
>>> ascii(a)
"'abc\\u5929\\u5929'"

bin()

# 返回二进制
>>> bin(10)
'0b1010'

bool()

# 判断布尔值
>>> bool(1)
True
>>> bool(0)
False
>>> bool([])
False

bytearrany()

# 修改字符串值,原内存地址修改而不是重新赋值
>>> a2 = bytearray(a, encoding='utf-8')
>>> a
'abc路飞'
>>> a2
bytearray(b'abc\xe8\xb7\xaf\xe9\xa3\x9e')
>>> a2[0]
97
>>> a2[0] = 98
>>> a2
bytearray(b'bbc\xe8\xb7\xaf\xe9\xa3\x9e')
>>>

bytes()

# bytes 类型
>>> bytes('路飞', encoding='utf-8')
b'\xe8\xb7\xaf\xe9\xa3\x9e'

callable()

# 判断是否可调用
>>> def f():
...   pass
... 
>>> callable(f)   # 可以判断是否为函数
True
>>> a
(1, 2, 3)
>>> callable(a)
False

chr()

# 和 ord 相反,通过 ascli码表返回对应的字符串
>>> chr(97)
'a'
>>> chr(49)
'1'

compile()

# 编译代码

complex()

# 转换成负数

dir()

# 打印当前程序的所有变量
>>> dir()
['__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'a']
>>> c = 2
>>> dir()
['__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'a', 'c']

divmod()

# 返回整除和余数
>>> divmod(10,3)  # 10//3 和 10 % 3
(3, 1)  # 3 为整除,1为余数

enumerate()

# 枚举,可以返回列表的索引
>>> a = [1,2,3]
>>> for index,i in enumerate(a):
...     print(index, i )
... 
0 1
1 2
2 3

eval()

# 按解释器规则将字符串转成代码 eval 只能处理单行代码,可以拿到返回值
>>> eval('print("hello world")')
hello world
>>> a = '1+2'
>>> print(eval(a))
3
>>> print(exec(a))
Non

exec()

# 同 eval相同,但是 exec 可处理多行代码,但不能拿到返回值
>>> code = '''
... if 3 > 5:
...   print('abc')
... else:
...   print(123)
... '''
>>> exec(code)
123
>>> a = '1+2'
>>> print(eval(a))
3
>>> print(exec(a))
Non

filter()

# 返回符合的值,是True则返回
>>> filter(lambda x: x > 2 , [1,2,3,4])
<filter object at 0x7fb9232a2a58>
>>> list(filter(lambda x: x > 2 , [1,2,3,4]))
[3, 4]

float()

# 浮点类型

frozenset()

# 转换成不可变的集合

globals()

# 打印全局变量

hash()

# 返回不可变的字符的 hash 值
>>> a = (1,2,3)
>>> hash(a)
2528502973977326415
>>> hash('b')
3928152851069447604

help()

# 帮助命令

hex()

# 将数值转成 16 进制
>>> hex(12)
'0xc'

id()

# 返回内存值
>>> id(3)
9330976
>>> id('a')
140433265525848

input()

# 输入,返回的类型为字符串,可以交互式输入字符串
>>> input('abc')
abc

len()

# 返回查询的长度
>>> a = [1,2,3,4,5]
>>> len(a)
5

list()

# 转换成列表
>>> a = list(range(10))
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

locals()

# 打印函数的局部变量,一般在函数内执行

map()

# 可以配合 lambda 进行列表自乘
>>> map(lambda x: x*x , [1,2,3,4])
<map object at 0x7fb9232a2a90>
>>> list(map(lambda x: x*x , [1,2,3,4]))
[1, 4, 9, 16]

max()

# 返回最大值
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> max(a)
9

min()

# 返回最小值
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> min(a)
0

oct()

# 返回 8 进制
>>> oct(8)
'0o10'

open()

# 打开文件并指定读写,字符编码
>>> open('test.txt', mode='r', encoding='utf-8')
# 第一个为文件名,在同一目录下可以直接写文件名,不是就需要写绝对路径
# mode 指定读写
# enconding 指定字符编码

ord()

# 返回字符串在 ascli 码表值
>>> ord('a')
97
>>> ord('1')
49

pow()

# 返回多少次方
>>> pow(2,3)
8

print()

# 输出字符到屏幕
>>> print('abc')
abc
>>> print('abc','123')
abc 123
>>> print('abc','123', sep='-')
abc-123
>>> print('abc','123', sep='-',end='')
abc-123>>> 

range()

# 返回指定的数值
>>> a = range(10)
>>> a
range(0, 10)

repr()

# 显示形式变成字符串

reversed()

# 跟 sorted 相反

round()

# 保留多少为小数

set()

# 转换成集合

slice()

# 提前定义好切片规则
>>> a = list(range(10))
>>> s = slice(1,7,2)
>>> a[s]
[1, 3, 5]

sorted()

# 排序
>>> sorted(d.items(), key=lambda x:x[1])
[(1, -49), (2, -48), (3, -47), (4, -46), (5, -45), (6, -44), (7, -43), (8, -42), (9, -41), (0, 100)]
# 根据 values 值从小到大排序

str()

# 转换成字符串类型
>>> a = [1,2,3,4]
>>> str(a)
'[1, 2, 3, 4]'

sum()

# 求和
>>> a = [2,3,4,-1,3]
>>> sum(a)
11

tuple()

# 转换成元祖

type()

# 返回字符类型
>>> a = []
>>> type(a)
<class 'list'>
>>> type(1)
<class 'int'>
>>> type('b')
<class 'str'>

vars()

# 当前程序所有的变量

zip()

# 将两个列表进行一一对应,没有的值就丢弃
>>> a = [1,2,3,4,5]
>>> b = ['a', 'b', 'c', 'd']
>>> list(zip(a,b))
[(1, 'a'), (2, 'b'), (3, 'c'), (4, 'd')]
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容

  • 内置函数Python解释器内置了许多功能和类型,总是可用的。他们是按字母顺序列在这里。 abs(x)返回一个数的绝...
    uangianlap阅读 1,228评论 0 0
  • Python内置函数详解——总结篇 ** 引 言** ** 数学运算** abs:求数值的绝对值>>> abs...
    yutiansut阅读 719评论 0 1
  • 前言 python实现一些功能特别方便,一般用于快速生成程序的原型,后期可以使用更加适合的语言编写。跟紧时代的脚步...
    九风萍舟阅读 741评论 0 1
  • 1. abs(x) abs()函数返回数字(可为普通型、长整型或浮点型)的绝对值。如果给出复数,返回值就是该复数的...
    TENG书阅读 412评论 0 0
  • 1. abs(x) abs()函数返回数字(可为普通型、长整型或浮点型)的绝对值。如果给出复数,返回值就是该复数的...
    chen_000阅读 401评论 0 0