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

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

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)

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

print多重打印的更多相关文章

  1. 怎样使用 css 的@media print控制打印

    怎样使用 css 的@media print控制打印? <HTML> <HEAD> <TITLE> New Document </TITLE> < ...

  2. PrintArea打印,@media screen解决移动web开发的多分辨率问题,@media print设置打印的样式

    PrintArea打印,局部DIV打印插件,依赖JQuery. github:https://github.com/RitsC/PrintArea 当打印时需要临时改变页面布局,可以使用 @media ...

  3. 文档打印 js print调用打印dom内容

    1.首先按目前研究 print可以打印dom 2.被设置overflow:hidden 的模块,打印时会被截掉. 3.被设置成 display:none 的dom 打印不会有样式 边框等. 4.如果需 ...

  4. 控制window.print不打印某些内容

    <style type="text/css" media="print"> .noprint { display:none;} </style ...

  5. jquery.print.js 打印插件

    <script language="javascript" src="jquery-1.4.4.min.js"></script> &l ...

  6. window.print实现打印特定控件或内容

    window.print打印指定div 首先我们可以把要打印的内容放在div中,然后用下面的代码进行打印. <html> <head> <script language= ...

  7. window.print控制打印样式

    我们可能会去使用window.print()方法来打印页面,但是当我们遇到需要改变打印时候的字体大小等css样式的时候你可能会懵逼. 所以搜索成了我们的必经之路,我相信在网上搜索出来的最好的答案就是使 ...

  8. window.print()局部打印三种方式

    首先准备要打印的内容,也可以打印时再填充,html中定义如下: <!--startprint--> <div id="printcontent" style=&q ...

  9. print,cat打印格式及字符串引号格式,去掉字符串空格 in R

    print 函数的打印格式: ##no quote print out > x <- letters[1:5] > print(x,quote=F,);print(x,quote=T ...

随机推荐

  1. java反射--方法反射的基本操作

    方法的反射 1)如何获取某个方法 方法的名称和方法的参数列表才能唯一决定某个方法. 2)方法反射的操作 method.invoke(对象,参数列表). 代码实例: package com.reflec ...

  2. Android中涉及到的焦点问题,focusable,clickable,enabled

    先摘抄下stackoverflow上一个启示了我的回答: try by Changing your code as: private OnClickListener saveButtonListene ...

  3. [ASP.NET]使用uploadify上传图片,并在uploadify按钮上生成预览图

    目录 需求 主要代码 总结 需求 项目中有用到uploadify上传插件,给的原型就是上传成功后替换原来的图片.没办法需求在那儿,也不能修改需求吧,只能想办法解决问题了. 主要代码 修改uploadi ...

  4. EMQ学习---客户链接资源消耗

    Erlang进程消耗EMQ对客户端链接使用链接进程(emqtt_client)和session进程(emqtt_session)分开的策略. 当一个mqtt的客户端连接到EMQ的服务器上的时候,首先会 ...

  5. 【C语言】二维数组中的查找,杨氏矩阵

    //二维数组中的查找,杨氏矩阵 //在一个二维数组中,每行都依照从左到右的递增的顺序排序.每列都依照从上到下递增的顺序排序. //请完毕一个函数.输入这种一个数组和一个数,推断数组中是否包括这个数. ...

  6. 最简单的TCP网络封包解包(补充)-序列化

    如若描述或者代码当中有谬误之处,还望指正. 将数据能够在TCP中进行传输的两种方法1.直接拷贝struct就可以了:2.序列化. 拷贝Struct存在的问题1.不能应付可变长类型的数据,比如STL中的 ...

  7. AngularJS 中的作用域

    问题引入 使用 Angular 进行过一段时间的开发后,基本上都会遇到一个这样的坑: 123456789101112 <div ng-controller="TestCtrl" ...

  8. ubuntu16.04安装jekyll 3.3.1

    本次安装的ekyll为最新的3.3.1版本. 一.预备工作,因位jekyll需要很多软件的支持,所以准备工作要做足. Ruby (including development headers, v1.9 ...

  9. 【剑指Offer学习】【面试题22:栈的压入、弹出序列】

    题目:输入两个整数序列,第一个序列表示栈的压入顺序,请推断二个序列是否为该栈的弹出顺序.假设压入栈的全部数字均不相等. 解题思路: 解决问题非常直观的想法就是建立一个辅助栈.把输入的第一个序列中的数字 ...

  10. python学习笔记(5)--泡菜:永久存储

    说明: 1. 导入pickle泡菜模块. 2. wb方式(二进制)创建.pkl文件. 3. pickle.dump把一个数组或什么数据灌进这个新建的文件. 4. 然后就生成了一个pkl文件,用来存放数 ...