python中用%代**式符,或者叫佔位符;
表示格式化操作,將其轉化成相應的資料型別
age =
10print
('我今年%d歲'
%age)
# 我今年10歲
在程式中,看到了 % 這樣的操作符,這就是python格式化輸出
age =
19name =
'xiaoming'
print
('我的名字是%s,年齡是%d歲'
%(name,age)
)# 我的名字是xiaoming,年齡是19歲
下面是常用的格式符號
格式符號
轉換%c
字元%s
通過str()字串轉換來格式化
%i有符號十進位制整數
%d有符號十進位制整數
%u無符號十進位制整數
%o八進位制整數
%x十六進製制整數(小寫字母)
%x十六進製制整數(大寫字母)
%e索引符號(小寫『e』)
%e索引符號(大寫『e』)
%f浮點實數
%g%f和%e的簡寫
%g%f和%e的簡寫
name =
'xiaoming'
qq =
2915241235
num =
13683823372
dizhi =
'xx市xx區'
print
('******************************'
)print(%
(name,qq,num,dizhi)
)# ******************************
# 姓名:xiaoming
# 手機號:13683823372
格式化字串的函式 str.format(),它增強了字串格式化的功能
基本語法是在字串中定義 {} ,字串後面加上 .format()函,函式中按花括號的順序填寫要補入的字元或字串變數(也可以設定指定的引數及順序)
下面演示了 format函式 的使用方法:
不設定指定位置,按預設順序
str1 =
"{} {}"
.format
("hello"
,"world"
)print
(str1)
# hello world
設定指定位置
str1 =
" ".
format
("hello"
,"world"
)str2 =
" "
.format
('hello'
,'world'
)print
(str1,
'\n'
,str2)
# hello world
# world hello world
指定引數名
))通過字典設定引數
site =
print(.
format
(**site)
)
通過列表索引設定引數(「0」是必須的)
)格式化數字
print(''
.format
(3.1415926))
# 3.14
格式化數字的其他引數列表:
數字格式
輸出描述
3.1415926
3.14
保留小數點後兩位
3.1415926
+3.14
帶符號保留小數點後兩位
-1-1.00
帶符號保留小數點後兩位
2.71828
3不帶小數505
數字補零(填充左邊, 寬度為2)
55***
數字補x(填充右邊, 寬度為4)
1010xx
數字補x(填充右邊, 寬度為4)
1000000
1,000,000
以逗號分隔的數字格式
0.25
25.00%
百分比格式
1000000000
1.00e+09
指數記法
1313
右對齊(預設, 寬度為10)
1313
左對齊(寬度為10)
1313
中間對齊(寬度為10)
方法 replace() 將字元中的 old(舊字串)替換成 new (新字串)
replace() 語法:
str.replace(old,new,[,max])
引數:old – 將被替換的字串;
new – 新字串,用於替換old字串;
max – 可選字串,替換不超過 max 次.
str1 =
'你好$$$我正在學python@#@#現在需要&%&%修改字串'
str2 = str1.replace(
'$$$'
,' '
).replace(
'@#@#'
,' '
).replace(
'&%&%'
,' '
)print
(str2)
# 你好 我正在學python 現在需要 修改字串
如果指定第三個引數 max ,則替換不超過 max 次;
replace不會改變原string的內容
name =
'xiaomzzg'
print
(name.replace(
'zz'
,'in',0
))print
(name)
# xiaoming
# xiaomzzg
split() 通過指定分隔符對字串進行切片,返回乙個字串列表,如果引數 num 有指定值,則分隔 num+1 個子字串
語法:str.split(str="",num=string.count(str))
引數:str – 分隔符,預設為所有的空字元,包括空格、換行(\n)、製表符(\t)等
num – 分隔次數,預設為-1,即分隔所有
str1 =
"aaa\nbbb\nccc"
print
(str1.split())
# 以空格為分隔符,包含 \n
print
(str1.split(
'\n',1
))# 以\n為分隔符,分隔成兩個
name =
'wang#xiao#ming'
print
(name.split(
'#',2)
)# 以#為分隔符,分割成3個
# ['aaa', 'bbb', 'ccc']
# ['aaa', 'bbb\nccc']
# ['wang', 'xiao', 'ming']
Python基礎之格式化輸出
有乙個需求,問使用者的姓名,年齡,工作,愛好,然後列印成以下格式 info of yangwei name yangwei age 22 job it hobby read end 這種形式用字元拼接的方式還很難實現這種格式的輸出,因此需要格式化輸出。只需要把列印的格式先準備好,由於裡面的一些資訊是...
Python 基礎 格式化輸出
現在需要我們錄入我們身邊好友的資訊,格式如下 info of alex li name alex li age 22 job teacher hobbie girl end 我們現在能想到的辦法就是用一下方法 name input 請輸入姓名 age input 請輸入年齡 job input 請輸...
python基礎 格式化輸出
coding utf 8 name tom age 13 通過連線字元 進行拼接 print name is name age is str age 通過格式符 s,d 進行替換,其中 s用於指定字串,d data 用於指定數字 如果不確定列印的數字的型別,則可以使用 r表示 print name ...