源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

关于Python 3中print函数的换行详解

  • 时间:2021-08-30 04:04 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:关于Python 3中print函数的换行详解
[b]前言[/b] 因为工作的需要,最近看了看Python的应用,从入门级的九九乘法表开始,结果发现Python3.x和Python2.x真的是有太大的不同之处,就比如这里的换行处理,怕忘记先记下来,好了,话不多说了,来一起看看详细的介绍: [b]Python2.X中的代码:[/b]
#!/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()
具体的算法,横向、纵向两层循环就不说了。 这里涉及两个问题:第一,在内层循环的[code]print()[/code]函数结尾,在Pyhon2中,[code]print()[/code]打印输出后要换行的话,是在函数末尾加一个逗号',',但是在Python3中运行代码会发现,加逗号并不起作用,在win中运行如图1所示, [img]http://files.jb51.net/file_images/article/201708/20178892321600.jpg?20177892329[/img] 图1 在Linux中运行如图2, [img]http://files.jb51.net/file_images/article/201708/20178892350089.jpg?20177892358[/img] 图2 可以看出,并没有换行,原因是在Python3中,换行采用了新语法,形如[code]print(‘*‘, end=”)[/code] ,是的,区别就是在[code]print()[/code]函数的第二个参数,加上了end=”,修改、运行,最后的运行结果,如图3, [img]http://files.jb51.net/file_images/article/201708/20178892414982.jpg?20177892424[/img] 图3 正常输出。 其实在上面代码中还有一个问题,接上面 问题一,[code]xrange()[/code]函数,如果你只是修改了[code]print()[/code]函数的语法,没有关注[code]xrange()[/code]的话,会出现下图4的情况, [img]http://files.jb51.net/file_images/article/201708/20178892449340.jpg?20177892457[/img]   图4 这里提示说'xrange' is not defined,其实就是在Python3中,xrange()函数已被整合进[code]range()[/code]函数了,统一使用[code]range()[/code]函数。 OK,修改后,就会输出图3的正常结果了。 [b]总结[/b] 好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对编程素材网的支持。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部