>> "):-6ren">
gpt4 book ai didi

python - 使用生成器模拟输入

转载 作者:太空宇宙 更新时间:2023-11-03 16:31:02 25 4
gpt4 key购买 nike

下面的代码不模拟输入,有没有办法用生成器来做到这一点?

    inputlist = [5,1,2,3,4,5,6]

def mock_input(dummy_prompt=">>> "):
global inputlist
for u in inputlist:
yield str(u)

__builtins__.input = mock_input

l=[]
x= input()
for u in range(int(x)):
l.append(int(input()))

if l==inputlist[1:]:
print("bravo")

错误是 x 是生成器而不是字符串。

我是否必须使用全局变量创建自己的生成器,或者我错过了语法中的某些内容。

最佳答案

好的,谢谢,我错过了生成器实例化的时刻。

def gg(l):
for u in l:
yield str(u)


def mockinput(thelist):
bob = gg(thelist)
__builtins__.input = lambda prompt="toto": str(next(bob))


inputlist = [6,1,2,3,4,5,6]
mockinput(inputlist)

l=[]
for u in range(int(input())):
l.append(int(input()))
print(l)

if l==inputlist[1:]:
print("bravo")

所以我需要分两步进行,因为我不需要任何全局变量

关于python - 使用生成器模拟输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37595414/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com