Python中格式化format()方法詳解


 Python中格式化format()方法詳解

Python中格式化輸出字符串使用format()函數, 字符串即類, 可以使用方法;

Python是完全面向對象的語言, 任何東西都是對象;

字符串的參數使用{NUM}進行表示,0, 表示第一個參數,1, 表示第二個參數, 以后順次遞加;

使用":", 指定代表元素需要的操作, 如":.3"小數點三位, ":8"占8個字符空間等;

還可以添加特定的字母, 如:

  1. 'b' - 二進制. 將數字以2為基數進行輸出.
  2. 'c' - 字符. 在打印之前將整數轉換成對應的Unicode字符串.
  3. 'd' - 十進制整數. 將數字以10為基數進行輸出.
  4. 'o' - 八進制. 將數字以8為基數進行輸出.
  5. 'x' - 十六進制. 將數字以16為基數進行輸出, 9以上的位數用小寫字母.
  6. 'e' - 冪符號. 用科學計數法打印數字, 用'e'表示冪.
  7. 'g' - 一般格式. 將數值以fixed-point格式輸出. 當數值特別大的時候, 用冪形式打印.
  8. 'n' - 數字. 當值為整數時和'd'相同, 值為浮點數時和'g'相同. 不同的是它會根據區域設置插入數字分隔符.
  9. '%' - 百分數. 將數值乘以100然后以fixed-point('f')格式打印, 值后面會有一個百分號.

數字(0, 1, ...)即代表format()里面的元素, 所以可以使用"."調用元素的方法;

# -*- coding: utf-8 -*- 
  
#==================== 
#File: abop.py 
#Author: Wendy 
#Date: 2013-12-03 
#==================== 
  
#eclipse pydev, python3.3 
  
age = 25
name = 'Caroline'
  
print('{0} is {1} years old. '.format(name, age)) #輸出參數 
print('{0} is a girl. '.format(name)) 
print('{0:.3} is a decimal. '.format(1/3)) #小數點后三位 
print('{0:_^11} is a 11 length. '.format(name)) #使用_補齊空位 
print('{first} is as {second}. '.format(first=name, second='Wendy')) #別名替換 
print('My name is {0.name}'.format(open('out.txt', 'w'))) #調用方法 
print('My name is {0:8}.'.format('Fred')) #指定寬度
# 輸出結果
Caroline is 25 years old. Caroline is a girl. 0.333 is a decimal. _Caroline__ is a 11 length. Caroline is as Wendy. My name is out.txt My name is Fred .

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM