/前言/
???關(guān)于Python字符串格式化知識(shí),相信大家也都不陌生,基礎(chǔ)的格式化替換,在此就不再贅述了,今天給大家分享的是三個(gè)字符串格式化進(jìn)階知識(shí),希望對(duì)大家的學(xué)習(xí)有所幫助。
/一、格式化字符"%03d"/
????正常我們輸出一個(gè)十進(jìn)制整數(shù)的時(shí)候,直接使用%d就足以,如下圖所示。
????這種正常打印數(shù)字肯定沒有問題,但是在生活中,如果需要打印工號(hào)、學(xué)號(hào)等等有00開頭的數(shù)字,如果再使用這種格式化字符串打印的話,肯定就難以實(shí)現(xiàn)。
????今天小編就是要教會(huì)大家打印這種格式化字符串的方法,這里引入“%03d”,其中數(shù)字3可以更改為其他數(shù)字。該字符串格式化代表的意思是控制臺(tái)輸出幾位數(shù)字,如果數(shù)字是3,就輸出3個(gè)數(shù)字,如果實(shí)際的數(shù)字大于3位數(shù)的話,就輸出原始數(shù)據(jù),如果小于3位數(shù)的話,則自動(dòng)在前面自動(dòng)補(bǔ)0;如果數(shù)字是6,就輸出6個(gè)數(shù)字,如果實(shí)際的數(shù)字大于6位數(shù)的話,就輸出原始數(shù)據(jù),如果小于6位數(shù)的話,則自動(dòng)在前面自動(dòng)補(bǔ)0,效果如下圖所示。
number1 = 26print("This number is %03d"% number1)age1 = 888print("This number is %03d"% age1)number2 = 26print("This number is %06d"% number2)age2 = 888888print("This number is %06d"% age2)
通過以上方法就可以順利的打印學(xué)號(hào)、工號(hào)等以0開始的字符串,而且顯得特別的對(duì)齊工整。
/二、格式化字符"%.2f"/
????在Python中格式化打印浮點(diǎn)數(shù)的時(shí)候,一般會(huì)默認(rèn)打印小數(shù)點(diǎn)后6位,如下圖所示。
????但是實(shí)際上我們并不需要那么多的小數(shù)位,一般我們習(xí)慣性保留兩位小數(shù)位,那么我們可以使用格式符"%.2f"的形式,其中數(shù)字2表示保留兩位小數(shù),如果你需要保留3位小數(shù)的話,那么你就可以將2變成3即可,代碼和結(jié)果運(yùn)行圖如下所示。
weight = 64.5print("His weight is %.2f kg."% weight)print("His weight is %.3f kg."% weight)
/三、格式化字符“%s”/
????在Python格式化字符串里邊,有一個(gè)格式化符號(hào)非常的給力,那就是"%s",為啥這么說呢?因?yàn)樗粌H可以格式化輸出打印字符串,還可以格式化輸出數(shù)字、浮點(diǎn)數(shù),如下圖所示。
age =26weight =64.5id =2print("His age is %s, weight is %.2f kg, id is %d."% (age, weight, id))print("His age is %s, weight is %s kg, id is %s."% (age, weight, id))
從上圖可以看到,使用格式化符號(hào)%d,%f可以打印出結(jié)果,使用%s也可以打印出來,這個(gè)就比較特殊了。
/小結(jié)/
????本文主要介紹了Python格式化字符串進(jìn)階知識(shí),給大家著重介紹了“%03d”、"%.2f"和"%s"的格式化進(jìn)階用法,在實(shí)際生活和工作上還蠻常用,希望對(duì)大家的學(xué)習(xí)和工作有幫助。