浅谈Python3中print函数的换行

Python3中print函数的换行

最近看了看Python的应用,从入门级的九九乘法表开始,结果发现Python3.x和Python2.x真的是有太大的不同之处,就比如这里的换行处理,怕忘记先记下来,好了,咱移步下文——

Python2.X中的代码:

#!/usr/bin/env python
#-*- coding: utf-8 -*-
__author__ = '****'

class PrintTable(object):
  '''打印九九乘法表'''
  def __init__(self):
    print('开始打印 9 X 9 的乘法表格')
    self.print99()

  def print99(self):
    for i in xrange(1, 10):
      for j in xrange(1, i+1):
        print('%d X %d = %2s ' %(j, i, i*j)),
      print('\n')
if __name__ == '__main__':
  pt = PrintTable()

具体的算法,横向、纵向两层循环就不说了。这里涉及两个问题:第一,在内层循环的print()函数结尾,在Pyhon2中,print()打印输出后要换行的话,是在函数末尾加一个逗号',',但是在Python3中运行代码会发现,加逗号并不起作用,在win中运行如图1所示,

图1

在Linux中运行如图2,

图2

可以看出,并没有换行,原因是在Python3中,换行采用了新语法,形如print(‘*‘, end=”),是的,区别就是在print()函数的第二个参数,加上了end=”,修改、运行,最后的运行结果,如图3,

图3

正常输出。
其实在上面代码中还有一个问题,接上面 问题一,xrange()函数,如果你只是修改了print()函数的语法,没有关注xrange()的话,会出现下图4的情况,

图4

这里提示说'xrange' is not defined,其实就是在Python3中,xrange()函数已被整合进range()函数了,统一使用range()函数。

OK,修改后,就会输出图3的正常结果了。
好了,先到这里,继续更新。。。

到此这篇关于浅谈Python3中print函数的换行的文章就介绍到这了,更多相关Python3中print函数的换行内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • python3的print()函数的用法图文讲解

    Python 3 print 函数 基础代码 """ print用法 版本: v1.0 日期: 2019.03.25 作者: Catherine python版本: 3.7 """ print("用法1: ", end='') print('hello, world!') print() print("用法2: ", end='') print("你好,世界!") print() pri

  • Python2和Python3中print的用法示例总结

    前言 最近在学习python,对于python的print一直很恼火,老是不按照预期输出.在python2中print是一种输出语句,和if语句,while语句一样的东西,在python3中为了填补python2的各种坑,将print变为函数,因此导致python3中print的一些使用和python2很不一样.下面就来给大家详细的总结了关于Python2和Python3中print的用法,话不多说了,来一起看看详细的介绍吧. 一.Python2中的print用法 在Python2 中 prin

  • 新手学习Python2和Python3中print不同的用法

    在Python2和Python3中都提供print()方法来打印信息,但两个版本间的print稍微有差异 主要体现在以下几个方面: 1.python3中print是一个内置函数,有多个参数,而python2中print是一个语法结构: 2.Python2打印时可以不加括号:print 'hello world', Python3则需要加括号 print("hello world") 3.Python2中,input要求输入的字符串必须要加引号,为了避免读取非字符串类型发生的一些行为,不

  • python2 与python3的print区别小结

    在Python2和Python3中都提供print()方法来打印信息,但两个版本间的print稍微有差异 主要体现在以下几个方面: 1.python3中print是一个内置函数,有多个参数,而python2中print是一个语法结构: 2.Python2打印时可以不加括号:print 'hello world', Python3则需要加括号 print("hello world") 3.Python2中,input要求输入的字符串必须要加引号,为了避免读取非字符串类型发生的一些行为,不

  • 浅谈Python3中print函数的换行

    Python3中print函数的换行 最近看了看Python的应用,从入门级的九九乘法表开始,结果发现Python3.x和Python2.x真的是有太大的不同之处,就比如这里的换行处理,怕忘记先记下来,好了,咱移步下文-- Python2.X中的代码: #!/usr/bin/env python #-*- coding: utf-8 -*- __author__ = '****' class PrintTable(object): '''打印九九乘法表''' def __init__(self)

  • 浅谈Python3中打开文件的方式(With open)

    目录 0.背景知识 1.常规方式:读取文件-----open() 2.推荐方式:读取文件-----With Open 1).读取方式 2).常见的坑 3).跳过第一行内容(字段名) 3.写入内容----open()函数 4.写入内容----- With Open函数 5.打开非utf-8编码的文件 6.打开二进制文件 0.背景知识 python文件读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统

  • 浅谈Javascript中的函数、this以及原型

    关于函数 在Javascript中函数实际上就是一个对象,具有引用类型的特征,所以你可以将函数直接传递给变量,这个变量将表示指向函数"对象"的指针,例如: function test(message){ alert(message); } var f = test; f('hello world'); 你也可以直接将函数申明赋值给变量: var f = function(message){ alert(message); }; f('hello world'); 在这种情况下,函数申明

  • 浅谈js中test()函数在正则中的使用

    test() 方法用于检测一个字符串是否匹配某个模式. 返回一个 Boolean 值,它指出在被查找的字符串中是否匹配给出的正则表达式. regexp.test(str) 参数 regexp 必选项.包含正则表达式模式或可用标志的正则表达式对象. str    必选项.要在其上测试查找的字符串. 说明 test 方法检查字符串是否与给出的正则表达式模式相匹配,如果是则返回 true,否则就返回 false. 每个正则表达式都有一个 lastIndex 属性,用于记录上一次匹配结束的位置. var

  • 浅谈C++中虚函数实现原理揭秘

    编译器到底做了什么实现的虚函数的晚绑定呢?我们来探个究竟. 编译器对每个包含虚函数的类创建一个表(称为V TA B L E).在V TA B L E中,编译器放置特定类的虚函数地址.在每个带有虚函数的类 中,编译器秘密地置一指针,称为v p o i n t e r(缩写为V P T R),指向这个对象的V TA B L E.通过基类指针做虚函数调 用时(也就是做多态调用时),编译器静态地插入取得这个V P T R,并在V TA B L E表中查找函数地址的代码,这样就能调用正确的函数使晚捆绑发生

  • 浅谈MySQL中group_concat()函数的排序方法

    group_concat()函数的参数是可以直接使用order by排序的.666.. 下面通过例子来说明,首先看下面的t1表. 比如,我们要查看每个人的多个分数,将该人对应的多个分数显示在一起,分数要从高到底排序. 可以这样写: SELECT username,GROUP_CONCAT(score ORDER BY score DESC) AS myScore FROM t1 GROUP BY username; 效果如下: 以上这篇浅谈MySQL中group_concat()函数的排序方法就

  • 浅谈js中startsWith 函数不能在任何浏览器兼容的问题

    在做js测试的时候用到了startsWith函数,但是他并不是每个浏览器都有的,所以我们一般要重写一下这个函数,具体的用法可以稍微总结一下 在有些浏览器中他是undefined 所以我们可以这样的处理一下. if (typeof String.prototype.startsWith != 'function') { String.prototype.startsWith = function (prefix){ return this.slice(0, prefix.length) === p

  • 浅谈mysql中concat函数,mysql在字段前/后增加字符串

    MySQL中concat函数 使用方法: CONCAT(str1,str2,-) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. 注意: 如果所有参数均为非二进制字符串,则结果为非二进制字符串. 如果自变量中含有任一二进制字符串,则结果为一个二进制字符串. 一个数字参数被转化为与之相等的二进制字符串格式:若要避免这种情况,可使用显式类型 cast, 例如: SELECT CONCAT(CAST(int_col AS CHAR), char_col) MySQ

  • 浅谈js中调用函数时加不加括号的问题

    其实总结起来如下: 函数只要是要调用它进行执行的,都必须加括号.此时,函数()实际上等于函数的返回值.当然,有些没有返回值,但已经执行了函数体内的行为,这个是根本,就是说,只要加括号的,就代表将会执行函数体代码. 不加括号的,都是把函数名称作为函数的指针,用于传参,此时不是得到函数的结果,因为不会运行函数体代码.它只是传递了函数体所在的地址位置,在需要的时候好找到函数体去执行. 所以一般时候我们都是采用的是无括号的原因.这也是由于括号的二义性,因为括号是"函数调用运算符",相当于在执行

  • 浅谈js中同名函数和同名变量的执行问题

    经测试未写成闭包形式的在同一个文件中或者不同的 js 文件中定义的同名函数,调用时会执行后面一个定义的函数.即使这样写也会执行后面一个即会弹出2: <script type="text/javascript"> function t(){ alert(1); } t(); function t(){ alert(2); } </script> 另外,定义的变量与css样式也是以后面的为准. 但是对于函数,经测试这样写却会执行前面的函数直接量即弹出1,暂时不知道是

随机推荐