Python程序给出了N值并通过使用循环来计算N NN NNN的值



在python i中,我通过str类型的数字,例如n ='6'。然后要使用for for loop

sum_n = n + nn + nnn

到现在为止,我尝试了下面的代码,但它正在丢弃错误。

" valueerror:base 10的int((的文字无效:''"

n = '6'
sum_n = 0
for i in range(4):
    n_itr = n*i
    print('printing n_itr', n_itr, type(n_itr))
    sum_n = int(sum_n) + int(n_itr)
    print('printing sum_n ', sum_n)

我希望该过程应为sum_n =(6 66 666(,输出为738。在此方面有任何帮助,了解错误以及我缺少的地方。

只需将范围从 range(4)更改为 range(1,4)

range(4)从0开始 i的值,其中 n_itr= n*i评估为空字符串,最终在 int(n_intr)上引起错误。

尝试这个单线:

sum_n = sum(map(int, [n*i for i in range(1,4)]))

输出

738

您需要一个更改代码:

for i in range(1,4):

int()方法将在尝试将''转换为整数表格时产生错误。

您可以这样更改它:

n = '6'
sum_n = 0
n_itr = ''
for i in range(3):
    n_itr = n_itr + n
    print('printing n_itr', n_itr, type(n_itr))
    sum_n = int(sum_n) + int(n_itr)
    print('printing sum_n ', sum_n)

给出此输出:

('printing n_itr', '6', <type 'str'>)
('printing sum_n ', 6)
('printing n_itr', '66', <type 'str'>)
('printing sum_n ', 72)
('printing n_itr', '666', <type 'str'>)
('printing sum_n ', 738)

最新更新