您好,登錄后才能下訂單哦!
這篇文章主要介紹“Python中Print()函數(shù)怎么使用”,在日常操作中,相信很多人在Python中Print()函數(shù)怎么使用問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對(duì)大家解答”Python中Print()函數(shù)怎么使用”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!
print() 函數(shù)用于打印輸出,是python中最常見的一個(gè)內(nèi)置函數(shù)。
將 "objects" 打印輸出至 "file參數(shù)" 指定的文本流,以 "sep 參數(shù)"分隔開并在末尾加上 "end參數(shù)"。 "sep" 、 "end "、 "file" 和"flush" 必須以關(guān)鍵字參數(shù)的形式給出。 flush 關(guān)鍵字參數(shù)是在 phthon3.3 版后增加的。
所有非關(guān)鍵字參數(shù)都會(huì)被轉(zhuǎn)換為字符串,就像是執(zhí)行了 str() 一樣,并會(huì)被寫入到流,以 “sep參數(shù)“ 且在末尾加上 “end參數(shù)“。 “sep參數(shù)“ 和 “end參數(shù)“都必須為字符串;它們也可以為 “None“,這意味著使用默認(rèn)值。 如果沒有給出 “objects參數(shù)“,則 print() 將只寫入 “end參數(shù)“。
"file 參數(shù)"必須是一個(gè)具有 write(string) 方法的對(duì)象;如果參數(shù)不存在或?yàn)?None,則將使用 sys.stdout。 由于要打印的參數(shù)會(huì)被轉(zhuǎn)換為文本字符串,因此 print() 不能用于二進(jìn)制模式的文件對(duì)象。 對(duì)于這些對(duì)象,應(yīng)改用 file.write(...)。輸出是否緩存通常取決于 file,但如果 flush 關(guān)鍵字參數(shù)為 True,輸出流會(huì)被強(qiáng)制刷新。
打印的文本內(nèi)容不僅僅是指中文文本,還可以是英文文本或者包含特殊符號(hào)的文本,打印文本時(shí)需要使用引號(hào)將文本內(nèi)容引起來,引號(hào)可以是單引號(hào)(' '),雙引號(hào)(" "),三引號(hào)(""" """)
使 用 方 法 | 代 碼 | 運(yùn)行結(jié)果 | |
Single quotes | 一對(duì)單引號(hào),單引號(hào)里可以用雙引號(hào),并可以將單引號(hào)打印出來 | print('有生命便有希望') | 有生命便有希望 |
print('"有生命便有希望"') | "有生命便有希望" | ||
Double quotes | 一對(duì)雙引號(hào),雙引號(hào)里可以用單引號(hào),并可以將單引號(hào)打印出來 | print("永不氣餒!") | 永不氣餒! |
print("'永不氣餒! '") | '永不氣餒! ' | ||
Triple quoted | 一對(duì)三引號(hào),引用多行文本 | Multilinetext=""" They who cannot do as they would, must do as they can. 不能如愿而行, 也須盡力而為。 """ print(Multilinetext) | hey who cannot do as they would, must do as they can. 不能如愿而行, 也須盡力而為。 |
方 法 | 代 碼 | 運(yùn)行結(jié)果 | |
1 | 直接在引號(hào)中打空格,空格數(shù)不限 | print("謀事在人 成事在天 有生命便有希望") | 謀事在人 成事在天 有生命便有希望 |
2 | 相鄰的兩項(xiàng)用逗號(hào)間隔 | print("謀事在人","成事在天","有生命便有希望") | 謀事在人 成事在天 有生命便有希望 |
3 | 多行打印時(shí)用逗號(hào)結(jié)尾 | print ("謀事在人",) print ("成事在天") | 謀事在人 成事在天 (2個(gè)字符串之間有個(gè)空格) |
4 | 相鄰的兩項(xiàng)或多行打印時(shí)沒有用逗號(hào)間隔 | print("謀事在人""成事在天") print ("謀事在人") print ("成事在天") | 謀事在人成事在天 謀事在人成事在天 |
5 | 字符串間不要空格 | print ("謀事在人" + "成事在天") | 謀事在人成事在天 (2個(gè)字符串之間沒有空格了) |
print()函數(shù)的“end”參數(shù)指定了print()函數(shù)在打印完內(nèi)容之后,用什么符號(hào)來表示結(jié)尾,默認(rèn)值是“\n”,表示換行,即print()函數(shù)在打印完指定內(nèi)容之后,就會(huì)自動(dòng)換行。
我們可以通過“end”參數(shù)的定義,用其他符號(hào)來表示print()輸出打印完成。例如:print()函數(shù)的“end”參數(shù)指定為“|”,即print()函數(shù)每次輸出完成之后,都輸出“|”。
強(qiáng)行換行 | |
代 碼 | print("有生命\n便有希望") |
運(yùn)行結(jié)果 | 有生命 便有希望 |
打印后不換行,用end參數(shù)來設(shè)置你想要的結(jié)束符號(hào) | |
代 碼 | print("謀事在人",end =" ") print("成事在天", end =" ") print("有生命便有希望", end =" ") |
運(yùn)行結(jié)果 | 謀事在人 成事在天 有生命便有希望 |
代 碼 | print("謀事在人",end ="|") print("成事在天", end ="|") print("有生命便有希望", end ="|") |
運(yùn)行結(jié)果 | 謀事在人|成事在天|有生命便有希望| |
代 碼 | for x in range(0, 6): print(x, end=' ') for x in range(0, 6): print(x, end=',') |
運(yùn)行結(jié)果 | 0 1 2 3 4 5 0,1,2,3,4,5, |
代 碼 | for x in range(1, 6): print(x, end=' ') print() for x in range(1, 6): print(x, end=',') print() |
運(yùn)行結(jié)果 | 1 2 3 4 5 1,2,3,4,5, |
用sep參數(shù)來約束print括號(hào)里多項(xiàng)內(nèi)容之間的區(qū)隔符 | |
代 碼 | print("謀事在人", "成事在天", "有生命便有希望", sep ="&") |
運(yùn)行結(jié)果 | 謀事在人&成事在天&有生命便有希望 |
代 碼 | print("www", "csdn", "net", sep=".") |
運(yùn)行結(jié)果 | www.csdn.net |
制表符\t控制水平間隔,作用如tab鍵,在打印輸出時(shí)控制間隔距離 \t表示空8個(gè)字符, 或者使用格式化輸出,具體請(qǐng)看實(shí)例 | |
代 碼 | print("不能如愿而行\(zhòng)t也須盡力而為") |
運(yùn)行結(jié)果 | 不能如愿而行 也須盡力而為 |
代 碼 | for i in range (1, 11): print(i,'\t',i*2,'\t',i*3,'\t',i*4) |
運(yùn)行結(jié)果 | 1 2 3 4 2 4 6 8 3 6 9 12 4 8 12 16 5 10 15 20 6 12 18 24 7 14 21 28 8 16 24 32 9 18 27 36 10 20 30 40 |
代 碼 | name = 'Adversity awake' saying="Man proposes, god disposes 謀事在人,成事在天" print(name.title()+" once said"+": "+'\n\t"'+saying+'"') |
運(yùn)行結(jié)果 | Adversity Awake once said: "Man proposes, god disposes 謀事在人,成事在天" |
代 碼 | #錯(cuò)誤print()效果距離: print("學(xué)生號(hào)\t姓名\t科目\t分?jǐn)?shù)") |
運(yùn)行結(jié)果 | # 對(duì)齊出現(xiàn)偏差 |
代 碼 | print("學(xué)生號(hào)\t\t姓名\t\t\t\t\t科目\t\t分?jǐn)?shù)") print("100000101\t阿凡達(dá)\t\t\t\t\t語文\t\t80") print("100000102\t卡梅隆卡梅隆\t\t\t語文\t\t85") print("100000103\t莫妮卡·貝魯卡梅隆\t\t語文\t\t85") |
運(yùn)行結(jié)果 | #用多個(gè)制表符,對(duì)齊完好 |
代 碼 | print("%-10s\t %-30s\t %-10s\t %-10s"%("學(xué)生號(hào)","姓名","科目","分?jǐn)?shù)")) print("%-10s\t %-32s\t %-10s\t %-12s"%("100000101","阿凡達(dá)","語文","80")) print("%-10s\t %-30s\t %-10s\t %-12s"%("100000102","卡梅隆卡梅隆","語文","82")) print("%-10s\t %-26s\t %-10s\t %-12s"%("100000103","莫妮卡·貝魯卡梅隆","語文","85")) |
運(yùn)行結(jié)果 | #對(duì)齊完好 |
編外話:有時(shí)需要對(duì)齊輸出,還可以使用format()來實(shí)現(xiàn):
代 碼 | products=[["iphone",6888],["MacPro",14800],["coffee",32],["abc",2499],["Book",60],["Nike",699],["MacPro",45600],["coffee",432],["abc",244499],["Book",6230],["Nike",61299],["MacPro",14800],["coffee",32],["abc",2499],["Book",60],["Nike",699]] print("-"*10+"商品列表"+"-"*10) i=0 for product in products: print('{:<6}\t{:<10}\t{:<10}'.format(str(i), product[0], str(product[1]))) i = i+1 |
運(yùn)行結(jié)果 | |
print后的括號(hào)中如果是數(shù)學(xué)表達(dá)式,則打印結(jié)果為表達(dá)式最終運(yùn)算的結(jié)果
Print 打印表達(dá)式的值 | |
代 碼 | Print(1+2+3+4+5) |
運(yùn)行結(jié)果 | 15 |
代 碼 | print(8/1) |
運(yùn)行結(jié)果 | 8.0 |
代 碼 | print(2*4) |
運(yùn)行結(jié)果 | 8 |
代 碼 | print(18-10) |
運(yùn)行結(jié)果 | 8 |
代 碼 | print(2+6) |
運(yùn)行結(jié)果 | 8 |
打印反斜杠,把2個(gè)反斜杠放一起 | |
代 碼 | Print("不能如愿而行\(zhòng)\也須盡力而為") |
運(yùn)行結(jié)果 | 不能如愿而行\(zhòng)也須盡力而為 |
無論什么類型的數(shù)據(jù),包括但不局限于:數(shù)值型,布爾型,列表變量,字典變量…...都可以通過print()直接輸出。
print()變量的輸出 | |
代 碼 | #輸出數(shù)值型變量 num = 91682 print(num) |
運(yùn)行結(jié)果 | 91682 |
代 碼 | #輸出字符串變量 name = '逆境清醒' print(name) |
運(yùn)行結(jié)果 | 逆境清醒 |
代 碼 | #輸出列表變量 list = [1,2,3,4,5,'a','b','c'] print(list) |
運(yùn)行結(jié)果 | [1, 2, 3, 4, 5, 'a', 'b', 'c'] |
代 碼 | #輸出元組變量 tuple = (1,2,3,4,5,'a','b','c') print(tuple) |
運(yùn)行結(jié)果 | (1, 2, 3, 4, 5, 'a', 'b', 'c') |
代 碼 | #輸出字典變量 dict ={'a':1, 'b':2,'c':3} print(dict) |
運(yùn)行結(jié)果 | {'a': 1, 'b': 2, 'c': 3} |
在字符串中插入 | 代 碼 | 運(yùn) 行 結(jié) 果 | |
1 | 字符串變量 | name = "逆境清醒" print("我的名字是 %s " % name) | 我的名字是 逆境清醒 |
2 | 整數(shù)變量 | age = 100 print("我的年齡是 %d"%(age)+"歲了") | 我的年齡是 100歲了 |
3 | 小數(shù)變量 | i = 2670.5 print("數(shù)字是 %f" %i) | 數(shù)字是 2670.500000 |
%號(hào)點(diǎn)(.)前跟字段寬度; %號(hào)點(diǎn)(.)后跟精度值;字段寬度中,小數(shù)點(diǎn)也占一位 | i = 2.67145573 print("8位保留字段寬度%8f"%(i)) | 8位保留字段寬度2.671456 | |
i = 2.67145573 print("保留兩位小數(shù)輸出的是%.2f"%(i)) | 保留兩位小數(shù)輸出的是2.67 | ||
i= 2.6714563467 print("a"+'%10.3f'%i) print("a"+'%f'%i) | a 2.671 a2.671456 | ||
4 | s='逆境清醒' x=len(s) print('%s名字的長度是 %d' %(s,x)) | 逆境清醒名字的長度是 4 |
格式輸出 | 代 碼 | 運(yùn)行結(jié)果 | |
%s | 輸出一個(gè)字符串,字符串采用str()的顯示 | i= 2.6714563467 print('%s'%i) | 2.6714563467 |
%r | 字符串(repr())的顯示 | print('%r'%repr(set([1,1,2,3]))) | '{1, 2, 3}' |
%c | 輸出一個(gè)單一的字符 | print('%c'%90) | Z |
%e、%E | 指數(shù)(基底寫e) | k= 2671.4563467284 print('%e'%k) print('%E'%k) | 2.671456e+03 2.671456E+03 |
%b | 二進(jìn)制整數(shù) | print(bin(50)) | 0b110010 |
%hd、%d、%ld | 以十進(jìn)制、有符號(hào)的形式輸出 short、int、long 類型的整數(shù) | print('%d'%50) | 50 |
%hu、%u、%lu | 以十進(jìn)制、無符號(hào)的形式輸出 short、int、long 類型的整數(shù) | print('%u'%50 | 50 |
%ho、%o、%lo | 以八進(jìn)制、不帶前綴、無符號(hào)的形式輸出 short、int、long 類型的整數(shù) | print('%o'%50) | 62 |
%#ho、%#o、%#lo | 以八進(jìn)制、帶前綴、無符號(hào)的形式輸出 short、int、long 類型的整數(shù) | print('%#o'%50) | 0o62 |
%hx、%x、%lx、 %hX、%X、%lX | 以十六進(jìn)制、不帶前綴、無符號(hào)的形式輸出 short、int、long 類型的整數(shù)。如果 x 小寫,那么輸出的十六進(jìn)制數(shù)字也小寫;如果 X 大寫,那么輸出的十六進(jìn)制數(shù)字也大寫。 | print('%x'%50) | 32 |
%#hx、%#x、%#lx、 %#hX、%#X、%#lX | 以十六進(jìn)制、帶前綴、無符號(hào)的形式輸出 short、int、long 類型的整數(shù)。如果 x 小寫,那么輸出的十六進(jìn)制數(shù)字和前綴都小寫;如果 X 大寫,那么輸出的十六進(jìn)制數(shù)字和前綴都大寫。 | print('%#x'%50) print('%#X'%50) | 0x32 0X32 |
%f、%lf 、%F | 以十進(jìn)制的形式輸出 float、double 類型的浮點(diǎn)數(shù) | i= 2.6714563467 print('%f'%i) | 2.67146 |
%g、%lg、 %G、%lG | 以十進(jìn)制和指數(shù)中較短的形式輸出 float、double 類型的小數(shù),并且小數(shù)部分的最后不會(huì)添加多余的 0。如果 g 小寫,那么當(dāng)以指數(shù)形式輸出時(shí) e 也小寫;如果 G 大寫,那么當(dāng)以指數(shù)形式輸出時(shí) E 也大寫。 | i= 2.6714563467 print('%g'%i) | 2.67146 |
其他一些格式輸出方法 | |
代 碼 | k= 2671.4563467284 print('二進(jìn)制形式''{0:b}'.format(int(k))) |
運(yùn)行結(jié)果 | 二進(jìn)制形式101001101111 |
代 碼 | k= 2671.4563467284 print('十進(jìn)制形式''{:d}'.format(int(k))) |
運(yùn)行結(jié)果 | 十進(jìn)制形式2671 |
代 碼 | k= 2671.4563467284 print('八進(jìn)制形式''{:o}'.format(int(k))) |
運(yùn)行結(jié)果 | 八進(jìn)制形式5157 |
代 碼 | k= 2671.4563467284 print('十六進(jìn)制形式''{:x}'.format(int(k))) |
運(yùn)行結(jié)果 | 十六進(jìn)制形式a6f |
代 碼 | k= 2671.4563467284 print('數(shù)字形式''{:n}'.format(k)) |
運(yùn)行結(jié)果 | 數(shù)字形式2671.46 |
代 碼 | k= 2671.4563467284 print('百分?jǐn)?shù)形式''{:%}'.format(k)) |
運(yùn)行結(jié)果 | 百分?jǐn)?shù)形式267145.634673% |
代 碼 | k= 2671.4563467284 print('冪指數(shù)形式''{:e}'.format(k)) |
運(yùn)行結(jié)果 | 冪指數(shù)形式2.671456e+03 |
代 碼 | k= 2671.4563467284 print('十進(jìn)制較短的形式輸出''{:g}'.format(k)) |
運(yùn)行結(jié)果 | 十進(jìn)制和指數(shù)中較短的形式輸出2671.46 |
代 碼 | k= 2671.4563467284 print('十進(jìn)制浮點(diǎn)數(shù)''{:f}'.format(k)) |
運(yùn)行結(jié)果 | 十進(jìn)制浮點(diǎn)數(shù)2671.456347 |
代 碼 | 輸出二進(jìn)制數(shù) k= 2671.4563467284 print(bin(int(k))) |
運(yùn)行結(jié)果 | 0b101001101111 |
代 碼 | 輸出八進(jìn)制數(shù) k= 2671.4563467284 print(oct(int(k))) |
運(yùn)行結(jié)果 | 0o5157 |
代 碼 | 輸出十六進(jìn)制數(shù) k= 2671.4563467284 print(hex(int(k))) |
運(yùn)行結(jié)果 | 0xa6f |
英文大小寫轉(zhuǎn)換(title()首字母大寫,upper()全大寫,lower()全小寫) | |
代 碼 | name = 'Adversity awake' print(name.title()) |
運(yùn)行結(jié)果 | Adversity Awake |
代 碼 | name = 'Adversity awake' print(name.upper()) |
運(yùn)行結(jié)果 | ADVERSITY AWAKE |
代 碼 | name = 'Adversity awake' print(name.lower()) |
運(yùn)行結(jié)果 | adversity awake |
打印字符 | |
代 碼 | for u in range(1, 100): print('{:c}'.format(int(u)),end =" | ") |
運(yùn)行結(jié)果 | | | | | | | | | | |
九九乘法表 | |
代 碼 | for i in range(1, 10): for j in range(1, i+1): print("{}*{}={}".format(j, i, i*j), end=" ") print() |
運(yùn)行結(jié)果 | 1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 1*4=4 2*4=8 3*4=12 4*4=16 1*5=5 2*5=10 3*5=15 4*5=20 5*5=25 1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64 1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81 |
打印實(shí)心菱形 | |
代 碼 | n=5 for i in range(1,n+1): print(" "*(n-i)+"*"*(2*i-1)) for i in range(1,n): print(" "*i+"*"*(2*(n-i)-1)) |
運(yùn)行結(jié)果 | * *** ***** ******* ********* ******* ***** *** * |
打印空心菱形 | |
代 碼 | n=5 print(" "*(n-1)+"*") for i in range(1, n): print(" "*(n-1-i)+"*"+" "*(2*i-1)+"*") for i in range(1, n-1): print(" "*i+"*"+" "*((n-1-i)*2-1)+"*") print(" "*(n-1)+"*") |
運(yùn)行結(jié)果 | * * * * * * * * * * * * * * * * * |
打印空心三角形 | |
代 碼 | n=5 print(" "*(n-1)+"*") for i in range(2, n): print(" "*(n-i)+"*"+" "*(2*(i-1)-1)+"*") print("* "*n) |
運(yùn)行結(jié)果 | * * * * * * * * * * * * |
打印實(shí)心三角形 | |
代 碼 | n=5 m = 8 for i in range(0, n): for j in range(0, m): print(end=" ") m = m - 1 for j in range(0, i + 1): print("* ", end=' ') print(" ") |
運(yùn)行結(jié)果 | * * * * * * * * * * * * * * * |
打印側(cè)三角形1 | |
代 碼 | 方法一: i = 5 while 0 < i <= 5: j = 1 while j <= i: print("* ", end = '') j += 1 print(" ") i -= 1 |
方法二: for i in range(0,5): tx="◆" print() for k in range(0,5): if i>k: continue print(tx,end="") | |
運(yùn)行結(jié)果 | ◆◆◆◆◆ ◆◆◆◆ ◆◆◆ ◆◆ ◆ |
打印側(cè)三角形2 | |
代 碼 | 方法一: i = 1 while i <= 5: j = 1 while j <= i: print("* ", end = '') j += 1 print(" ") i += 1 |
方法二: n = 5 print('\n'.join('◆' * i for i in range(1, n + 1))) | |
運(yùn)行結(jié)果 | ◆ ◆◆ ◆◆◆ ◆◆◆◆ ◆◆◆◆◆ |
打印側(cè)三角形3 | |
代 碼 | for i in range(0,5): tx='◆' tx1=' ' print() for j in range(0,5): print(tx if i<=j else tx1,end="") |
運(yùn)行結(jié)果 | ◆◆◆◆◆ ◆◆◆◆ ◆◆◆ ◆◆ ◆ |
打印三角形4 | |
代 碼 | for i in range(0,5): tx='◆' tx1=' ' print() for j in range(0,5): print(tx if i<=j else tx1,end="") |
運(yùn)行結(jié)果 | ◆◆◆◆◆ ◆◆◆◆ ◆◆◆ ◆◆ ◆ |
打印三角形5 | |
代 碼 | l=5 for i in range(l): for j in range(i): print(end=' ') for k in range(2*(l-i)-1): print(end='◆') print() |
運(yùn)行結(jié)果 | ◆◆◆◆◆◆◆◆◆ ◆◆◆◆◆◆◆ ◆◆◆◆◆ ◆◆◆ ◆ |
打印三角形6 | |
代 碼 | i = 1 while i <= 9: if i <= 5: print('◆ '*i) else: print('◆ '*(10 - i)) i += 1 |
運(yùn)行結(jié)果 | ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ ◆ |
打印平行四邊形 | |
代 碼 | l = 5 for i in range(l): for j in range(l-i): print(end=' ') for k in range(l): print(end='◆') print() |
運(yùn)行結(jié)果 | ◆◆◆◆◆ ◆◆◆◆◆ ◆◆◆◆◆ ◆◆◆◆◆ ◆◆◆◆◆ |
用字母單詞打印心形 | |
代 碼 | print('\n'.join([''.join([('Love'[(x-y) % len('Love')] if ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3 <= 0 else ' ') for x in range(-30, 30)]) for y in range(30, -30, -1)])) |
運(yùn)行結(jié)果 | |
用字符輸出 I 愛 U (2款效果) |
import time y = 2.5 while y>=-1.6: x = -3.0 while x<=4.0: if (x*x+y*y-1)**3<=3.6*x*x*y*y*y or (x>-2.4 and x<-2.1 and y<1.5 and y>-1) or (((x<2.5 and x>2.2)or(x>3.4 and x<3.7)) and y>-1 and y<1.5) or (y>-1 and y<-0.6 and x<3.7 and x>2.2): print(' ',end="") else: print('*',end="") x += 0.1 print() time.sleep(0.25) y -= 0.2 |
import time y = 2.5 while y>=-1.6: x = -3.0 while x<=4.0: if (x*x+y*y-1)**3<=3.6*x*x*y*y*y or (x>-2.4 and x<-2.1 and y<1.5 and y>-1) or (((x<2.5 and x>2.2)or(x>3.4 and x<3.7)) and y>-1 and y<1.5) or (y>-1 and y<-0.6 and x<3.7 and x>2.2): print('*',end="") else: print(' ',end="") x += 0.1 print() time.sleep(0.25) y -= 0.2 |
輸出五個(gè)愛心,分別由Dear I love you forever! 五個(gè)單詞填充而成。 | |
import time sentence = "Dear, I love you forever!" for char in sentence.split(): allChar = [] for y in range(12, -12, -1): lst = [] lst_con = '' for x in range(-30, 30): formula = ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3 if formula <= 0: lst_con += char[(x) % len(char)] else: lst_con += ' ' lst.append(lst_con) allChar += lst print('\n'.join(allChar)) time.sleep(1) | |
如果代碼中有漢字中文,運(yùn)行的時(shí)候python報(bào)錯(cuò),出現(xiàn)python中無法正常輸入中文,亂碼等情況:
編譯提示:SyntaxError: (unicode error) 'utf-8' codec can't decode byte 0x*** in position 0: ...
主要是由于編碼的問題引起的。
受開發(fā)系統(tǒng)和環(huán)境不同影響,解決辦法會(huì)有所不同,但一般按以下辦法處理就能解決,有需要者請(qǐng)自行嘗試適合自己系統(tǒng)的解決辦法:(記住,下面的方法不需要全部添加到python文件中,選擇其中一項(xiàng)或兩項(xiàng)嘗試,能解決問題即可)
在你的python文件(.py)文件第一行
1、開頭加入
# coding=utf-8
2、或者開頭加入
#-*- coding: UTF-8 -*-
3、或者開頭加入
#!usr/bin/env python3
# -*- coding:utf-8 -*-
4、或者開頭加上
# -*-coding:GBK -*-
5、或者開頭加上
#coding=utf-8
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
6、改變標(biāo)準(zhǔn)輸出print()的默認(rèn)編碼
sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='gb18030')
平時(shí)開發(fā)python時(shí)注意:
1、如果你用pycharm編譯書寫python代碼,pycharm默認(rèn)是會(huì)自動(dòng)保存為UTF-8格式的,如果你無意中修改過,請(qǐng)?jiān)趐ycharm工作界面右鍵—File-Encoding–選擇UTF-8編碼----reload-----reload anyway。如果還是不行,試一下路徑改為全英文。
2、如果你用其他編譯書寫代碼工具,請(qǐng)點(diǎn)擊
文檔>>設(shè)置文件編碼>>Unicode>>Unicode(UTF-8)
3、如果你用visual studio 編譯書寫python代碼,
visual studio 2022下python編程,報(bào)錯(cuò):SyntaxError: (unicode error) 'utf-8' codec can't decode byte 0xc8 in position 0: invalid continuation byte
解決辦法:
把Visual studio的文件保存編碼改為UTF-8:
---->Unicode(UTF-8帶簽名)-代碼頁65001
visual studio其他版本在文件菜單選項(xiàng)里選“高級(jí)保存選項(xiàng)”
---->Unicode(UTF-8帶簽名)-代碼頁65001
設(shè)置工程字符集為utf-8,選擇工程----右鍵----屬性----加上字符集編碼
題外話:
在用matplotlib(pyplot)圖表制作時(shí),標(biāo)題和坐標(biāo)軸中文顯示會(huì)出現(xiàn)異常,出現(xiàn)小方框,無法正常顯示,這時(shí),只需在文件頭部加入以下代碼即可:
#-*- coding: UTF-8 -*- import matplotlib.pyplot as plt import matplotlib as mpl mpl.rcParams["font.sans-serif"]=["SimHei"] mpl.rcParams["axes.unicode_minus"]=False |
將print的內(nèi)容寫入文件。
有時(shí)候,我們會(huì)遇到希望print的內(nèi)容不止打印屏幕上,還能保存在文件中。那么,我們可以試著將print的內(nèi)容寫入文件,方法如下:
建立test.py文件,輸入:
寫入文件 | |
代 碼 | # coding=utf-8 print("Hello, World!", file=open('file.txt', 'w')) |
運(yùn)行結(jié)果 | 運(yùn)行后,在test.py文件所在的目錄中,出現(xiàn)了一個(gè)file.txt文件,打開file.txt文件,會(huì)發(fā)現(xiàn)里面的內(nèi)容是: Hello, World! 說明我們的print()寫入文件成功。 |
寫入文件 | |
代 碼 | for i in range (1, 11): print(i,'\t',i*2,'\t',i*3,'\t',i*4,end='\n',file=open('file.txt',mode ='a',encoding='utf-8'), flush=False) |
運(yùn)行結(jié)果 | 運(yùn)行后,打開file.txt文件,會(huì)發(fā)現(xiàn)里面的內(nèi)容是: 1 2 3 4 2 4 6 8 3 6 9 12 4 8 12 16 5 10 15 20 6 12 18 24 7 14 21 28 8 16 24 32 9 18 27 36 10 20 30 40 說明我們的print()寫入文件成功。 |
到此,關(guān)于“Python中Print()函數(shù)怎么使用”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。