首页 > 其他分享 >day15学习分享 内置参数

day15学习分享 内置参数

时间:2022-10-14 17:14:39浏览次数:58  
标签:__ 内置 迭代 对象 res day15 print 分享

目录

今日内容概要

  • 作业讲解
  • 重要内置参数
  • 常见内置参数
  • 可迭代对象
  • 迭代器对象
  • for循环内部原理
  • 异常处理

今日内容详细

作业讲解

重要内置函数

1.zip() 拉链函数
# zip 将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。
l1 = [11, 22, 33, 44, 55]
l2 = ['jason', 'kevin', 'oscar', 'jerrry', 'tony']
l3 = [1, 2, 3, 4, 5]
res = zip(l1, l2, l3)
# [(11, 'jason', 1), (22, 'kevin', 2), (33, 'oscar', 3), (44, 'jerrry', 4), (55, 'tony', 5)]
print(list(res)) 
 l1 = [11, 22, 33]
 l2 = ['jason', 'kevin', 'oscar', 'jerry', 'tony']
 l3 = [1, 2, 3, 4]
 res = zip(l1, l2, l3)
 print(list(res))  # [(11, 'jason', 1), (22, 'kevin', 2), (33, 'oscar', 3)]
    如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表
 
2. filter() 
# filter()函数用于过滤序列,过滤掉不符合条件的元素,返回符合条件的元素组成新列表。
l1 = [11, 22, 33, 44, 55, 66, 77, 88]
res = filter(lambda x: x > 40, l1)
print(list(res)) 
# [44, 55, 66, 77, 88]

筛选出序列中为奇数的元素:
def is_odd(n):
    return n%2 == 1 
lst1 = filter(is_odd,[1,2,3,4,5,6,7,8,])
# [1, 3, 5, 7]

3.sorted
# sorted()函数可以对可迭代对象进行排序,并且可以人为指定排序的依据以及方式。
l1 = [21, 12, 53, 64, 76, 32, 11, 22]
res = sorted(l1)
print(res)  # 默认升序

常见内置函数

1.abs() 绝对值
  print(abs(-100))  # |-100| = 100

2.all() 所有数据值对应的布尔值为True结果才是True 佛iu则返回False、
 print(all([0, 1, 2, 3]))  # False
 print(all([1, 2, 3]))  # True 

3.any() 
# 所有数据值对应的布尔值有一个为True就是True否则返回False
 print(any([0, None, '', 1])) # True
 print(any([0, None, '']))  # False

4.bin() oct() hex() int() # 二进制 八进制 十六进制 十进制

5.bytes() 转换成bytes类型
  w1 = '啊魏今天也很帅'
  print(w1.encode('utf8'))
  print(bytes(w1,'utf8'))
# 转换成二进制码

6.callable() 判断名字是否可以加括号调用
  name = 'jason'
  def index():
    print('from index')
  print(callable(name))  # false
  print(callable(index)) # True
    
 7.chr() ord() 基于ASCII码表做数字与字母的转换  大写英文65-90 小写 97-122
  print(chr(65))   # A
  print(ord('A'))   # 65

 8.dir() 返回括号内对象能调用的名字
   print(dir('hello'))

 9.divmod() 元组 第一个数据为整除数 第二个是余数
   res = divmod(100, 2)
   print(res)  #  (50, 0)
   res = divmod(100, 3)
   print(res)
"""
总数据     每页展示的数据     总页码
100         10              10
99          10              10
101         10              11
"""
  page_num, more = divmod(9999, 20)
  print(divmod(99, 10))  #(9, 9)
  if more:
        page_num += 1
  print('总页码为', page_num)  # 总页码为:500
  
  10. enumerate()
  # 一般用于for循环。enumerate()在遍历中可以获得索引和元素值。
    list = ['python', 'java', 'c']
    
    for index,key in enumerate(list):
        print(index,key) 
        0 python
	    1 java
	    2 c
    
   11.eval() exec() 能够识别字符串中的python并执行
	s1 = 'print("哈哈哈")'
     eval(s1)  # 哈哈哈
     exec(s1)  # 哈哈哈
    s2 = 'for i in range(100):print(i)'
    eval(s2) # 报错 只能识别简单的python代码 具有逻辑性的都不行
    exec(s2)  # 可以识别具有一定逻辑性的python代码
    
    12.hash() 哈希加密
    print(hash('jason'))
    
    13. id() input() isinstance()
   # id() 函数用于获取对象的内存地址
     input()  提示用户输入信息 实现人机交互
     isinstance() :
     # isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type()。
     
    14.map() max() min() 
    # 映射函数 求最大值 求最小值
    15.open()  
    函数用于打开一个文件,创建一个 file 对象,相关的方法才可以调用它进行读写。
    
    16.pow()  幂指数(次方)
    print(pow(2, 2))  # 4
	print(pow(2, 3))  # 8
	print(pow(2, 4))  # 16
    
    17.range() 范围
    18.round() 四舍五入\但是98.5 5不会进1
    print(round(98.3))  # 98
    print(round(98.6))  # 99
    
    19.sum()  #求和
    print(sum([11, 22, 33, 44, 55, 66])) # 231
    20.zip()

可迭代对象

1.可迭代对象
	对象内置有__iter__方法的称为可迭代对象
   """
   1.内置方法 通过点的方式能够调用的方法
   2.__iter__ 双下iter方法
   """
2. 可迭代对象的范围
	不是可迭代对象
    	int float bool 函数对象
     是可迭代对象
        str list dict tuple set 文件对象
 """
 可以对list、tuple、dict、set、str等类型的数据使用for...in...的循环语法从其中依次拿到数据进行使用,我们把这样的过程称为遍历,也叫迭代。
 """
3. 可迭代的含义
  """
	迭代:更新换代(每次更新都必须依赖上一次的结果)
		eg:手机app更新
	"""
	可迭代在python中可以理解为是否支持for循环

迭代器对象

1.迭代器对象
	是由可迭代器对象调用__inter__方法产生的	迭代器对象判断的本质是看是内置有__inter__和__next__
2.迭代器对象的作用
	提供了一种不依赖于索引取值的方式
    正因为有迭代器的存在 字典集合才可以被for循环
3. 迭代器对象实操
  s1 = 'hello'  # 可迭代对象
  res = s1.__iter__() # 迭代器对象
  print(res.__next__())  #迭代取值 for循环本质
    一旦__next__取不到值 会直接报错
4.注意事项
    可迭代对象调用__iter__会成为迭代器对象
    迭代器对象如果还调用__iter__不会有任何变化 还是迭代器对象本身

for循环本质

for 变量名 in 可迭代对象:
    循环体代码
"""
1.先将in后面的数据调用__iter__转变成迭代器对象
2.依次让迭代器对象调用__next__取值
3.一旦__next__取不到值报错 for循环会自动捕获并处理
"""

异常捕获/处理

1.异常
	异常就是代码运行报错 行业俗语叫bug
	代码运行中一旦遇到异常会直接结束整个程序的运行 我们在编写代码的过程中药尽可能避免
2.异常分类
	语法错误
    	不允许出现 一旦出现立刻改正 否则提桶跑路
	逻辑错误
    	允许出现的 因为它一眼发现不了 代码运行之后才可能会出现
3.异常结构
	错误位置
 	错误类型
 	错误详情

标签:__,内置,迭代,对象,res,day15,print,分享
From: https://www.cnblogs.com/wei0919/p/16792239.html

相关文章

  • 常见内置函数及可迭代对象
    目录重要内置函数常见内置函数可迭代对象迭代器对象for循环的本质异常捕获/处理重要内置函数zipl1=[11,22,33,44,55]l2=['jason','kevin','oscar','jerry',......
  • 数据库内置表的研究 & Mysql的文件操作
    数据库内置表的研究+通过命令写shell0x00SQLite内置表的研究SQLITE_MASTER表是一张SQLite数据库的伴生表,该表会自动创建,是用来存储数据库的元信息的,如:表(table),索引......
  • 10月14日内容总结——内置函数、可迭代对象和迭代器、异常捕获与处理
    目录一、重要内置函数1、zip2、filter3、sorted二、常见内置函数(了解)1、abs2、all3、any4、bytes5、bin、oct、hex、int6、callable7、chr、ord8、dir9、divmod10、enumera......
  • 报告分享|2022年中国生命科学与医疗行业智信未来调研结果
    报告链接:http://tecdat.cn/?p=29218在受到严格监管的生命科学与医疗行业,外部利益相关者的重要性排在前列,最重要的利益相关者是政府部门和监管机构 医疗专业人员对于......
  • 报告分享|2022年全球人工智能产业研究报告
    报告链接:http://tecdat.cn/?p=29228伴随全球数字化进程的加快,人工智能成为引领未来世界发展的关键技术。近年来,各国政府、科研教育机构、科技企业及专家学者纷纷加入到推......
  • 内置函数
    重要内置函数1.map()映射可以结和匿名函数一起用l1=[12,21,26,31,40]res=map(lambdax:x+6,l1)#map相当于for循环l1列表把列表里的数据传给x(相当于形参)......
  • 2.1寸旋钮屏应用于智能马桶方案分享
    近几年随着人们生活水平和消费能力的提升、智能技术在家居生活中的应用普及,智能马桶的市场规模正在逐步扩大,但我国智能马桶起步较晚,相较于日本接近90%和韩国约60%的普及率,......
  • Python 3.9 性能优化:更快的 list()、dict() 和 range() 等内置类型
    Python的3.9.0版本正在开发中,计划在2020-10-05发布final版本。官方在​​changelog​​中披露了很多细节,其中有一项“vectorcall”特性是最容易被接受的,本文打算带......
  • 一篇文章掌握 Python 内置 zip() 的全部内容
    一篇文章掌握Python内置zip()的全部内容zip()是Python中最好用的内置类型之一,它可以接收多个可迭代对象参数,再返回一个迭代器,可以把不同可迭代对象的元素组合起来。......
  • 工作四年,分享50个让你代码更好的小建议
    前言工作四年,看过很多思考不够深入的代码,因此写一下总结吧,50个让你代码更好的小建议。其中的一些点,我以前的文章也写过啦,这次主要汇总一下。希望大家日常写代码多点思考,多点......