前言
因為工作的需要,最近看了看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可以看出,並沒有egsee換行,原因是在python3中,換行採用了新語法,形如print(『*『, end=」),是的,區別就是在print()函式的第二個引數,加上了end=」,修改、執行,最後的執行結果,如圖3,
圖3正常輸出。
其實在上面**中還有乙個問題,接上面 問題一,xrange()函式,如果你只是修改了pr程式設計客棧int()函式的語法,沒有關注xrange()的話,會出現下圖4的情況,
圖4 這裡提示說'xrange' is not defined,其實就是在python3中,xrange()函式已被整合進range()函式了,統一使用range()函式。
ok,修改後,就會輸出圖3的正常結果了。
總結本文標題: 關於python 3中print函式的換行詳解
本文位址: /jiaoben/python/199013.html
python 3 中對print的改動
開始學習python,直接從python3開始學習了,雖然相應的庫和資料還比較少,據說python3是一次大改動吧。看了一些python2.x的資料,在python3 shell中實現的時候,發現python3中對print函式做了較大的修改 help print help on built in ...
python3內建函式 print
print objects,sep end n file sys.stdout,flush false print objects to the text stream file,separated by sep and followed by end.sep,end,file and flush,...
python 3 基礎 print 函式
最白話的語言來和大家一起學習python print 是python中最常用的輸出方式 待輸出資料 可以是字串,整數,浮點數,字典,元組,列表等 print 一起學python 輸出字串 一起學python print 1412 輸出數字 1412 str string1 print str 輸出變...