请各位看一看我写的哪里不对

描述
在键盘上输入一个整数,输出1到这个整数之间所有偶数之和。
输入
使用input()函数完成输入。
输出
使用print()函数完成输出

我写的
x=input("")
sun=0
if i in rsnge(2,x+1,2)
sum=sum+i
print(i,sum)

第三行, if 改为for, rsnge 改成range,最后添加冒号:
第四行,需要进行缩进

x = int(input())
sum = 0
for i in range(2, x + 1, 2):
    sum += i;
print(i, sum)

1、input函数返回的是字符串,所以需要转为int
2、rsnge拼写错,应该是range
以下是我提供的示例代码:

x = input('请输入一个正整数:')
if x.isdigit() and int(x) > 0:
    x = int(x)
    sum = 0
    for i in range(0, x + 1, 2):
        sum += i
    print(f'总和 {sum}')
else:
    print('输入错误!')

  • 你可以看下这个问题的回答https://ask.csdn.net/questions/7759112
  • 这篇博客你也可以参考下:python进阶#1 print() 基本数据类型和变量 条件判断 input()
  • 除此之外, 这篇博客: python 输入 input() 与输出 print()中的 2、输入数字 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 输入的任何数据都会被当作字符串返回,所以如果输入数字的话还需要配合 eval()int()float() 函数做进一步转换。

    a_digit = input("随便输入一个数字试试:")  # 输入 "123.456"
    print(type(a_digit))  # <class 'str'>
    a_digit = eval(a_digit)  # 使用 eval 解析 也可以使用 float() 函数转换
    print(a_digit)  # 123.456
    print(type(a_digit))  # <class 'float'>
    运行结果:
    """
    随便输入一个列表试试:123.456
    <class 'str'>
    123.456
    <class 'float'>
    """