python全栈开发-Day13 内置函数详解编程语言

一、内置函数

注意:内置函数id()可以返回一个对象的身份,返回值为整数。

这个整数通常对应与该对象在内存中的位置,但这与python的具体实现有关,不应该作为对身份的定义,即不够精准,最精准的还是以内存地址为准。

is运算符用于比较两个对象的身份,等号比较两个对象的值,内置函数type()则返回一个对象的类型

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

python全栈开发-Day13 内置函数详解编程语言

二、内置函数详情

1、abs(x)

功能:取数的绝对值

1
2
>>> 
abs
(

1
)  
#取-1的绝对值
1

2、all(iterable)

功能:如果这个可迭代的元素都为真,则返回真(非0的就为真,负数也是为真)

1
2
3
4
>>> 
all
([
0
,
9
,-
3
])   
#有0,说明为假
False
>>> 
all
([-
1
,

5
,
6
])  
#负数也是为真
True

3、any(iterable)

功能:可迭代的元素中,有一个为真,则返回真,没有真或空列表返回假。

1
2
3
4
>>> 
any
([
0
,
0
,
2
])  
#有一个为真,则为真
True
>>> 
any
([])  
#空列表为假
False

4、ascii(object)

功能:把内存对象变成一个可打印的字符串格式

1
2
>>> a = ascii([1,2,3,4])
>>> print(type(a),[a])

5、bin(x)

功能:把一个整数转换成二进制

1
2
3
4
>>> 
bin
(
300
)  
#把300转换成二进制
‘0b100101100’
>>> 
bin
(
1
)
‘0b1’

6、bool([x])

功能:返回一个布尔值,空列表为假,不为空为真

1
2
3
4
5
6
>>> 
bool
([])   
#空列表
False
>>> 
bool
([
1
,
2
])   
#不为空列表
True
>>> 
bool
([
0
])
True

7、bytearray[source[, encoding[, errors]]]

功能:字节数组,并且可以修改二进制的字节

1
2
3
4
5
6
>>> b 

bytearray(
“abcd”
,encoding
=
“utf-8”
)  
#声明一个字节数组
>>> b[
0
]  
#打印第一个元素的ascii值,也就是’a’对应的ascii值
97
>>> b[
0


100  
#修改时,只能赋值对应字符的ascii值
>>> b
bytearray(b
‘dbcd’
)   
#发现字节数组值被修改

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

功能:把字符串转换成字节

1
2
3
4
5
6
7
8
9
>>> b 

bytes(
“abcd”
,encoding
=
“utf-8”
)  
#声明字节
>>> b
b
‘abcd’
>>> b[
0
]   
#访问到’a’字符对应的ASCII值
97
>>> b[
0
]
=
100    
#不可以修改里面的值,不然会报错
Traceback (most recent call last):
  
File 
“<input>”
, line 
1

in 
<module>
TypeError: 
‘bytes’ 
object 
does 
not 
support item assignment

9、callable(object)

功能:判断一个对象是否可以被调用,只有在后面有括号的,表示可以调用,比如:函数,类。

1
2
3
4
5
>>> 
callable
([])  
#列表后面不加括号
False
>>> 
def 
sayhi():
pass  
#定义一个函数
>>> 
callable
(sayhi)  
#函数调用,后面需要加括号
True

10、chr(i)

功能:通过ascii的值(必须是数字),找到对应的字符

1
2
>>> 
chr
(
97
)
‘a’

11、ord(c)

功能:根据字符(必须ascii的字符),找到对应的ascii值

1
2
>>> 
ord
(
‘a’
)
97

12、complex([real[, imag]])

功能:返回一个复数,我们几乎用不到。

1
2
>>> 
complex
(
‘1+2j’
)
(
1
+
2j
)

13、dict(**kwarg)、dict(mapping**kwarg)、dict(iterable**kwarg)

功能:返回一个字典

1
2
3
4
5
6
7
8
>>> 
dict
()  
#定义一个字典
{}
>>> 
dict
(name
=
‘qianduoduo’
,age
=
18
)   
#传入非固定关键字参数
{
‘name’

‘qianduoduo’

‘age’

18
}
>>> 
dict
([(
‘name’
,
‘qianduoduo’
),(
‘age’
,
18
)])   
#传入一个列表
{
‘name’

‘zhangqigao’

‘age’

18
}
>>> 
dict
([[
‘name’
,
‘qianduoduo’
],[
‘age’
,
18
]])    
#传入一个列表
{
‘name’

‘qianduoduo’

‘age’

18
}

 14、dir([object])

功能:看一个对象有哪些方法

1
2
3
4
5
6
7
8
>>> name 

[]
>>> 
dir
(name)  
#显示name下的所有的方法
[
‘__add__’

‘__class__’

‘__contains__’

‘__delattr__’

‘__delitem__’

‘__dir__’

‘__doc__’
,
‘__eq__’

‘__format__’

‘__ge__’

‘__getattribute__’

‘__getitem__’

‘__gt__’

‘__hash__’
,
‘__iadd__’

‘__imul__’

‘__init__’

‘__iter__’

‘__le__’

‘__len__’

‘__lt__’

‘__mul__’

‘__ne__’
,
‘__new__’

‘__reduce__’

‘__reduce_ex__’

‘__repr__’

‘__reversed__’

‘__rmul__’
,
‘__setattr__’

‘__setitem__’

‘__sizeof__’

‘__str__’

‘__subclasshook__’

‘append’

‘clear’
,
‘copy’

‘count’

‘extend’

‘index’

‘insert’

‘pop’

‘remove’

‘reverse’

‘sort’
]

15、divmod(a,b)

功能:地板除,获得一个元组,元组第一个元素是商,第二个元素是余数。

1
2
>>> 
divmod
(
5
,
2
)
(
2

1
)    
#2是商,1是余数

16、enumerate(iterable,start=0)  购物车的列表用到了,

功能:遍历一个可迭代对象,获取索引和对应的元素的

1
2
3
4
5
>>> seasons 

[
‘Spring’

‘Summer’

‘Fall’

‘Winter’
]
>>> 
list
(
enumerate
(seasons))
[(
0

‘Spring’
), (
1

‘Summer’
), (
2

‘Fall’
), (
3

‘Winter’
)]
>>> 
list
(
enumerate
(seasons, start
=
1
))
[(
1

‘Spring’
), (
2

‘Summer’
), (
3

‘Fall’
), (
4

‘Winter’
)]

 17、eval(expressionglobals=Nonelocals=None)

功能:把字典类型的字符串变成字典,把一个整数类型的字符变成int类型,或者加减乘除这种简单转换成表达式。

1
2
3
4
>>> 
eval
(
‘1’
)  
#字符类型转换成int类型
1
>>> 
eval
(
“1+3/2*6”
)   
#字符串转换为表达式
10.0

18、filter(functioniterable)

功能:通过function过滤条件,去获取iterable中你想要的数据。

1
2
3
4
5
6
7
8
9
>>> res 

filter
(
lambda 
n:n>
5
,
range
(
10
)) 
>>> res     
#得到一个迭代器
<
filter 
object 
at 
0x0000000003093BE0
>
>>> 
for 

in 
res:
    
print
(i)
6
7
8
9

19、map(functioniterable)

功能:对传入的每一个值进行处理,处理完了再返回,再把原来的结果覆盖掉。

1
2
3
4
5
6
7
8
9
10
>>> res 

map
(
lambda 
n:n
*
2
,
range
(
5
))  
#n*2是处理方式
>>> res
<
map 
object 
at 
0x00000000031B4BE0
>
>>> 
for 

in 
res:
    
print
(i)
0
2
4
6
8

20、reduce(function,iterable)

功能:把一组可迭代序列通过function函数操作,元素之间相加或者相乘操作。

1
2
3
4
5
6
7
>>> 
from 
functools 
import 
reduce
>>> res 

reduce
(
lambda 
x,y:x
+
y,
range
(
10
))  
#x+y的值赋给x,rang(10)中的每个元素赋给y
>>> res
45
>>> res 

reduce
(
lambda 
x,y:x
*
y,
range
(
1
,
10
)) 
#x*y的值赋给x,rang(10)中的每个元素赋给y
>>> res
362880

21、float([x])

功能:把一个浮点类型的字符串转换为浮点类型的数据。

1
2
3
4
5
6
7
8
9
10
>>> 
float
(
‘+1.23’
)
1.23
>>> 
float
(
‘   -12345/n’
)

12345.0
>>> 
float
(
‘1e-003’
)
0.001
>>> 
float
(
‘+1E6’
)
1000000.0
>>> 
float
(
‘-Infinity’
)

inf

22、format(value[, format_spec])

功能:格式话字符串,前面字符串拼接讲过

23、frozenset([iterable])

功能:把集合变成一个不可变的集合

1
2
3
4
5
6
7
8
9
10
>>> res 

frozenset
([
1
,
2
,
3
,
4
,
3
])
>>> res
frozenset
({
1

2

3

4
})   
#去重的,不可变的集合
>>> 
dir
(res)   
#没有可变的方法
[
‘__and__’

‘__class__’

‘__contains__’

‘__delattr__’

‘__dir__’

‘__doc__’

‘__eq__’
,
‘__format__’

‘__ge__’

‘__getattribute__’

‘__gt__’

‘__hash__’

‘__init__’

‘__iter__’

‘__le__’
,
 
‘__len__’

‘__lt__’

‘__ne__’

‘__new__’

‘__or__’

‘__rand__’

‘__reduce__’

‘__reduce_ex__’
,
‘__repr__’

‘__ror__’

‘__rsub__’

‘__rxor__’

‘__setattr__’

‘__sizeof__’

‘__str__’

‘__sub__’
,
‘__subclasshook__’

‘__xor__’

‘copy’

‘difference’

‘intersection’

‘isdisjoint’

‘issubset’
,
‘issuperset’

‘symmetric_difference’

‘union’
]

 注:set()是可变的

24、globals()

功能:返回当前这个python文件中的所有变量的key-value,变量是key,值是value

1
2
3
4
5
6
7
print
(
globals
())
 
#输出
{
‘__spec__’

None

‘__name__’

‘__main__’

‘__file__’
: ‘D:
/
PycharmProjects
/
pyhomework
/
day4
/
内置函数
/
内置函数.py
‘, ‘
__doc__
‘: None, ‘
__package__
‘: None, ‘
__loader__’:
<_frozen_importlib_external.SourceFileLoader 
object 
at 
0x0000000000695B00
>,
‘__cached__’

None

‘__builtins__’
: <module ‘built

注:可以判断一个文件中的变量是否存在,而globals()只能打印全局变量

25、help([object])

功能:显示对象的帮助信息

1
2
3
4
5
6
7
8
9
10
11
>>> res 

[]  
#定义一个列表
>>> 
help
(res)   
#打印帮助信息
Help 
on 
list 
object
:
 
class 
list
(
object
)
 
|  
list
() 

> new empty 
list
 
|  
list
(iterable) 

> new 
list 
initialized 
from 
iterable’s items
 
 
|  Methods defined here:
 
 
…..

26、hex(x)

功能:把一个数字转成16进制

1
2
3
4
>>> 
hex
(
255
)
‘0xff’
>>> 
hex
(
10
)
‘0xa’

27、id(object)

功能:返回对象的内存地址

1
2
>>> 
id
(
‘zhangqigao’
)
50993136   
#’zhangqigao’这个字符串的内存地址

28、input([prompt])

功能:输入字符串

1
2
3
4
>>> s 

input
(
‘–> ‘


> Monty Python’s Flying Circus  
#输入的内容
>>> s 
“Monty Python’s Flying Circus”

29、int(x)

功能:把其他数据类型强制转换成int类型

1
2
>>> 
int
(
’10’
)
10

30、iter(object[, sentinel])

功能:把一个普通序列转成迭代器

1
2
3
with 
open
(
‘mydata.txt’
) as fp:
    
for 
line 
in 
iter
(fp.readline, ”):
        
process_line(line)

31、len(s)

功能:计算序列或者字符串的长度

1
2
3
4
>>> 
len
(
“zhangqigao”
)  
#字符串的长度
10
>>> 
len
([
1
,
2
,
3
,
4
,
5
])  
#列表的长度
5

32、list([iterable])

功能:把其他序列转换成一个列表

1
2
>>> 
list
((
1
,
2
,
3
,
4
,
5
))   
#把一个元组转换为一个列表
[
1

2

3

4

5
]

33、locals()

功能:打印局部变量

1
2
3
4
5
6
7
8
9
10
11
def 
test():
    
locals_var 

333
    
print
(
locals
())   
#只打印局部变量
 
test()
print
(
globals
().get(
“locals_var”
))  
#只能打印全局变量
 
#输出
 
{
‘locals_var’

333
}
None

34、max(iterable*[, keydefault])

功能:返回列表重点额最大值

1
2
>>> 
max
([
1
,
2
,
3
,
4
,
5
])
5

35、min(iterable*[, keydefault])

功能:返回列表中的最小值

1
2
>>> 
min
([
1
,
2
,
3
,
4
,
5
])
1

36、next(iterator[, default])

功能:返回迭代器的下一个值,相当于__next__()方法,如果迭代最后一个数据之后没有值了,则会抛出一个StopIteration异常

1
2
3
4
5
6
7
8
9
>>> a 

iter
([
1
,
2
])
>>> 
next
(a)
1
>>> 
next
(a)
2
>>> 
next
(a)
Traceback (most recent call last):
  
File 
“<input>”
, line 
1

in 
<module>
StopIteration

37、object

功能:python中一切皆对象,每一个对象都有它的属性和方法

38、oct(x)

功能:把一个数转成8进制

1
2
3
4
5
6
7
8
>>> oct(7)
‘0o7’
>>> oct(8)
‘0o10’
>>> oct(15)
‘0o17’
>>> oct(16)
‘0o20’

39、open(filemode=’r’buffering=-1encoding=Noneerrors=Nonenewline=Noneclosefd=Trueopener=None)

功能:文件操作,详细介绍:http://www.cnblogs.com/ManyQian/p/8075983.html

40、pow(xy[, z])

功能:返回多少次幂

1
2
>>> 
pow
(
2
,
3
)  
#相当于2**3
8

41、print(*objectssep=’ ‘end=’/n’file=sys.stdoutflush=False)

功能:打印

1
2
>>> 
print
(
“zhangqigao”
)
zhangqigao

42、range(stop)、range(startstop[, step])

功能:生成一个迭代器

1
2
3
4
5
6
>>> 
range
(
5
)
range
(
0

5
)
>>> 
range
(
1
,
5
)
range
(
1

5
)
>>> 
range
(
1
,
5
,
2
)
range
(
1

5

2
)

43、reversed(seq)

功能:反转一个序列,跟列表中的reversed方法是一样的

1
2
3
4
5
6
7
8
9
10
>>> 
reversed
([
1
,
2
,
3
,
4
,
5
])
<list_reverseiterator 
object 
at 
0x00000000030A2588
>  
#变成一个迭代器
>>> 
for 

in  
reversed
([
1
,
2
,
3
,
4
,
5
]):
…     
print
(i)
…    
5
4
3
2
1

44、round(number[, ndigits])

功能:四舍五入

45、set([iterable])

功能:集合

46、slice(stop),slice(startstop[, step])

功能:序列的切片,方便多次反复切

1
2
3
4
5
>>> a 

[
1
,
2
,
3
,
4
,
5
,
6
]
>>> a[
slice
(
1
,
3
)]
[
2

3
]
>>> a[
1
:
3
]
[
2

3
]

47、sorted(iterable[, key][, reverse])

功能:对一个序列进行排序

1
2
3
4
5
6
7
8
9
>>> 
sorted
([
5
,
3
,
2
,
6
,
8
])
[
2

3

5

6

8
]
>>> a 

{
1
:
5
,
6
:
8
,
3
:
6
}
>>> 
sorted
(a)  
#默认是按key排序
[
1

3

6
]
>>> 
sorted
(a.items())  
#按key排序
[(
1

5
), (
3

6
), (
6

8
)]
>>> 
sorted
(a.items(),key 

lambda 
x:x[
1
])  
#按value排序
[(
1

5
), (
3

6
), (
6

8
)]

48、 str(object)

功能:把其他数据类型转换为字符串

1
2
>>> 
str
(
1
)
‘1’

49、sum(iterable[, start])

功能:求一个列表的和,元组,集合,前提都是数字类型

1
2
>>> 
sum
([
1
,
2
,
3
,
4
,
5
,
6
])
21

50、tuple([iterable])

功能:把其他序列转换为一个元组

1
2
>>> 
tuple
([
1
,
2
,
3
,
4
,
5
])
(
1

2

3

4

5
)

51、type(object) 、type(namebasesdict)

功能:查看一个对象的数据类型

1
2
3
>>> a 

‘qianduoduo’
>>> 
type
(a)
<
class 
‘str’
>

注:一切数据类型都是有type()方法产生,它是一切数据类型的根。

52、zip(*iterables)

功能:zip中文意思是拉链的意思,把两个序列一一对应起来。

1
2
3
4
5
6
7
8
9
>>> a 

[
1
,
2
,
3
,
4
]
>>> b
=
[
‘a’
,
‘b’
,
‘c’
,
‘d’
]
>>> 
for 

in 
zip
(a,b):
…     
print
(i)
…    
(
1

‘a’
)
(
2

‘b’
)
(
3

‘c’
)
(
4

‘d’
)

 注:如果a的元素比b的多,则按照元素最少的那个来 

PS:有些没有列出来,不是实在用不着,就是后面类的重点,后面还有单独的博客!

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/12220.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论