python学习笔记,视频day16 17-内置函数

内置函数

 abs绝对值  print(abs(-1))===》1

all 所有的布尔值都是True为True,If the iterable is empty, return True.

  print(all([1,2,-1,""]))===》False,print(all([0,""]))===》False

any 任一布尔值为True则为True

bytearray

bytes 字符串转换成字节

# 定义一个变量,字符串保存到内存上unicode,硬盘上自己选择编码,编码最终结果是二进制
#中文utf-8对应3个字节
#编码
name="你好"
print(bytes(name,encoding="utf-8"))####b'\xe4\xbd\xa0\xe5\xa5\xbd'
#解码,用什么编码就用什么解码,默认解码是utf-8
# ascii不能编中文
print(bytes(name,encoding="utf-8").decode("utf-8"))####你好
chr  print(chr(97))####a
all  打印对象下有哪些方法,打印名字print(dir(all))####
divmod  
  #商和余数,eg:分页,一页有3条记录,还剩1条在单独一页
  print(divmod(10,3))####(3, 1)
eval
  #eval()将字符串中数据结果提取出来
  express="1+2*(3/3-1)-2"
  print(eval(express))###-1.0

hash 可hash的数据类型即不可变数据类型,不可hash的数据类型即可变类型
    hash是一种算法,得出哈希值,1.不管字符串长度多少,得出的哈希值长度是固定的;2.不能根据得到的哈希值反推;3.变量不变,hash值不变
    判断软件被篡改过程。网上下载一款软件,连同软件哈希值提供给对方,下载到本地用hash算法对软件进行hash校验,若hash值是一样,则意味着未被修改,安全
    print(hash("32444333333333333344444"))####-2091919439
help  print(help(all))#打印具体方法
bin、hex、oct
print(bin(10))#10进制->2进制###0b1010
print(hex(10))#10进制->16进制###0xa
print(oct(10))#10进制->8进制###0o12
isinstance  print(isinstance(1,int))##True,判断是不是这个类型
globals打印全局变量
name="近段时间发货单"
print(globals())####打印全局变量
#{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x0074D250>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, '__file__': 'C:/Users/pujialou/PycharmProjects/python_day10_1/day1-/16.py', '__cached__': None, 'name': '近段时间发货单'}
name="近段时间发货单"
def test():
    name="颜值高"
    # print(globals())
    print(locals())
test()
#结果
#{'name': '颜值高'}

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')]

max和min

  1.只要可以迭代就可以使用;2.每个元素从左往右进行比较;print(max("a11","b3","c2")),输出结果是c2;3.不同类型不可进行比较,eg:max("a11","b3",10)会报错

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

整理:

#1、简单使用
l=[1,2,-100,33]
print(max(l))####33

 

#字典
dic={"age1":18,"age2":10}
#比较keys
print(max(dic))####age2
#,比较values,但是不知道是哪个keys
print(max(dic.values()))####18
#有keys,values
print(max(zip(dic.values(),dic.keys())))####(18, 'age1')
#max可以传处理方法,people进行for循环,取出每一个元素给lambda取处理,lambda给出返回值让max去比较
#max(people)表示比较每一个字典,会报错;目前要比较的是age对应的值,故把每个字典取出来,取age对应的values
#max(people,key=lambda p:people["age"])
print(max(people,key=lambda dic:dic["age"]))
#相当于
# ret=[]
# for item in people:
#     ret.append(item["age"])
#结果
# {'name': 'alex', 'age': 100}

  

  

 

05 python s3 day17 其他内置函数.ev4未看








 
 

猜你喜欢

转载自www.cnblogs.com/ppll/p/11588470.html
今日推荐