zoukankan      html  css  js  c++  java
  • print多重打印

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

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

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

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

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

    于是就打印了一下结果,感觉挺有趣的,第二行代码的打印结果是:

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

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

    看到三个等号的时候,想着可能是由于后边 * 3 的问题,但是当时一直没想到可以用其他形式的代码来验证

    经过高人指点,他说:‘2 * 3’ * 3 print 一下这个看看,毫不犹豫的就执行了一下,结果立马了然

    print('2 * 3' * 3)

    这行代码的打印结果是:

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

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

    由于字符串是数字,又有等号,数字又简单,很容易就能自己算出接过来,容易受到思维定势的影响,一直在想为什么会是这个结果

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

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

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

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

    print('Hello world' * 3)

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

  • 相关阅读:
    解决mac os x下 tomcat启动报 java.net.BindException: Permission denied <null>:80 错误
    Mac下MySQL卸载方法 转载
    利用JS函数制作时钟运行程序
    HTML页面弹出窗口调整代码总结
    JavaScript代码放在HTML代码不同位置的差别
    二十五种网页加速方法和seo优化技巧
    web前端之Html和Css应用中的细节问题
    利用css制作横向和纵向时间轴
    利用html5看雪花飘落的效果
    利用jQuery实现鼠标滑过整行变色
  • 原文地址:https://www.cnblogs.com/chongzi1990/p/8609198.html
Copyright © 2011-2022 走看看