for i in range(10):
# print(i, end = ‘ ‘)
for j in range (1,i+1):
# print(‘等待‘)
# print(f‘{j}*{i}={str(j*i):1}‘, end = ‘ ‘)
print(f‘{j}*{i}={str(j*i):5}‘, end = ‘ ‘ *2) # 此处的 f‘{:5}‘:表示占位符从结尾算起4个占位符 , end是print的的默认参数是‘\r\n‘的分行, 表示结尾,
print(‘‘) # 分行用的
print (‘\n‘.join([‘ ‘.join([‘%s*%s=%-2s‘ % (y,x,x*y) for y in range(1,x+1)]) for x in range(1,10)]))
for x in range(10):
for y in range(1,x+1):
print(‘ ‘.join([f‘{y}*{x}={x*y}‘]),end=‘ ‘)
print(‘‘) # 用于每次y结束的分行
在一个列表中,双重for循环,前面的for先执行,循环最外面的值,第二个for根据前面的for一个值,再一个个循环获取
不在\在一个列表中,双重for循环,外面的for先执行,循环最外面的值,第二个for根据前面的for一个值,再一个个循环获取
注意这2个的区别
原文:https://www.cnblogs.com/heris/p/14011296.html