窝在家里写程序 发表于 2020-5-24 09:01:23

求大神解答!!!

print('左下三角输出')
for i in range(1,10):
    for j in range(1,i+1):
      print("%d*%d=%2d" % (i,j,i*j),end=" ")
    print("")

看不懂("%d*%d=%2d" % (i,j,i*j))这一段代码

Twilight6 发表于 2020-5-24 09:01:48

本帖最后由 Twilight6 于 2020-5-24 09:05 编辑


% 格式化
print("%d*%d=%2d" % (i,j,i*j),end=" ")
就是 把 %d按顺序替换成 (i,j,i*j) 的值 而且是格式化整型

可以看成这样 print(i,'*',j,'=',i*j)

窝在家里写程序 发表于 2020-5-24 09:03:54

Twilight6 发表于 2020-5-24 09:01
% 格式化

意思上是%是格式化和后面的d没啥关系对吧d只是代替的一个值吧就是直接跳入下一行对吧

老八秘制 发表于 2020-5-24 09:04:55

窝在家里写程序 发表于 2020-5-24 09:03
意思上是%是格式化和后面的d没啥关系对吧d只是代替的一个值吧就是直接跳入下一行对吧

不,%d是格式化整型,不加d就不会格式化

Twilight6 发表于 2020-5-24 09:05:22

窝在家里写程序 发表于 2020-5-24 09:03
意思上是%是格式化和后面的d没啥关系对吧d只是代替的一个值吧就是直接跳入下一行对吧

看 二楼 刚刚在编辑之中

Twilight6 发表于 2020-5-24 09:07:07

窝在家里写程序 发表于 2020-5-24 09:03
意思上是%是格式化和后面的d没啥关系对吧d只是代替的一个值吧就是直接跳入下一行对吧

用%格式化 你前面的字符串里填的 % 类型要和 括号内的 类型的值是对应的

比如 %d就是格式化整型你括号对应的 也要是整型

柿子饼同学 发表于 2020-5-24 09:07:48

%d是格式化整数,如print('%d'%6.5)她回复6
%2d是格式化2位整数,如print('%d'%7)回复07

窝在家里写程序 发表于 2020-5-24 09:07:54

Twilight6 发表于 2020-5-24 09:05
看 二楼 刚刚在编辑之中

窝在家里写程序 发表于 2020-5-24 09:08:32

老八秘制 发表于 2020-5-24 09:04
不,%d是格式化整型,不加d就不会格式化

格式化啥意思咯???

Twilight6 发表于 2020-5-24 09:08:38

窝在家里写程序 发表于 2020-5-24 09:07


如果对你有帮助 就给个最佳~{:10_288:}

Twilight6 发表于 2020-5-24 09:09:49

窝在家里写程序 发表于 2020-5-24 09:08
格式化啥意思咯???

格式化 就是差不多可以理解为一种 类型的值转为另一种

你代码这里格式化都是将整型 转为字符串类型

窝在家里写程序 发表于 2020-5-24 09:12:03

柿子饼同学 发表于 2020-5-24 09:07
%d是格式化整数,如print('%d'%6.5)她回复6
%2d是格式化2位整数,如print('%d'%7)回复07

呐%d*%d=%2   这样又是啥意思咯
页: [1]
查看完整版本: 求大神解答!!!