3 回答
TA贡献1820条经验 获得超9个赞
模运算符%对这些情况很有用——它代表“除法后的余数”。所以, 66 % 10 = 6, 或73 % 12 = 1, 或21 % 7 = 0.
在您的特定情况下,您可以使用它单独制作一堆行标题,然后将它们连接在一起:
def getHSpace(xMax):
return " " + ''.join(str(i % 10) for i in range(xMax))
这为包含和不包含之间的每个数字生成str(i % 10)(即,一个数字,但作为字符串)。然后,它使用空字符串作为分隔符将它们连接在一起。0xMax
TA贡献1982条经验 获得超2个赞
你也可以做模(%)。
def getHSpace(xMax):
hspace = ' '*3
num='0123456789'
if xMax >= 10: # print 10+
print(hspace + (num * int(xMax/10)) + num[:xMax%10])
else: # print 0-9
for i in range(0, int(xMax)):
hspace+=str(i)
print(hspace)
TA贡献1995条经验 获得超2个赞
根据此印刷品:
print(hspace + ('0123456789' * int(xMax/10)))
当 10 <= xMax < 20 时,int(xMax/10)
将等于 1,这就是为什么您的打印显示一次“0123456789”,当您尝试 xMax >= 20 时,您将得到您想要的。
添加回答
举报