Python 无法使部门在我的程序中工作
我正试图让我的python程序生成一个除法表,当我试图运行它时,我的终端总是给我这个错误: 文件division table.py,输入一个数字:4输入一个开始:0输入一个 结束:100回溯(最近一次调用last):File division table.py, 第24行,在 w=tablep()文件division table.py,第10行,在tablep中 s=str(n)+“/”+str(i)+“=”+str(n//i)ZeroDivision错误:整数除法或模零除法 以下是节目:Python 无法使部门在我的程序中工作,python,Python,我正试图让我的python程序生成一个除法表,当我试图运行它时,我的终端总是给我这个错误: 文件division table.py,输入一个数字:4输入一个开始:0输入一个 结束:100回溯(最近一次调用last):File division table.py, 第24行,在 w=tablep()文件division table.py,第10行,在tablep中 s=str(n)+“/”+str(i)+“=”+str(n//i)ZeroDivision错误:整数除法或模零除法 以下是节目: de
def tablep():
n=int(input("Enter a Number:"))
start=int(input("Enter a start:"))
end=int(input("Enter an end:"))
file=open("div-table.txt","a")
if start<end:
for i in range(start,end+1):
s = str(n) + "/" + str(i) + "= " + str(n//i)
file.write(s)
file.write("\n")
print(n,"/",i,"=",n//i)
elif start>end:
for i in range(start,end,-1):
s = str(n) + "/" + str(i) + "= " + str(n // i)
file.write(s)
file.write("\n")
print(n, "/", i, "=", n // i)
file.close()
w = tablep()
def tablep():
n=int(输入(“输入一个数字”))
start=int(输入(“输入开始:”)
end=int(输入(“输入结束:”)
文件=打开(“div table.txt”、“a”)
如果startend:
对于范围内的i(开始、结束,-1):
s=str(n)+“/”+str(i)+“=”+str(n//i)
文件。写入
文件。写入(“\n”)
打印(n,“/”,i,“=”,n//i)
file.close()文件
w=表P()
我不知道这个错误是什么意思。我使用的是python版本2.7.18和python版本3.8.5。我该如何着手让这个计划发挥作用?谢谢您的时间。不可能被0除,start不能等于0不可能被0除,start不能等于0Python的除法运算符是单正斜杠,而不是双正斜杠。因此,
n/i
而不是n//i
@TARN4T1ON,你错了/
是int除法。这段代码对我来说很有用(当然我不需要读取文件)。@TARN4T1ON——实际上,双斜杠是有效的,用来表示整数而不是浮点除法。我在Python2.7中尝试了该程序,但它的工作方式却不确定。你真的应该包含整个错误消息,这会让问题变得很明显。为什么要在开始时输入0?Python的除法运算符是单正斜杠,而不是双正斜杠。因此,n/i
而不是n//i
@TARN4T1ON,你错了/
是int除法。这段代码对我来说很有用(当然我不需要读取文件)。@TARN4T1ON——实际上,双斜杠是有效的,用来表示整数而不是浮点除法。我在Python2.7中尝试了该程序,但它的工作方式却不确定。你真的应该包含整个错误消息,这会让问题变得很明显。为什么要输入0作为开始?我如何让程序使我的表以“4/0=0”开始,以“4/100=0.04”结束?谢谢。“4/0”不等于0,“4/0”未定义。你可能想从1开始。我从1开始,而不是0,现在可以了,我只是不知道你不能用4除以0。我知道你可以把4除以0。谢谢大家。我如何让程序使我的表格以“4/0=0”开始,以“4/100=0.04”结束?谢谢。“4/0”不等于0,“4/0”未定义。你可能想从1开始。我从1开始,而不是0,现在可以了,我只是不知道你不能用4除以0。我知道你可以把4除以0。谢谢大家。