~~函数基础(五):内置函数~~
进击のpython
内置函数
内置函数,就是python自带的函数,print()就是函数
函数嘛,那就跟我们自己创建的函数一样
想要用,先声明
都有什么函数呢?
woc???69个函数??这么多????
别着急啊,你仔细看就会发现,很多函数我们或多或少都用过一两次了
再加上还有些不主要的,其实正常的用的基本上没多少
咋的!就算是多,你不学啊!
P话不多说,开始搞黄色函数!
abs() # 求绝对值
all() # 传入可迭代的对象(列表),每个元素都是True,才返回True
any() # 传入可迭代的对象(列表),有元素是True,就返回True
ascii() # 返回对象的ASCII码
bin() # 输出数字二进制
bool() # 判断True&False 空的列表,集合,元组,字典,0,都是False
# bytearray
# 字符串是字符的集合(讲字符串的基本操作的时候说过)
# 所以你可以像操作列表(元素的集合)一样的操作字符串
# 但是字符串是不可变类型
# 也就意味着不可修改
# 那我要是真的想修改“中国”的“中”
# 怎么办呢?
# 那我们就要回归到字符的本质——字节
print(bytes("中国", encoding="gbk")) # b'\xd6\xd0\xb9\xfa'
# 那我们想修改中这个字,就是其实想要修改\xd6\xd0
# 但是无法直接修改
# 所以,可以通过 byteearray 将转换的字节变成一个列表
# 毕竟列表是可以修改的
print(bytearray("中国", encoding="gbk"))
# bytearray(b'\xd6\xd0\xb9\xfa')
# 接下来就可以修改了
a = bytearray("中国", encoding="gbk")
a[1] = 200
print(a)
# bytearray(b'\xd6\xc8\xb9\xfa')
print(a.decode("gbk")) # 秩国
# 这样就达到了修改的目的
callable() # 判断是否可以调用 现在用不上,到时候再说
chr() # 返回一个数字对应的ASCII字符
classmethod() # 面向对象,现在忽略
compile() # 忽略
complex # 复数,一般用不到
copyright() # 没用
credits() # 没用
delattr() # 面向对象,现在忽略
dict() # 生成一个空dict
dir() # 返回对象的可调用属性
divmod() # 返回除法的商和余数 divmod(5,2) 结果:(2,1)
# enumerate() # 返回列表的索引和元素
li = ["我", "是", "你", "爸", "爸"]
a = enumerate(li) # <enumerate object at 0x05679B98>
for i in a:
print(i)
# eval()
# 其实我们现在写的这些代码,在计算机里都是一个个的字符
# 然后python解释器将各种字符转换成各种类型,列表,字典
# 那我们要是想自己把字符转换成别的类型,怎么办呢?
name = ["我", "是", "你", "爸", "爸"]
f = open("text", "w")
f.write(str(name)) # 计算机只能写进去字符串,不能写进去列表
f.close()
f = open("text", "r")
s = f.read() # <class 'str'>
print(s[2]) # 结果:我 但是我想拿到的是 你 所以就可以用eval()函数
print(eval(s)[2]) # 结果:你 这样就是将字符串转换成列表,然后进行调用!
exec() # 把字符串格式的代码进行执行 exec('print("我是exec函数打印的")')
exit() # 退出程序
filter() # 对列表(可迭代对象)进行对象过滤
# for i in filter(lambda x:x>5,[2,4,6,8,10]):print(i) 输出:6 8 10
float() # 转换成浮点
format() # 没有
frozenset() # 把一个集合变成不可修改的
getattr() # 面向对象,现在忽略
globals() # 打印全局变量作用域里的值
hasattr() # 面向对象,现在忽略
hash() # hash函数
help()
hex() # 返回一个十进制的十六进制的表现形式
id() # 查看对象内存地址
input()
int()
isinstance() # 判断数据结构类型 isinstance(a,fronzenset)
issubclass() # 面向对象,现在忽略
iter() # 迭代器(讲了就明白了,凑弟弟)
len()
list()
locals()
map() # 我讲过!
max()
memoryview() # 一般人不用,你别艮 大神请忽略
min()
next() # 生成器用,现在忽略
object() # 面向对象,现在忽略
oct() # 返回十进制的八进制表示
open()
ord() # 返回ASCII的字符对应的十进制数
print()
property() # 面向对象,现在忽略
quit()
range()
repr() # 没什么用
reversed() # 列表反转
round() # 可以把小数进行四舍五入 round(10.15,1)
set()
setattr() # 面向对象,现在忽略
slice() # 没什么用
sorted()
staticmethod() # 面向对象,现在忽略
str()
sum()
super() # 面向对象,现在忽略
tuple()
type()
vars() # 面向对象,现在忽略
zip() # 拼接列表
# a = [1,2,3,4]
# b = ["a","b","c","d"]
# list(zip(a,b))
就这些东西,其实大部分就看出来
很大的一部分都是面向对象的
所以说,面向对象是函数的重中之重!
后面,才是真正的硬骨头!