首页 > 其他分享 >生成器

生成器

时间:2023-03-07 19:45:23浏览次数:24  
标签:index 10 res 生成器 123 print

生成器是迭代器的一种

面试小重点:

""""
函数中如果存在yield关键字,在调用函数之前,还是一个普通函数,一旦调用函数,就把函数变成了生成器(迭代器)

****************
生成器一定是迭代器
迭代器不一定是生成器
***************
"""
res=index()  # 此时就是生成器,并不会运行函数
ret=res.__next__()   # 代码遇到yield关键字,会停住,夯住
ret=res.__next__()  # 再次执行__next__,代码从上一次被停住的位置继续往下执行
ret=res.__next__()
# print(ret)

yield传值:

第一次取值可以用res.sent(None)代替

yield与return的区别

生成器的表达式

笔试题:

前面的只会屯着但不运行,直到循环到最后一次才会一起执行

 
 print(abs(10))
 print(abs(-10))  # 绝对值

    
 l = [1, 2, 3, 0]
 print(all(l))  # True
 print(any(l))

arr = range(10)


myslice = slice(5)    # 设置截取5个元素的切片



"""
    100条数据  10条  10页
    99条      10    10页
    101条      101  11
"""

 page, more=divmod(100, 10)
 page, more=divmod(99, 10)
 page, more=divmod(2005, 10)
 if more:
     page += 1
 print(page)

# res="""print('hello world')""" #
res="""
# 这是注释
for i in range(10):
    print(i)
""" #
# eval(res) # 识别简单的python代码
# exec(res)

# if type(123) is int:
#     print('123')
# print(type('123') is int)  # 判断数据类型的
# print(isinstance('123', int))
# print(isinstance(123, int))
# print(isinstance('123', str))
# print(isinstance([1,2,3,4], list))
# print(isinstance({'a':1}, dict))



# print(chr(65))
# print(chr(97))  # 根据ASCII码表,填入对应的十进制,返回对应的字符
# print(ord('A'))
# print(ord('z'))  # 根据ASCII码表,填入对应的字符,返回对应的十进制



# l = [10, 20, 30 ,40, 50]
# print(sum(l))  # 求和



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


s = '你好啊'
# res=s.encode('utf-8')
# print(res)
# ret = res.decode('utf-8')
# print(ret)
# res=bytes(s, 'utf-8')
# print(res)
# print(str(res, 'utf-8'))

def index():
    print('from index')

# print(callable(index))  # 查看是否能够被调用



'''健壮性'''
# res=callable(index)
# if res:
#     index()
# else:
#     ''''''

# def func(name, age):
#     print(locals()) # {'name': 1, 'age': 2}
# func(1, 2)

# 复数,而不是负数
# 1+2j

# 四舍五入
print(round(3.4))
print(round(3.5))
print(round(3.6))

 

标签:index,10,res,生成器,123,print
From: https://www.cnblogs.com/whxx/p/17189345.html

相关文章

  • MP 代码生成器工具类
    Mybatis-Plus代码生成器工具类对MP的代码生成器写一个简单的工具类:publicclassMain{publicstaticStringscanner(Stringtip){Scannerscanner=......
  • 日报周报月报工作总结生成器「智能文案生成器」
    ​在职场上,尤其是互联网公司里,“写周报”是一件麻烦的事情。理想的工作环境下,写周报能让工作内容透明化,并有助于总结工作经验和办事方法。但现实情况往往没那么理想。......
  • EF7数据库提供者的自定义值生成器
    本文将讲解提供者使用值生成器的原理。因代码太多,本文只摘要重要代码,并且删除了代码中的注释。如果您不了解,如何使用EF的值生成器?见这篇文章:《EF7创建模型值生成篇》?SqlS......
  • python - 生成器与迭代器
    2、生成器的用法#生成器的作用是节省空间,生成器就是迭代器的一种#defindex():#print('index')#yield123#yield后面如果没有加参数会打印none#......
  • lterator迭代器-Generator生成器
    什么是迭代器 迭代器iterator,使用户在容器对象(container,例如链表或数组)上遍访的对象,使用该接口无需关心对象的内部实现细节。他就跟数据库中的光标,迭代器最早出现在1......
  • Book-深入设计模式-生成器模式
    Book-深入设计模式-生成器模式https://refactoringguru.cn/design-patterns/builder生成器模式亦称:建造者模式、Builder生成器模式是一种创建型设计模式,使你能够分步......
  • ES6-ES11 生成器函数的实例(解决回调地狱问题)
    原视频<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><titl......
  • ES6-ES11 生成器函数声明与调用
    原视频<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title......
  • 八、MybatisPlus的代码生成器示例
    引入依赖<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.5.1</version></dependency><dependency> <......
  • Blender插件:水滴生成器
    推荐:将 ​​NSDT场景编辑器​​ 加入你的3D开发工具链。​1、官方介绍:适用于Blender3.1及更高版本的全过程液滴生成器,有以下特性:完全程序化:所有的几何体都是100%程序化地......