print多重打印

碰见有趣的问题必须记录下来,当时的想法思路也要记下来测试

如下两行代码打印出来的结果会是什么spa

print('2 * 3 = %d' % (2 * 3))
print('2 * 3 = %d' % 2 * 3)

对于第一行代码,学过字符串格式化后,很容易就能看出来,打印结果为:code

那么第二行呢,想了好一下子实在是想不出来这行代码打印出来的结果是什么blog

因而就打印了一下结果,感受挺有趣的,第二行代码的打印结果是:字符串

乍一看,这什么玩意儿,根本没有头绪,为何打印出来的结果会是这样class

思惟定势,受到了等号的影响,当时想的是2 * 3是等于2(字符串格式化)的呀,等于22是什么鬼,并且为何会有三个等号基础

看到三个等号的时候,想着多是因为后边 * 3 的问题,可是当时一直没想到能够用其余形式的代码来验证im

通过高人指点,他说:‘2 * 3’ * 3 print 一下这个看看,坚决果断的就执行了一下,结果立马了然img

print('2 * 3' * 3)

这行代码的打印结果是:di

 看到这里,想必有点代码基础的人都能看明白了

后面接 * 3 就是 print语句要打印3次字符串

因为字符串是数字,又有等号,数字又简单,很容易就能本身算出接过来,容易受到思惟定势的影响,一直在想为何会是这个结果

其实,若是是大点的数字,一会儿算不出来的那种,可能就会很容易知道这个语句的执行状况

print('15612 * 1546 = %d' % 15612 * 1546)

例如执行上述代码,执行结果为:

看到这么一大串,很容易就会想到,那个 * 1546 是否是就是打印了 1546 次,而后再想到简单的测试代码

print('Hello world' * 3)

这个结果就很容易能弄明白这个语句形式的奥妙了

相关文章
相关标签/搜索