编程要求
本关的编程任务是补全Book.py文件中的判断语句部分,具体要求如下:
当输入一个列表时,填入将列表List转换为迭代器的代码
填入用next()函数遍历迭代器IterList的代码
本关涉及的代码文件ListCalculate.py的代码框架如下:
List = []
member = input()
for i in member.split(','):
result = i
List.append(result)
#请在此添加代码,将List转换为迭代器的代码
#********** Begin *********#
#********** End **********#
while True:
try:
#请在此添加代码,用next()函数遍历IterList的代码
#********** Begin *********#
#********** End **********#
result = int(num) * 2
print(result)
except StopIteration:
break
测试说明
本文的测试文件是ListCalculate.py,具体测试过程如下:
平台自动编译生成ListCalculate.exe;
平台运行ListCalculate.exe,并以标准输入方式提供测试输入;
平台获取ListCalculate.exe输出,并将其输出与预期输出对比。如果一致则测试通过,否则测试失败。
以下是平台对src/step4/ListCalculate.py的样例测试集:
预期输入:
5,6,7,8,9
预期输出:
10
12
14
16
18
结果:
#创建一个空列表
List = []
#读取键盘输入的成员
member = input()
#循环遍历用逗号分隔成员
for i in member.split(','):
#分隔后的成员元素保存到result中
result = i
#把成员元素添加到list列表中
List.append(result)
#请在此添加代码,将List转换为迭代器的代码
#********** Begin *********#
IteratList = iter(List)
#********** End **********#
while True:
try:
#请在此添加代码,用next()函数遍历IterList的代码
#********** Begin *********#
num = next(IteratList)
#********** End **********#
#遍历到iteratlist元素乘2然后转换为int类型保存到result中
result = int(num) * 2
#打印result变量的值
print(result)
#迭代完毕后容易引发StopIteration,所以这里捕获异常
except StopIteration:
break