for循环打印九九乘法表 来个大哥帮帮我
for h in range(1,10):for l in range(1,h+1):
print(str(h) + "×" + str(l) + "=" + str(h*l)+"\t",end='')
print()
为什么str(h*l)不能用str(h)*str(l)替代呢?新手这几天刚刚开始学的,好多不懂,求轻锤
str(h)*str(l) 语法错误,乘的话,后面得是数字,但是你想打印的是这两个数的积,所以先乘再转成字符串 字符串没有乘字符串的,可以乘数字,但是你得明白字符串乘数字什么意思
具体能不能,你敲敲不就知道了 str(h) + "×" + str(l) + "=" + str(h*l) 知道为啥用加号吗 ?
是因为这样才能用 字符串拼接的功能
所以你就明白为啥会需要用 str() 函数把数字转换成字符串啦?
然后你就明白 你看到的 2 * 3 =6 实际上是一个字符串 “ 2 * 3 =6’” 那么 你应该就能明白 字符串是没有 * 这个方法的,所以会报错
那么你 所看到的6实际上就是 整数 2*3 所得到的结果 但现在被你使用变量代替了 h*l 这个东西实际上是个整数 类似于前面的6 但是前面的数值的式子你可以直接得到结果,换成变量你就只能老老实实打h*l
页:
[1]