Python中配合遍历语法for产生被遍历对象的函数range()

选择题
以下代码的输出结果是
s = "Python"
for i in range(0,len(s),3):
print(s[-i],end=";")
A P;n;o;h;t;y;
B P;y;t;h;o;n;
C P;h;
D y;o

问题解析
0.快速理解
0.1.range()产生一个范围的语法:range(开始位置号,结束位置号,间隔)
例如:range(1,8,3)的结果是:[1,4,7]
0.2.字符串s取倒数第i个数语法:s[-i]
例如:s=[1,4,7],则s[-1]=7,s[-2]=4
0.3.特别注意:在Python中,for是遍历语法,不是循环语法,但可以实现类似循环的效果
这道题考察了Python中的for遍历结合range()函数输出列表元素。
1.for语句在Python里是遍历,range()函数遵循左闭右开的原则。for遍历结合range()函数可以实现在指定范围内迭代序列对象,从而实现c和Java中循环的效果。
2.题目中对字符串s进行遍历,range()函数指定了起始为0,结束为字符串s的长度,步长为3,结合for遍历,对应的i的值分别为:0和3。相应的,-i的值分别为0,-3。在Python的索引中,支持逆向(从右向左),即用负数表示索引,所以这里对应的字符分别是P和h。根据print()语句,指定本次输出和下一次输出的中间以";"作为本次的结尾。
3.本题详解:
A选项忽略了range()函数指定的步长,所以输出了原字符串对应序列的对应字符;
B选项不仅忽略了range()函数指定的步长,并且也忽略了用索引取列表元素时索引数字前的负号;
C选项是题目中代码的输出结果;
D选项可能是用了不同的索引表示,使得输出结果与题干中给的不同。

欢迎大家转发,一起传播知识和正能量,帮助到更多人。期待大家提出宝贵改进建议,互相交流,收获更大。辛苦大家转发时注明出处(也是咱们公益编程交流群的入口网址),刘经纬老师共享知识相关文件下载地址为:http://liujingwei.cn

答案与运行结果
正确答案是:C
图片:   

 

温馨期待
期待大家提出宝贵建议,互相交流,收获更大

猜你喜欢

转载自blog.csdn.net/liujingwei8610/article/details/121712343