改正前,用了二种字符串格式化的方法,还有一种不太喜欢,没用
for i in range(0,10):
for j in range(0,i+1):
x=str(i)+str('*')+str(j)+str('=')+str(i*j)
print(x)
for i in range(0,10):
for j in range(0,i+1):
number='{x}*{y}={z}'.format(x=j,y=i,z=i*j)
print(number)
#输出结果很乱,没想通怎么看起来整齐点
改正思路
第一个循环先输出行
for i in range(1,10):
print(i)
再考虑列
for i in range(1,10):
# print(i)
for j in range(1,i+1):
print(j)
但是这个输出换自动换行了,不好观察,所以在
print(j,end=’ ‘)
为末尾end传递一个空字符串,这样print函数不会在字符串末尾添加一个换行符,而是添加一个空字符串。这个只有3版本有用。2.*版本不支持
加了end=’ '后
然后在每次的j循环完成后,为它添加一个换行符号
for i in range(0,10):
# print(i)
for j in range(1,i+1):
print(j,end=' ')
print()
#这样输出较为规范
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 3 4 5 6
1 2 3 4 5 6 7
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8 9
for i in range(0,10):
# print(i)
for j in range(1,i+1):
number='{x}*{y}={z}'.format(x=j,y=i,z=i*j)
# x=str(j)+str('*')+str(i)+str('=')+str(i*j)
print(number,end=' ')
print()
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
‘’’
创建一个字典,将三个人名字存入,并且每个给他们几个喜爱的游戏
输入正确名字,遍历这个字典,将这个人喜欢的游戏输出
‘’’
favoritre_game={'张三':['帝国时代','星际争霸','暗黑'],'李四':['寒霜纪元','骑马与砍杀'],'王五':['英雄无敌','三国志']}
name = input('敢问高姓大名:')
#遍历字典key
for i in favoritre_game:
if name==i:
print(favoritre_game[name])
#遍历字典中values
for i in favoritre_game.values():
print(i)
#遍历字典,既可以取值,又可以取values,获取字典key和values的元组
for i in favoritre_game.items():
print(i)
字典的遍历是无序的,但是好像又可以有序,我了解下,等后面应用了去验证,现在先赶赶进度