0

所以基本上我要做的就是从一组数字中取出第三个和第四个数字:

# Number Set
num_set = (28,54,79,37,2,9,0)

并将它们分开(79 和 37),这是我编写的代码:

# Division of third and fourth digits
# Seperating the digits
div_num = ((num_set[2,3]))
print("we are going to divide", div_num)
ans = (divmod(div_num))
print("the answer for 79 divide by 37 is", ans)

这给了我错误

“TypeError:元组索引必须是整数或切片,而不是元组”

任何帮助,将不胜感激 !谢谢

4

2 回答 2

0

你想要的是替换这行代码

ans = (divmod(div_num))

和:

ans = divmod(num_set[2], num_set[3])

您不需要div_num删除它的所有引用。


为什么你会得到你的错误?

num_set[2,3]与 相同num_set[(2,3)]。当元组应该是整数或切片时,您正试图通过元组来索引元组。


代码

ans = divmod(num_set[2], num_set[3])
print("the answer for 79 divide by 37 is", ans)
于 2020-03-28T11:28:13.907 回答
0

我建议不要使用 word set,因为它是 python 中的一种类型

使用 f 弦

num_list = [28, 54, 79, 37, 2, 9, 0]

n, p = num_list[2:4]
print(f"we are going to divide {n} by {p}")
q, r = divmod(n, p)
print(f"the answer for {n} divide by {p} \
is {q} and a remainder of {r}")

编辑: [2:4]是 4-2=2 个元素的切片。

当一个函数返回多个项目时,您可以将它们分配给变量。

f-strings(以 为前缀的字符串f)将用它们的值替换大括号之间的变量。

于 2020-03-28T13:04:03.577 回答