最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解Python中的format格式化函數(shù)的使用方法

 更新時間:2019年11月20日 11:58:30   作者:KaiSarH  
這篇文章主要介紹了詳解Python中的format格式化函數(shù)的使用方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

format函數(shù)實現(xiàn)字符串格式化的功能

基本語法為:

通過 : 和 {} 來控制字符串的操作

一、對字符串進(jìn)行操作

1. 不設(shè)置指定位置,按默認(rèn)順序插入

①當(dāng)參數(shù)個數(shù)等于{}個數(shù)的時候

str_1 = "小明{}小美,可是小美{}小明".format("喜歡", "不喜歡")
print(str_1)

運行結(jié)果:

在這里插入圖片描述

②當(dāng)參數(shù)個數(shù)大于{}個數(shù)的時候

str_1 = "小明{}小美,可是小美{}小明".format("喜歡", "不喜歡", "也不喜歡", "更不喜歡")
print(str_1)

運行結(jié)果:

在這里插入圖片描述

③當(dāng)參數(shù)個數(shù)習(xí)小于{}個數(shù)的時候

str_1 = "小明{}小美,可是小美{}小明".format("喜歡")
print(str_1)

運行結(jié)果:

程序會報錯:越界

在這里插入圖片描述

由此可以得出,當(dāng)我們不指定參數(shù)位置的時候,format函數(shù)會幫我們按順序?qū)⑵浣邮盏降膮?shù),填入到{}中。

2. 設(shè)置指定位置

當(dāng)format接收到的參數(shù)個數(shù)大于{}或者我們想將不同{}替換為相同字符串的時候,我們可以在{}內(nèi)指定接收第幾個參數(shù)。format接收的參數(shù),從0開始。

str_1 = "小明{1}小美,可是小美{3}小明,小美{0}小明,小美{2}小華".format("不喜歡", "喜歡", "更喜歡", "很討厭")
print(str_1)

在這一句代碼中,分別為不同的{}指定了接收的參數(shù)位置。
運行結(jié)果:

在這里插入圖片描述

很顯然,如果我們的{}的個數(shù)小于format的參數(shù)也是OK的。

str_1 = "小明{1}小美,可是小美{3}小明,小美{2}小華".format("不喜歡", "喜歡", "更喜歡", "很討厭")
print(str_1)

運行結(jié)果:

在這里插入圖片描述

由此我們得出結(jié)論:

在使用format()函數(shù)的時候,我們給format()的個數(shù)是不限的,如果我們并沒有在{}中指定位置,那么format()會自動按順序?qū)?shù)填入{},而如果我們?yōu)閧}指定了位置,那么format()就會把指定位置的參數(shù)填入對應(yīng)的{}中。

3.設(shè)置format()參數(shù)的值①直接在format()中進(jìn)行賦值

str_1 = "博主:{name}, 博客地址:{url}".format(name="KaiSarH", url="https://blog.csdn.net/KaiSarH")

運行結(jié)果:

在這里插入圖片描述

②通過傳遞多值參數(shù)向format傳遞參數(shù)進(jìn)而對{}進(jìn)行賦值

關(guān)于多值參數(shù),可以看一下Python學(xué)習(xí)筆記之函數(shù)的參數(shù)和返回值

- 使用**傳遞字典。

在Python中,使用**可以傳遞一個字典參數(shù),我們可以使用鍵名進(jìn)行匹配,進(jìn)而進(jìn)行賦值

dict_1 = {"name": "KaiSarH",
     "url": "https://blog.csdn.net/KaiSarH"}
str_2 = "博主:{name}, 博客地址:{url}".format(**dict_1)

運行結(jié)果:

在這里插入圖片描述

我們向format()傳遞的字典參數(shù),所包含的鍵值對,必須包含所有的{}名。只能多(正確),不能少(報錯)。

dict_1 = {"name": "KaiSarH",
     "url": "https://blog.csdn.net/KaiSarH",
     "login": "login information"}
str_2 = "博主:{name}, 博客地址:{url}".format(**dict_1)
print(str_2)
dict_1 = {"name": "KaiSarH",
     "key": "https://blog.csdn.net/KaiSarH",
     "login": "login information"}
str_4 = "博主:{name}, 博客地址:{url}".format(**dict_1)
print(str_4)

運行結(jié)果:

在這里插入圖片描述

注意:我們可以向format()中傳遞多個字典,但是不可以含有相同鍵。

dict_1 = {"name": "KaiSarH",
     "url": "https://blog.csdn.net/KaiSarH",
     "login": "login information"}
str_2 = "博主:{name}, 博客地址:{url}".format(**dict_1)
dict_2 = {"name": "KaiSarH",
     "key": "https://blog.csdn.net/KaiSarH",
     "login": "login information"}
str_4 = "博主:{name}, 博客地址:{url}".format(**dict_1, **dict_2)
print(str_4)

運行結(jié)果:

在這里插入圖片描述

- 傳遞列表

list_1 = ["KaiSarH","https://blog.csdn.net/KaiSarH"]
str_3 = "博主:{0[0]}, 博客地址:{0[1]}".format(list_1)

運行結(jié)果:

在這里插入圖片描述

除了傳遞一個列表,我們也可以向format()中傳遞多個列表,只需保證取值的時候無誤就可以。

list_1 = ["ZhangSan","https://blog.csdn.net/KaiSarH"]
list_2 = ["KaiSarH", "http:www.baidu.com"]
str_3 = "博主:{1[0]}, 博客地址:{0[1]}".format(list_1, list_2)

運行結(jié)果:

在這里插入圖片描述

③向format()中傳入對象,進(jìn)行賦值

與列表相同,我們同樣可以向format()中傳遞多個對象,只要在賦值的之后做好對應(yīng)就可以。

class Dog:
  def __init__(self, name):
    self.name = name

class Mouse:
  def __init__(self, name):
    self.name = name


tom = Dog("Tom")
jerry = Mouse("Jerry")

str_1 = "{0.name} want to eat {1.name}".format(tom, jerry)
print(str_1)

運行結(jié)果:

在這里插入圖片描述

二、對數(shù)字進(jìn)行格式化

對于數(shù)字的格式化,我們主要是在{}中進(jìn)行設(shè)置格式化數(shù)字的多種方法

1.保留小數(shù)點后n位

格式:{:.nf}

print("	{:.1f}".format(3.1415926535))
print("	{:.3f}".format(3.1415926535))
print("	{:.4f}".format(3.1415926535))
print("	{:.6f}".format(3.1415926535))

運行結(jié)果:

在這里插入圖片描述

2.帶符號保留小數(shù)點后n位

格式:{:+.nf}

print("	{:+.1f}".format(3.1415926535))
print("	{:+.3f}".format(-3.1415926535))
print("	{:+.4f}".format(3.1415926535))
print("	{:+.6f}".format(-3.1415926535))

運行結(jié)果:

在這里插入圖片描述

{:.nf}和 {:+.nf}的區(qū)別
負(fù)數(shù)無區(qū)別,整數(shù)有無符號。

print("	{:.1f}".format(3.1415926535))
print("	{:+.1f}".format(3.1415926535))
print("	{:.3f}".format(-3.1415926535))
print("	{:+.3f}".format(-3.1415926535))
print("	{:.4f}".format(3.1415926535))
print("	{:+.4f}".format(3.1415926535))
print("	{:.7f}".format(-3.1415926535))
print("	{:+.7f}".format(-3.1415926535))

運行結(jié)果:

在這里插入圖片描述

3.不帶小數(shù)(只保留整數(shù))

格式:{:.0f}

print("	{:.0f}".format(3.1415926535))
print("	{:.0f}".format(-3.1415926535))
print("	{:.0f}".format(3.8415926535))

運行結(jié)果:

在這里插入圖片描述

4.如果整數(shù)的位數(shù)不足n位,在左邊進(jìn)行數(shù)字補零。如果已經(jīng)夠了n位,直接輸出

格式:{:0>nd}

print("	{:0>2d}".format(5))
print("	{:0>3d}".format(5))
print("	{:0>5d}".format(123456))

運行結(jié)果:

在這里插入圖片描述

5.如果整數(shù)的位數(shù)不足n位,在右邊進(jìn)行x補充。如果已經(jīng)夠了n位,直接輸出

格式:{:x<4d}

print("{:x<2d}".format(5))
print("{:x<3d}".format(5))
print("{:x<4d}".format(123456))

運行結(jié)果:

在這里插入圖片描述

很顯然,在補充操作中,我們既可以指定在哪一邊補充,也可以指定補充的值為什么。
我們也可以利用print("{:x>.2f}".format(3.1))或者{:x<.2f}對浮點數(shù)進(jìn)行操作

6.以逗號分隔數(shù)字格式,每三位加入一個,

格式:{:,}

print("	{:,}".format(314156926))

運行結(jié)果:

在這里插入圖片描述

7.百分比格式(在我理解,就是把數(shù)字×100,保留兩位數(shù)字,然后加一個百分號)

格式:{:.2%}

print("{:.2%}".format(0.27896))

運行結(jié)果:

在這里插入圖片描述

8.指數(shù)記法

格式:{:.2e}

print("{:.2e}".format(100))

運行結(jié)果:

在這里插入圖片描述

9.右對齊(默認(rèn)寬度為10)

格式:{:>10d}

print("	{:>10d}".format(100))
print("	{:>10d}".format(2))
print("	{:>10d}".format(12580))

運行結(jié)果:

在這里插入圖片描述

10.左對齊(默認(rèn)寬度為10)

格式:{:<10d}

print("{:<10d}".format(100))
print("{:<10d}".format(2))
print("{:<10d}".format(12580))

運行結(jié)果:

在這里插入圖片描述

11.中間對齊(默認(rèn)寬度為10)

格式:{:^10d}

print("{:^10d}".format(100))
print("{:^10d}".format(2))
print("{:^10d}".format(12580))

運行結(jié)果:

在這里插入圖片描述

12.進(jìn)制——b、d、o、x 分別是二進(jìn)制、十進(jìn)制、八進(jìn)制、十六進(jìn)制。

格式:
‘{:b}'.format(11)
‘{:d}'.format(11)
‘{:\o}'.format(11)
‘{:x}'.format(11)
‘{:#x}'.format(11)
‘{:#X}'.format(11)

print("{:b}".format(125))
print("{:d}".format(125))
print("{:o}".format(125))
print("{:x}".format(125))
print("{:#x}".format(125))
print("{:#X}".format(125))

運行結(jié)果:

在這里插入圖片描述

當(dāng)我們在格式化中,傳入的參數(shù)中包含{}的時候,我們可以用{}進(jìn)行轉(zhuǎn)義。
當(dāng)我們直接在format()中對參數(shù)進(jìn)行賦值的時候,我們必須要把對參數(shù)的賦值放在最后

print("{name}對應(yīng)的位置是{{0}},{}對應(yīng)的位置是{{1}}".format("489", "zhangsan", name="123"))

運行結(jié)果:

在這里插入圖片描述

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • python中正則表達(dá)式的使用方法

    python中正則表達(dá)式的使用方法

    正則表達(dá)式經(jīng)常被用到,而自己總是記不全,匯總一份完整的以備不時之需。
    2018-02-02
  • 利用python循環(huán)創(chuàng)建多個文件的方法

    利用python循環(huán)創(chuàng)建多個文件的方法

    今天小編就為大家分享一篇利用python循環(huán)創(chuàng)建多個文件的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • Python十大列表操作技巧分享

    Python十大列表操作技巧分享

    這篇文章給大家介紹了Python十大列表操作技巧分享,列表展開,降維,分塊,轉(zhuǎn)置,查找眾數(shù),判斷重復(fù)元素等十個操作技巧,并通過代碼示例給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2024-01-01
  • Python實現(xiàn)Appium錄屏功能示例代碼

    Python實現(xiàn)Appium錄屏功能示例代碼

    這篇文章主要介紹了Python實現(xiàn)Appium錄屏功能,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-06-06
  • python3實現(xiàn)點餐系統(tǒng)

    python3實現(xiàn)點餐系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了python3實現(xiàn)點餐系統(tǒng),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • Python基礎(chǔ)之Socket通信原理

    Python基礎(chǔ)之Socket通信原理

    這篇文章主要介紹了Python基礎(chǔ)之Socket通信原理,文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)python基礎(chǔ)的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-04-04
  • python中使用sys模板和logging模塊獲取行號和函數(shù)名的方法

    python中使用sys模板和logging模塊獲取行號和函數(shù)名的方法

    這篇文章主要介紹了python中使用sys模板和logging模塊獲取行號和函數(shù)名的方法,需要的朋友可以參考下
    2014-04-04
  • tensorflow中Dense函數(shù)的具體使用

    tensorflow中Dense函數(shù)的具體使用

    本文主要介紹了tensorflow中Dense函數(shù)的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • Python字典的基本用法實例分析【創(chuàng)建、增加、獲取、修改、刪除】

    Python字典的基本用法實例分析【創(chuàng)建、增加、獲取、修改、刪除】

    這篇文章主要介紹了Python字典的基本用法,結(jié)合具體實例形式分析了Python字典的創(chuàng)建、增加、獲取、修改、刪除等基本操作技巧與注意事項,需要的朋友可以參考下
    2019-03-03
  • Pandas.DataFrame的行名和列名的修改

    Pandas.DataFrame的行名和列名的修改

    本文主要介紹了Pandas.DataFrame的行名和列名的修改,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02

最新評論

通州市| 恩平市| 兴山县| 平顶山市| 呼伦贝尔市| 西充县| 郑州市| 太和县| 仪征市| 阿鲁科尔沁旗| 南乐县| 双鸭山市| 林甸县| 米易县| 高安市| 南川市| 信宜市| 嘉定区| 依兰县| 富民县| 蒙阴县| 迁西县| 靖远县| 沈丘县| 正安县| 昆山市| 松滋市| 滁州市| 封开县| 乌兰县| 申扎县| 西安市| 维西| 昔阳县| 锡林浩特市| 牟定县| 图片| 西吉县| 潞西市| 日照市| 高陵县|