如何使用for循环获取用户名并将其输出三次
Python代码修正及运行解释
原代码存在的问题
range()函数仅支持传入整数参数,你传入了用户输入的字符串类型的name变量,运行时会触发类型错误- Python语法要求for循环的执行代码块必须缩进,你写的
print(name)没有加缩进,运行时会触发语法错误
修正后的完整代码
name = input("What is your name?") # range(3)会生成[0,1,2]的整数序列,控制循环执行3次 for x in range(3): print(name)
如果不需要用到循环计数的变量x,也可以用Python常用的下划线作为废弃变量占位符,写法更规范:
name = input("What is your name?") for _ in range(3): print(name)
代码运行处理过程
- 首先执行
input("What is your name?"),控制台会先打印提示文本,等待用户输入内容,用户输入完成按下回车后,输入的内容会以字符串格式赋值给name变量 - 接下来执行for循环语句,
range(3)会生成包含0、1、2三个整数的可迭代序列,for循环会依次取出序列中的每一个值赋值给临时变量,每完成一次取值就执行一次循环块内的代码 - 循环块内仅执行
print(name)操作,把用户输入的姓名打印到控制台,三次循环结束后程序运行完成,刚好输出三次姓名
内容的提问来源于stack exchange,提问作者Lumiscnt1
相关产品推荐
相关产品推荐

