Python 基础之常用内置函数
1.常用内置函数
(1)abs 绝对值函数
intvar = -9
res = abs(intvar)
print(res)
(2)round 四舍五入 (n.5 n为偶数则舍去 n.5 n为奇数 ,则进一)
奇进偶不进,只有n.5的情况下发生
a = 5.34 #5
print(round(a))
a = 6.5 #6
print(round(a))
a = 5.5 #6
print(round(a))
a = 6.56 #7
print(round(a))
a = 17.51 #18
print(round(a))
(3)sum 计算一个序列的和
#例:
lst = [1,2,3,4,5,6,7,8]
res = sum(lst)
print(res) #36
#相当于如下程序:
total = 0
for i in lst:
total += 1
print(total)
(4)max 获取一个序列里面的最大值
#例:
lst = [1,2,3,4,5,6,7,8]
res = max(lst)
print(res) #8
#相当于如下程序:
lst.sort()
print(lst)
maxvar = lst[-1]
minvar = lst[0]
print(maxvar) #8
print(minvar) #1
(5)min 获取一个序列的最小值
#例:
lst = [1,2,3,4,5,6,67,7]
res = min(lst)
print(res) #1
#例2:
# 按照年龄.知道最小的元组
tup = [("one",21),("two",30),("three",22),("four",80)]
#自定义函数
def func(n):
return n[-1]
res = min(tup,key=func)
print(res) #("one",21)
把tup当中的每一个元素拿到func中进行处理,处理的结果是
("one",21) => 21
("three",22) => 22
("two",30) => 30
("four",80) => 80
return ("one",21)
(6)pow 计算某个数值的x次方
#如果是三个参数,前两个先运算(谁的几次幂),运算的结果根第三个参数取余
#例:
res = pow(2,3)
print(res) #8
res = pow(2,3,3)
print(res) #2
res = pow(2,3,7)
print(res) #1
res = pow(2,3,5)
print(res) #1
(7)range 产生指定范围数据的可迭代对象
#例1:
res = range(3)
for i in res:
print(i)
#例2:
for i in range(5,14):
print(i)
#例3:
for i in range(10,0,-1):
print(i)
(8)bin 将10进制数据转化为二进制
res = bin(4)
print(res)
(9)oct 将10进制数据转化为八进制
res = oct(8)
print(res)
(10)hex 将10进制数据转化为16进制
res = hex(16)
print(res)
#分析:
res = int(0o10)
0o => 0~7 7+1 = 10 => 8
0x => 0~f f+1 = 10 => 16
0b => 0~1 1+1 = 10 =>2
(11)chr 将ASCII编码转换为字符
res = chr(97)
print(res)
(12)ord 将字符转换为ASCII编码
res = ord("a")
print(res)
(13)eval 将字符串当做python代码执行
只能执行一个单行的语句,不能完成复杂的代码
res = "print('好浪')"
eval(res)
(14)exec 将字符串当作python代码执行(功能强大)
res = '''
for i in range(10):
print(i)
'''
res = "abb = 19"
#exec(res) #可以执行 eval(res) 有局限性
#print(abb)
也就是exec不能防注入
sql 注入 = > 是一种网站攻击的方法
delete from 数据库 where id = 90
drop 数据库
...
...
要小心使用exec或eval 防止sql注入
print("<=======>")
(15)repr 不转义字符输出字符串
strvar = 'abc\ndeff'
print(strvar)
res = repr(strvar)
print(res)
(16)input 接收输入字符串
# res = input("先生,你好")
#print(res)
(17)hash 生成哈希值
#会产生一个具有固定长度的唯一值,这个值不能反向破解
#(1) 比对两次密码是否一致
#(2) 比对两个文件的内容是否一致
#例1:
strvar = 'abc'
res = hash(strvar)
print(res)
#例2:
with open("1.txt",mode="r",encoding="utf-8") as fp:
res1 = fp.read()
with open("1.txt",mode="r",encoding="utf-8") as fp:
res2 = fp.read()
#比对两个的文件内容是否一致,使用哈希值
#如果两个哈希值一样,代表两个文件的内容是一模一样的
res = hash(res1)
print(res)
res = hash(res2)
print(res)
#最后两个哈希值相同