Python 我应该怎么做才能得到列格式的数学表
我是一名学生,通过运行这段代码,我得到了一行中1到5个表的输出,但是我希望输出的方式是,如果有2个表,那么3个表应该并排在下一列中。为了达到这个结果,我应该包括哪些内容。总而言之,我希望输出以列格式出现,每个表并排出现,而不是每个表都在另一个表的下面Python 我应该怎么做才能得到列格式的数学表,python,python-3.x,Python,Python 3.x,我是一名学生,通过运行这段代码,我得到了一行中1到5个表的输出,但是我希望输出的方式是,如果有2个表,那么3个表应该并排在下一列中。为了达到这个结果,我应该包括哪些内容。总而言之,我希望输出以列格式出现,每个表并排出现,而不是每个表都在另一个表的下面 f=open('C:/python/1 to 5 table','w') for i in range(1,6): for j in range (1,11): print (i,'X',j,'=',i*j)
f=open('C:/python/1 to 5 table','w')
for i in range(1,6):
for j in range (1,11):
print (i,'X',j,'=',i*j)
f.write (string(i)+string('X')+string(j)+string('=')+string(i*j)+string('\n'))
f.close()
首先,
string
应该是str
f=open('table.txt','w')
for j in range (1,11):
for i in range(1,6):
# print (i,'X',j,'=',i*j)
f.write (str(i)+str('X')+str(j)+str('=')+str(i*j)+str('\t')) # I don't like number of `str`'s, they are not needed for a string
f.write('\n')
f.close()
此外,您不必将字符串类型转换为str
f=open('table.txt','w')
for j in range (1,11):
for i in range(1,6):
# print (i,'X',j,'=',i*j)
f.write (str(i)+str('X')+str(j)+str('=')+str(i*j)+str('\t')) # I don't like number of `str`'s, they are not needed for a string
f.write('\n')
f.close()
建议代码
f=open('table.txt','w')
for j in range (1,11):
for i in range(1,6):
f.write (f'{i}X{j}={i*j}\t')
f.write('\n')
f.close()
输出:
1X1=1 2X1=2 3X1=3 4X1=4 5X1=5
1X2=2 2X2=4 3X2=6 4X2=8 5X2=10
1X3=3 2X3=6 3X3=9 4X3=12 5X3=15
1X4=4 2X4=8 3X4=12 4X4=16 5X4=20
1X5=5 2X5=10 3X5=15 4X5=20 5X5=25
1X6=6 2X6=12 3X6=18 4X6=24 5X6=30
1X7=7 2X7=14 3X7=21 4X7=28 5X7=35
1X8=8 2X8=16 3X8=24 4X8=32 5X8=40
1X9=9 2X9=18 3X9=27 4X9=36 5X9=45
1X10=10 2X10=20 3X10=30 4X10=40 5X10=50
说明:
我已经颠倒了循环顺序,现在循环[1-5]运行10次/行
附言:
f
用于格式化字符串 什么是字符串(..)
?NameError尝试反转循环顺序-首先是i,然后是j。另外:f.write(f“{i}X{j}={i*j}”)
并且您需要在每列后面放置一些空格