内置函数

阅读目录:

迭代器/生成器相关(3个)

内置函数名 作用
range() 范围
next() 后面加迭代器,可为迭代器取值
iter() 后面加可迭代的,可转换为迭代器
1、range()
range(终止位置)
range(起始,终止位置)
range(起始,终止,步长)
range(5)   [0,4]  [0,5)
range(1,5) [1,4]  [1,5)
range(1,10,2)  [1,3,5,7,9]
range(0,10,2)  [0,2,4,6,8]

 2、next()

 __next__  是迭代器的方法
g.__next__() 带双下划线的魔术方法一般情况下不直接用
next(g)    之前所有的__next__都应该替换成next(g)
*带双下划线的所有的方法都可能和内置的函数有千丝万缕的联系

3.iter()

__iter__
迭代器 = 可迭代的.__iter__()
迭代器 = iter(可迭代的)

其他类(11个)

类别 内置函数名 作用
字符串类型代码的执行(3个) eval 可以将字符串类型的代码执行,具有返回值,是其结果
exec 返回值为NONE
compile
将字符串类型的代码编译
文件操作类(1个) open 后面跟文件名
输入输出(2个) input P3中输出字符串类型的参数
print sep(分隔符),end(结束符)
内存相关(2个) hash 是一种算法,导致了字典的快速查询
id 查询内存地址
查看内置属性(1个) dir  
帮助(1个) help  
调用相关(1个) callable 判断某一个变量是否可调用

1.open

open('文件名') 跟着操作系统走的
打开模式 默认是r
编码 默认是 操作系统的默认编码

打开模式 : r w a rb wb ab
编码 : utf-8(100%)
       gbk

2.input

input('字符串数据类型的参数,提醒用户你要输入的内容')
python2
    input() 还原你输入的值的数据类型
    raw_input = py3.input
python3
    input() 输入的所有内容都是字符串类型
阻塞: 等待某件事情发生,如果不发生一直等着
input的返回值就是用户输入的内容
输入的内容 = input('提示')

3.print

print(要打印的内容1,要打印的内容2,要打印的内容3,sep = '分隔符',end = '结束符')
    # print(123)
    # print('abc')
    # print(123,'abc')
    # print(123,'abc','aaa',sep = '|')
    # print(123,'abc','aaa',end = '@')
    # print(123,'abc','aaa',end = '@')
    # print(123,'abc')
    # f = open('file','w')
    # print(123,'abc',file=f)   # print的本质 就是写文件 这个文件是pycharm的屏幕
    # f.close()
    # sep=' ' seperator

4.callable

# def call(arg):
#     if callable(arg):
#         arg()
#     else:
#         print('参数不符合规定')
#
#
# def func():
#     print('in func')
#     return 1
#
# func2 = 1234
# call(func)
# call(func2)

# print(callable(func))
# print(callable(func2))

作用域相关(2个)

内置函数名称 作用
globals 获取全局变量
locals 获取局部变量的字典

示例:

1.  当打印的都是全局变量的时候,无论是全局作用域还是局部作用域,打印结果相同

a = 1
b = 2
print(locals())   # 此时打印的是全局作用域
print(globals())  

2.  以下locals打印结果为局部作用域下的值,结果为字典类型。globals打印出的是全局作用域下的结果

def func():
    c = 3
    d = 4
    print(locals())
    print('-->',globals())
func()

基础数据类型相关(38个)

和数字相关(14个)

数据类型(4个)

内置函数名称 作用
bool 布尔值
int 整型
float 浮点值
complex 复数

示例:

1.complex : 复数  复数是一种基础数据类型

c = 1+2J
print(type(c))
执行结果:<class 'complex'>

进制转换(3个)

内置函数名称 作用
bin 二进制
0b开头
oct 八进制
0o开头
hex 十六进制
0x开头

 

a = 19
print(bin(a))
print(oct(a))   
print(hex(a))

执行结果:
0b10011
0o23
0x13

数学运算(7个)

内置函数名称 作用
abs 绝对值
divmod 商余函数
返回一个元祖,元祖里面分别是商数和余数
round 小数精准
2.X版本完全的四舍五入
3.x版本不是完全四舍五入
pow 幂运算
sum 求和
min 最小值
max 最大值

 示例:

1.divmod   返回一个元祖,元祖里面分别是商数和余数

 

print(divmod(10,3))
print(divmod(7,4))
print(divmod(8,3))

执行结果:
(3, 1)
(1, 3)
(2, 2)

 

2.pow 幂运算

 

print(pow(2,3))
print(pow(3,2))
print(pow(5,3,2))
print(pow(4,2,2))
print(pow(4,3,2))
执行结果:
8
9
1
0
0

 

3.sum 求和

print(sum((1,2,3,4)))
执行结果:10

4.min 最小值

def func(n):  
    return n%6

ret = min(2,3,4,7,key = func)
print(ret)
执行结果:7

5.max 最大值

l = [(7,2,3),(4,5,6),(-1,20,5)]
print(max(l,key = sum))  
执行结果:
(-1, 20, 5)

 

 

和数据结构相关(24个)

序列(13个)

类别 内置函数名称 作用
列表和元祖 list  
tuple  
相关内置函数(2个) reversed 返回一个迭代器
reversed(list)
slice 切片
字符串 str  
format 格式化
bytes 字节
bytearray 字符串编成一个字节数组
memoryview 不常用
ord 字符串转编码
chr 编码转字符串
ascii 字符串转ascii
repr 打印的时候输出变量类型

数据集合(3个)

类别 内置函数名称 作用
字典 dict  
集合 set  
forzenset  

相关内置函数(8个)

内置函数名称 作用
len 计算长度
enumerate 枚举函数
all 参数iterable只要有一个为假返回False
any 参数iterable只要有一个为真返回True
zip 拉链函数,返回迭代器-节省内存
filter 筛选,返回迭代器
map 一个迭代器中的每一个元素都需要去做同一个操作
sorted 根据key对应的函数的返回值的大小来排序的

示例:

1.enumerate   (执行结果以元祖形式返回),可以用此内置函数进行添加序号

for i in enumerate(['a','b','c'],1):
    print(i)

执行结果:
(1, 'a')
(2, 'b')
(3, 'c')

2.zip    拉链函数 返回迭代器-节省内存

a = (1,2,3,4)
b = ('a','b','c')
c = ['111','222']
d = {'k1':'v1','k2':'v2'}
ret = zip(a,b,c,d)
for i in ret:
    print(i)
执行结果:

(1, 'a', '111', 'k1')
(2, 'b', '222', 'k2')

3.filter   

def func(i):
    if i % 2 != 0:
        return True
l = [1, 4, 6, 7, 9, 12, 17]
for i in filter(func,l):   # 迭代l,每一个元素作为参数传给func,如果func的返回值为True,那么l中的这个元素就保留
    print(i)
执行结果:

1
7
9
17

4.map       一个迭代器中的每一个元素都需要去做同一个操作并返回一个结果组成一个新列表的时候map来处理

def func(i):
    return i*'*'

ret = map(func,[1,2,3])
for i in ret:
    print(i)
执行结果:

*
**
***

5.sorted  返回一个新的列表

l = [{'name':'电脑','price':1999},{'name':'鼠标','price':2000}]
# 按照每一个字典中商品的价格从高到低排列
def func(dic):
    return dic['price']
l.sort(key=func,reverse=True)
print(l)

new_l
= sorted(l,key = func,reverse= True) print(new_l)

执行结果:

[{'name': '鼠标', 'price': 2000}, {'name': '电脑', 'price': 1999}]
[{'name': '鼠标', 'price': 2000}, {'name': '电脑', 'price': 1999}]

面向对象相关(2个)

内置函数名称 作用
 issubclass 检测某一个类是不是一个类的子类
isinstance 检测的是对象是不是某个类以及其父类的对象

 

issubclass(子类,父类),如果真的有继承关系,就返回True

class A(object):pass
class B(A):pass
print(issubclass(B,A))

isinstance

class A(object):pass
a = A()
print(isinstance(a,A))
# 继承
class A(object):pass
class B(A):pass
b = B()
print(isinstance(b,A)) # 检测的是对象是不是某个类以及其父类的对象

 

posted @ 2019-02-02 03:37  小萍瓶盖儿  阅读(228)  评论(0编辑  收藏  举报