格式化輸出 和format

2021-10-11 23:25:45 字數 3857 閱讀 6017

#字串和格式化輸出練習

#對字串進行的任何操作都不是改變字串本身,而是生成乙個新的字串

.操作函式名()

在字串中佔位可以用%或{},後面用%()或format函式輸入引數

" {} {} 「.format(,)

" %s %s」 %(,)

新手一定要注意format前面有.這個符號

s =

str(

3210

)for i in s:

print

("倒計時:{}"

.format

(i))

print

('下面是正文'

.center(50,

"-")

)r =

'hello world'

r = r.upper(

)#hello world---hello world

print

(r +

"---"

+ r)

#+連線

print

("%s---%s"

%(r,r)

)#%格式化順序定位

print

("{}---{}"

.format

(r,r)

)#順序定位

print

("---"

.format

(r,r)

)#索引定位

print

("---"

.format

(lower=r,upper=r)

)#關鍵字定位

print

('正文結束'

.center(50,

"-")

)#字串和格式化輸出練習

#對字串進行的任何操作都不是改變字串本身,而是生成乙個新的字串

a =" hello world "

print

("oringinal word:\nhello world "

)print

("大寫:"

+a.upper())

print

("首字母大寫:"

+a.capitalize())

print

("w換成p:"

+a.replace(

"w",

"p")

)print

("以o分割:{}"

.format

(a.split(

"o")))

print

("以l分割:%s"

%a.split(

"l")

)print

("去除兩邊空格:"

+a.strip())

print

("查詢l:"

)print

(a.find(

"l")

)#遞迴函式,首個字元挪到最後,直到沒有字元可以挪動,返回值輸出在最前面

defreverse

(s):

if s =="":

return

"翻轉過來的結果是:"

else

:return reverse(s[1:

])+ s[0]

print

(reverse(a)

)'''1、整數輸出

%o —— oct 八進位制

%d —— dec 十進位制

%x —— hex 十六進製制

2、浮點數輸出

%f ——保留小數點後面六位有效數字

%.3f,保留3位小數字

%e ——保留小數點後面六位有效數字,指數形式輸出

%.3e,保留3位小數字,使用科學計數法

%g ——在保證六位有效數字的前提下,使用小數方式,否則使用科學計數法

%.3g,保留3位有效數字,使用小數或科學計數法

3、字串輸出

%s%10s——右對齊,佔位符10位

%-10s——左對齊,佔位符10位

%.2s——擷取2位字串

%10.2s——10位佔位符,擷取兩位字串

format

1、位置匹配

(1)不帶編號,即「{}」

(2)帶數字編號,可調換順序,即「」、「」

(3)帶關鍵字,即「」、「」

2、格式轉換

'b' - 二進位制。將數字以2為基數進行輸出。

'c' - 字元。在列印之前將整數轉換成對應的unicode字串。

'd' - 十進位制整數。將數字以10為基數進行輸出。

'o' - 八進位制。將數字以8為基數進行輸出。

'x' - 十六進製制。將數字以16為基數進行輸出,9以上的位數用小寫字母。

'e' - 冪符號。用科學計數法列印數字。用'e'表示冪。

'g' - 一般格式。將數值以fixed-point格式輸出。當數值特別大的時候,用冪形式列印。

'n' - 數字。當值為整數時和'd'相同,值為浮點數時和'g'相同。不同的是它會根據區域設定插入數字分隔符。

'%' - 百分數。將數值乘以100然後以fixed-point('f')格式列印,值後面會有乙個百分號。

# f"***x"

# 可在字串前加f以達到格式化的目的,在{}裡加入物件,此為format的另一種形式:

'''name=

"huibif"

age=

18.5

hobby=

"badminton ,tennis , pingpang and the game of go"

print

(f"我的名字叫,年齡歲,我喜歡!"

)print

("我的名字叫{},年齡{}歲,我喜歡{}!"

.format

(name.capitalize(

),age,hobby)

)print

("我的名字叫,年齡歲,我喜歡!"

.format

(b=age,a=name.capitalize(

),c=hobby)

)print

("我的名字叫,年齡歲,我喜歡!"

.format

(hobby,age,name.capitalize())

)#我們可以看到format輸出,更加靈活,可以按照順序,可以按照編號,也可以按照關鍵字來輸出.

print

("我是分割線"

.center(40)

)print

("我的名字叫%s,年齡%8.3s,我喜歡%s"

%(name,age,hobby)

)#%s和{} 可以輸入數字\列表等等各種形式.是不可以輸入數字的,必須輸入字串

ret=

[name,age,hobby]

print

("我們測試的是%s"

%ret)

print

("我們測試的是{}"

.format

(ret)

)#%d和 #%d自動將浮點轉為整數

print

("我的名字叫%s,年齡%d歲,我喜歡%s"

%(name,age,hobby)

)#18歲

#輸入的是數字格式即可,可輸入整數和浮點數形式

print

("我的名字叫{},年齡歲,我喜歡{}"

.format

(name,age,hobby)

)#18.5歲

print

("我的名字叫{},年齡歲,我喜歡{}"

.format

(name,

int(age)

,hobby)

)#18歲

format格式化輸出

什麼是 format 相對於基本格式化輸出採用 的方法,format的功能強大,該函式把字串當乙個模板,通過傳入的引數進行格式化,並且使用大括號 作為特殊字元代替 有點類似c 裡面的佔位符 1 format 的基本用法 不帶編號,即 帶數字編號,可調換順序,即 帶關鍵字,即 例如 name sand...

format格式化輸出

自 本文中 代表輸出結果 代表注釋 format 主要的功能就是用 和 代替python2.6版本之前的 重要功能 print format 3,b 把3轉換成二進位制 print format 4,c 換成unicode字元 print format 11,d 十進位制 print format ...

python格式化輸出 和 format

在python的使用過程中難免會遇到類似下面的情況 result 0.1iteration 1000 print result after iteration d f iteration,result result after iteration 1000 0.100000輸出字串時經常需要用到佔位...