第一个错误的地方是for i in str(n),input()输入的是整型,循环增加应该用for in range(n),str(n)并不能起到顺序增加的作用。
第二个错误的地方是print('1到N求和结果:'.format(sum)),适用format输出时需要在输出的位置用大括号{}占据空位。
python用户输入一个整数N,计算并输出1到N相加的和正确的程序示例是:
扩展资料
Python 内置函数range() 用法介绍:
python range() 函数可创建一个整数列表,一般用在 for 循环中。
1、函数语法:range(start, stop[, step])
2、参数说明:
start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5;
step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)。
3、实例:
range(10)
代表从 0 开始到 10[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
看来你用的是python3,python3的input函数是返回字符串的。
所以你的n是字符串,循环有问题。
如果想要正确就int处理
n = int(input("请输入整数N:"))