天天看點

python字元串處理為日期格式_python日期格式化,字元串格式化

strftime(format[, tuple]) -> string

将指定的struct_time(預設為目前時間),根據指定的格式化字元串輸出

python中時間日期格式化符号:

%y 兩位數的年份表示(00-99)

%Y 四位數的年份表示(000-9999)

%m 月份(01-12)

%d 月内中的一天(0-31)

%H 24小時制小時數(0-23)

%I 12小時制小時數(01-12)

%M 分鐘數(00=59)

%S 秒(00-59)

%f 毫秒(000000-999999)

%a 本地簡化星期名稱

%A 本地完整星期名稱

%b 本地簡化的月份名稱

%B 本地完整的月份名稱

%c 本地相應的日期表示和時間表示

%j 年内的一天(001-366)

%p 本地A.M.或P.M.的等價符

%U 一年中的星期數(00-53)星期天為星期的開始

%w 星期(0-6),星期天為星期的開始

%W 一年中的星期數(00-53)星期一為星期的開始

%x 本地相應的日期表示

%X 本地相應的時間表示

%Z 目前時區的名稱

%% %号本身

字元串格式化:

格式符

%[(name)][floags][width].[precision]typecode

(name) 可選,用于選擇指定的key

flags  可選,可提供的值有:

+    右對齊,整數前加正号,負數前加負号

-    左對齊,正數錢無符号,負數前加負号;

空格 右對齊;正數前加空格,負數前加負号

0    右對齊,正數前無符号,負數前加負号;用0填充

width   可選,占有寬度

typecode  必選

%s 字元串(str()的顯示)

%r 字元串采用repr()顯示

%c 單個字元

%b 二進制整數 bin

%i 十進制整數 int

%o  八進制整數 oct

%x 十六進制整數 hex

%f  浮點數

%e 指數

%% 字元% (前提是裡面要有格式符的話需要這麼寫)

案例:

a = "i am %s" % "alex"

a = "i am %s age %d " % ("alex",18)

a = "i am %(name)s age %(age)d" % {"name":"alex","age":18}

a = "percent %.2f" % 99.98234

a = "i am %(pp).2f" % {"pp":123.3245}

a = "i am %.2f %%" % {"pp":123.3223455}

format 格式化

type         【可選】格式化類型 •傳入” 字元串類型 “的參數 •s,格式化字元串類型資料

•空白,未指定類型,則預設是None,同s

•傳入“ 整數類型 ”的參數

•b,将10進制整數自動轉換成2進制表示然後格式化

•c,将10進制整數自動轉換為其對應的unicode字元

•d,十進制整數

•o,将10進制整數自動轉換成8進制表示然後格式化;

•x,将10進制整數自動轉換成16進制表示然後格式化(小寫x)

•X,将10進制整數自動轉換成16進制表示然後格式化(大寫X)

•傳入“ 浮點型或小數類型 ”的參數 •e, 轉換為科學計數法(小寫e)表示,然後格式化;

•E, 轉換為科學計數法(大寫E)表示,然後格式化;

•f , 轉換為浮點型(預設小數點後保留6位)表示,然後格式化;

•F, 轉換為浮點型(預設小數點後保留6位)表示,然後格式化;

•g, 自動在e和f中切換

•G, 自動在E和F中切換

•%,顯示百分比(預設顯示小數點後6位)

還是看案例吧

a = "i am {},age {}".format("seven",18,"alex")

b = "i am {},age {}, {}".format(*["seven", 18 ,"alex"])

c = "i am {0}, age {1}, really {0}".format("seven", 18)

d = "i am {0}, age{1}, really {0}".format(*["seven", 18])

e = "i am {name}, age {age}, really {name}".format(name="seven", age = 18)

f = "i am {name}, age {age}, rally {name}".format(**{"name":"seven", "age":18})

g = "i am {0[0]},age{0[1]}, really{0[2]}".format([1,2,3],[11,22,33])

h = "i am {:s}, age {:d}, money {:f}".format("seven", 18, 888.1)

i = "i am {:s}, age {:d}".format(*["seven", 18])

j = "i am {name:s}, age {age:d}".format(name="seven",age=18)

k = "i am {name:s}, age {age:d}".format(**{"name":"seven","age":18})

l = "numers:{:b},{:o},{d},{:x},{:X},{:%}".format(15,15,15,15,15,15.32445,2)

m = "numbers:{0:b},{0:o},{0:d},{0:x},{0:%}".format(15)

tpl = "numbers: {num:b},{num:o},{num:d},{num:x},{num:X}, {num:%}".format(num=15)

更多格式化操作:https://docs.python.org/3/library/string.html

http://www.cnblogs.com/wupeiqi/articles/5484747.html