【参考】 Python内置函数 | 菜鸟教程
目录
六大集本数据类型
- 数字型:① 整型 ② 浮点型 ③ 布尔型 ④ 复数类型
- 字符串
- 列表:可获取,可修改、有序
- 元组:可获取、不可修改、有序
- 集合:不可获取、不可修改、无序、自动去重
- 字典:可获取、可修改(通过键进行)
all()
# 语法
all(iterable) # iterable -- 元组或列表
# 描述
def all(iterable):
for element in iterable:
if not element:
return False
return True
Notes:
- 作用:判断给定的可迭代参数iterable中的所有元素是否都为True
all()
中空元组、空列表返回值为True,这里要特别注意if not x
中当元素x是 0、空、None、False 时结果为True- 判断变量是否为None的情况,主要有三种写法:
第一种:if x is None
第二种:if not x
第三种:if not x is None
any()
# 语法
any(iterable) # iterable -- 元组或列表
# 描述
def any(iterable):
for element in iterable:
if element:
return True
return False
Notes:
- 作用:判断给定的可迭代参数iterable中是否存在元素为True
- 元素除了是 0、空、None、False 外都算 TRUE
dir()
# 语法
dir([object]) # object -- 对象、变量、类型。
# 例子
dir([ ]) # 查看列表的方法
dir() # 获得当前模块的属性列表
Notes:
- 作用:查看对象内的所有的属性和方法
divmod()
# 语法
divmod(a, b)
Notes:
- 作用:返回一个包含商和余数的元组(a // b, a % b)
enumerate()
# 语法
enumerate(sequence, [start=0])
# sequence -- 一个序列、迭代器或其他支持迭代对象
# start -- 下标起始位置的值
Notes:
- 作用:将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标
- 一般用在 for 循环中来同时找到索引和值
filter()
# 语法
filter(function, iterable)
# function -- 判断函数
# iterable -- 可迭代对象
Notes:
- 过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表
- 判断函数是事先定义的喔
format()
# 语法
str.format()
Notes:
- 链接: Python format 格式化函数
^
,<
,>
分别是居中、左对齐、右对齐,后面带宽度,:
号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充+
表示在正数前显示+
,负数前显示-
;- b、d、o、x 分别是二进制binary、十进制decimalism、八进制octonary、十六进制hexadecimal
input()
# 语法
input([prompt]) # prompt -- 提示信息
raw_input([prompt]) # prompt -- 提示信息
Notes:
input()
需要输入python表达式,返回所输入的数字的类型( int, float )raw_input()
将所有输入作为字符串看待,返回字符串类型- 需要一次进行多个用空格分隔的输入时,可以利用
input().split()
isinstance()
# 语法
isinstance(object, classinfo)
# object -- 实例对象
# classinfo -- 可以是直接或间接类名、基本类型或者由它们组成的元组
Notes:
- 如果对象的类型与参数二的类型相同则返回 True,否则返回 False
insinstance()
认为子类类型是父类类型的一种,type()
不然
iter()
# 语法
iter(object[, sentinel])
# object -- 支持迭代的集合对象
# sentinel -- 如果传递了第二个参数,则参数 object 必须是一个可调用的对象(如:函数)
Notes:
- 当输出内容有固定话术时,可以考虑用传递两个参数(object, sentinel)的方法
len()
# 语法
len( s ) # s -- 对象
Notes:
- 返回输入对象的长度
list()
# 语法
list( tup ) # tup -- 要转换为列表的元组
Notes:
- 元组与列表区别在于元组的元素值不能修改,元组是放在括号中,列表是放于方括号中
tuple()
# 语法
tuple( iterable ) # iterable -- 要转换为元组的可迭代序列
Notes:
- 元组与列表区别在于元组的元素值不能修改,元组是放在括号中,列表是放于方括号中
- 将列表转换为元组;针对字典,则返回字典的key组成的tuple;元组则返回元组自身
map()
# 语法
map(function, iterable, ...) # function -- 函数;iterable -- 一个或多个序列
Notes:
- 对参数序列iterable…每个参数都调用function,返回由function返回值组成的新列表
- 拓展:function处可以使用lambda匿名函数
next()
# 语法
next(iterable[, default])
# iterable -- 可迭代对象
# default -- 可选,用于设置在没有下一个元素时返回该默认值,如果不设置,又没有下一个元素则会触发 StopIteration 异常
Notes:
next()
返回迭代器的下一个项目,要和生成迭代器的iter()
函数一起使用
range()
# 语法
range(start, stop[, step])
# start -- 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
# stop -- 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
# step -- 步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
Notes:
- 虽然返回结果是用方括号,但结果其实是一个整数序列的对象,而不是列表
set()
# 语法
class set([iterable]) # iterable -- 可迭代对象对象
# 例子
x = set('runoob')
Notes:
- 创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等
- 交集
&
:x&y
,返回一个新的集合,包括同时在集合 x 和y中的共同元素 - 并集
|
:x|y
,返回一个新的集合,包括集合 x 和 y 中所有元素 - 差集
-
:x-y
,返回一个新的集合,包括在集合 x 中但不在集合 y 中的元素 - 补集
^
:x^y
,返回一个新的集合,包括集合 x 和 y 的非共同元素
str()
# 语法
class str(object='') # object -- 对象
Notes:
- 将对象转化为适合阅读的 string 格式
sum()
# 语法
sum(iterable[, start])
# iterable -- 可迭代对象,如:列表、元组、集合
# start -- 指定相加的参数,如果没有设置这个值,默认为0
# 例子
sum([0,1,2]) # 3
sum((2, 3, 4), 1) # 10,元组计算总和后再加 1
sum([0,1,2,3,4], 2) # 12,列表计算总和后再加 2
Notes:
- 对于数组 np.array 可以设置按行/列相加,以及是否保留多维特性
zip()
# 语法
zip([iterable, ...]) # iterable -- 一个或多个迭代器
# 例子
a = [1,2,3]
b = [4,5,6]
c = [4,5,6,7,8]
zipped = zip(a,c) # [(1, 4), (2, 5), (3, 6)]
zip(*zipped) # [(1, 2, 3), (4, 5, 6)]
Notes:
zip()
压缩时,元素个数与最短的列表一致,返回元组列表- 与
zip()
相反,zip(*)
可理解为解压,返回二维矩阵式