91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

python中format的用法示例

沐橙
2239
2021-05-07 10:04:56
欄目: 編程語言

python中format是一種字符串格式化的方法,它增強了字符串格式化的功能,主要是用來構造字符串,用法如“str.format()”;并且format方法是通過 {} 和 : 來代替舊版本中的 % ,在 {} 符號操作過程中,每一個 {} 都可以設置順序,分別與format的參數順序對應,如果沒有設置{}下標,默認重0開始遞增。

python中format的用法示例

具體用法分析如下:

format 基本語法是通過 {} 和 : 來代替以前的 % 。

format 函數可以接受不限個參數,位置可以不按順序。

format優點:

format是python2.6新增的一個格式化字符串的方法,相對于老版的%格式方法,它有很多優點。

1.不需要理會數據類型的問題,在%方法中%s只能替代字符串類型

2.單個參數可以多次輸出,參數順序可以不相同

3.填充方式十分靈活,對齊方式十分強大

4.官方推薦用的方式,%方式將會在后面的版本被淘汰

format基本用法:

"Hello {0} {1}".format("Chen","xin") # 引用第一個參數

# 輸出 'Hello Chen xin'

"{} is cute".format("Chen xin") # 引用第一個參數

# 輸出 'Chen xin is good'

"My name is {name}".format(name="Chen xin") # 引用名字為name的參數

# 輸出 'My name is Chen xin'

1. 類型轉換

  • !s

  • !r

"Chen xin is a cute {!s}".format("baby") # !s 相當于對于參數調用str()

# 輸出 'Peppa pig is a cute baby' 

"Chen xin is a cute {!r}".format("baby") # !r 相當于對于參數調用repr()

# 輸出 "Peppa pig is a cute 'baby'"

2. 通過位置來填充字符串

print('{0}, {1}, {2}'.format('a', 'b', 'c'))  # a, b, c

print('{}, {}, {}'.format('a', 'c'))     # a, c

print('{2}, {0}'.format('a', 'c'))  # c, a

print('{2}, {0}'.format(*'abc'))         # c, a

print('{0} {1} {0}'.format('aa', 'bb'))         # aa bb aa

同一個參數可以填充多次,這個是format比%先進的地方

3. 按名稱訪問參數

print('name: {last_name}{first_name}'.format(last_name='chen', first_name='xin'))

# name: chenxin 

name= {'last_name': 'chen', 'first_name': 'xin'}

print('name: {last_name}, {first_name}'.format(**name))

# name: chenxin

4. 通過參數屬性訪問

class MyList:

    def __init__(self, x, y):

        self.x, self.y = x, y        

    def __str__(self):

        return 'MyList({self.x}, {self.y})'.format(self = self)

print(str(MyList('小新', 'www.neiyidaogou.com'))) 

# 網站名:小新, 地址 www.neiyidaogou.com

5. 通過參數的items訪問

my_list = ['小新', 'www.neiyidaogou.com'] 

print("網站名:{0[0]}, 地址 {0[1]}".format(my_list))  # "0" 是必須的

# 網站名:小新, 地址 www.neiyidaogou.com

6. 對齊字符串

"{:>5}".format(1) # 設置寬度為5,右對齊

"{:>5}".format(10)

"{:>5}".format(100)

"{:>5}".format(1000)

# 輸出下面的結果

'    1'

'   10'

'  100'

' 1000'

print('{:_<30}'.format('left aligned'))

#'left aligned__________________'

print('{:_>30}'.format('right aligned'))

#'__________________right aligned' 

print('{:_^30}'.format('centered'))

#'__________________centered__________________'

  • ^   居中     后面帶寬度,

  • <   左對齊 后面帶寬度,

  • >   右對齊 后面帶寬度,

  •  :   號后面帶填充的字符,只能是一個字符,不指定則默認是用空格填充。

7. 截斷字符串

'{:.5}'.format('Hello Chen') # 截取前5個字符

# 輸出 'Hello'

8. 數字格式化

print("{:.2f}".format(3.1415926));

# 3.14

  • + 表示在正數前顯示 +,

  • -  負數  

  • (空格) 表示在正數前加空格

  • b  二進制

  • d  十進制

  • o  八進制

  • x  十六進制

9. 使用逗號作為千位分隔符

print('{:,}'.format(1234567890)) 

#'1,234,567,890'

10. 表示一個百分比

print('number: {:.2%}'.format(0.61898)) 

# number: 61.90%

11. 時間格式化

import datetime 

d = datetime.datetime(2018, 7, 31, 15, 58, 58)

print('{:%Y-%m-%d %H:%M:%S}'.format(d)) 

# 2018-07-31 15:58:58

12. 訪問元組中的元素

a = (1,2)

'X: {0[0]};  Y: {0[1]}'.format(a)

# 輸出 'X: 1;  Y: 2'

# 注意:用%格式化字符串不支持此功能

13. 訪問字典中的元素

people = {"name": "Chen", "age": 18}

"My name is {p[name]} and my age is {p[age]}".format(p=people ) 

# 輸出 'My name is Chen and my age is 18'

# 注意:用%格式化字符串不支持此功能

0
永平县| 赤城县| 儋州市| 牡丹江市| 通江县| 澄江县| 措美县| 信阳市| 怀仁县| 沙雅县| 湘乡市| 达日县| 濮阳县| 德阳市| 桃园市| 兰溪市| 沈丘县| 临湘市| 巴青县| 六枝特区| 伊宁市| 博乐市| 琼海市| 武胜县| 保山市| 清丰县| 巴彦淖尔市| 东乡| 康马县| 乐清市| 岚皋县| 岳阳市| 积石山| 甘洛县| 涡阳县| 刚察县| 霍山县| 安岳县| 莒南县| 乐山市| 谢通门县|