python基础学习——函数(三):内置函数

1  abs: 取绝对值

2  all:序列中每一个元素作布尔判断,部分元素为空、none、0为False

3  any:序列中有一个元素为真,则为True

4  bool:空、none\0为假,其他为真

5  bytes:编码转换为二进制

6  decode解码原则:用什么样的方式编码,就用对应的方式解码

name="你好"
print(bytes(name,encoding="utf-8"))
print(bytes(name,encoding="utf-8").decode("utf-8"))
print(bytes(name,encoding="gbk").decode("gbk")) #ascii不能编码中文

7  chr:在ascii表中查找十进制数字对应的位置,并打印指定的对象

8  divmod:取商得余数,常用于分页功能

print(divmod(10,3)) #10除于3

9  eval:将字符串的数据结构提取出来

10  express:可以把字符串中的数学运算和表达式进行运算 

express="1*2+(10-6)-3/2"
print(eval(express))

11  hash:可hash的数据类型为不可变的数据类型,长度一致,不可反推出原始数据,常用于hash校验:数据过程中是否被改动过

12  help(all)、dir(all)打印指定对象的操作的解释说明

13  bin/hex/oct:十进制转换为二进制、十六进制和八进制的转换 

  print(bin(10))#10进制->2进制###0b1010
  print(hex(10))#10进制->16进制###0xa
  print(oct(10))#10进制->8进制###0o12 

14  golbals打印全局变量,locals打印当前层级的变量

15  zip拉链方法:处理的序列为可迭代的数据类型:列表、元组和字符串 

#位置从前往后,若没有对应值则不输出
print(list(zip(("a","b","c"),(1,2,3))))####[('a', 1), ('b', 2), ('c', 3)]
p={"name":"alex","age":18,"gender":"none"}
print(list(zip(p.keys(),p.values())))
####[('name', 'alex'), ('age', 18), ('gender', 'none')]
print(list(zip(["a","b"],"124546")))####[('a', '1'), ('b', '2')]

16  max&min

   1) 不同数据类型不能比较

   2) 每个元素间进行比较时,是从每个元素的第一个位置依次比较,如果第一位元素分出大小,则后面的不需要继续比较,直接得出这个元素的对应的值   

ll=["a11","b12","c11"]
print(list(max(ll)))
li=[(5,"a"),(1,"b"),(3,"u"),(4,"d")]
print(list(max(li)))####[5, 'a']
#取值最大年龄及年龄值
ll={"age1":10,"age2":50,"age3":33,"age4":20}
print(max(zip(ll.values(),ll.keys())))
#(50, 'age2')

   3)复杂用法

#max(people)表示比较每一个字典,因为字典为不可迭代对象,所以会报错。故要把字典中的每个元素取出来,取出age这个key以及age对应的values
print(max(people,key=lambda dic:dic["age"]))
# for循环相当于
# ret=[]
# for i in people:
#     ret.append(i["age"])
# print(ret)

17  pow幂次方

print(pow(3,4,2)) #3**4%2

18  reversed反转数据

l=[1,3,5,2]
print(list(reversed(l)))

[2, 5, 3, 1]

19  round四舍五入

20  slice切片

l="hello"
s1=slice(1,5,2) #1 为起始位置。5为终止位置不包含,2为步长
print(l[s1])
结果:el

21  sorted排序:同一数据类型

方式一:
people=[
    {"name":"alex","age":1000},
    {"name":"CC","age":10000},
    {"name":"nana","age":999},
    {"name":"XX","age":18},
]

print(sorted(people,key=lambda dic:dic["age"]))

方式二:
name_dic={
    "nana":999,
    "cc":123,
    "KK":333

}

print(sorted(zip(name_dic.values(),name_dic.keys())))

22  type判断数据类型:根据不同的数据类型去做if判断处理

msg="123"
if type(msg) is str:
    msg=int(msg)
    res=msg+1
    print(res)

猜你喜欢

转载自www.cnblogs.com/xucuiqing/p/11657673.html