欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解Python中的字符串格式化

 更新時(shí)間:2021年12月16日 15:33:26   作者:雷學(xué)委  
這篇文章主要為大家介紹了Python中的字符串格式化,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助

什么是字符串格式化,為什么需要這樣做?

我們有時(shí)候刷抖音/B站看到封面很好看,但是進(jìn)入直播發(fā)現(xiàn),不過(guò)如此!
想必主播通過(guò)某種方式把輸出轉(zhuǎn)換為讀者想看的內(nèi)容。

是不是大概懂了什么是格式化和格式化的必要性了!

僅僅類(lèi)比,我們程序的格式化,并沒(méi)有那么過(guò)份!1輸出還是1,只是人類(lèi)更好讀懂了。

而不像網(wǎng)絡(luò)主播那樣稍微格式化(工程挺大)從1變成了0。

畢竟程序不能欺騙開(kāi)發(fā)者。

必要性:輸出為更好的格式化,方便開(kāi)發(fā)者和用戶(hù)讀懂輸出。

程序中都有哪些格式化?

網(wǎng)上說(shuō)有三種,四種,未來(lái)還可能會(huì)增加其他庫(kù)。

學(xué)委開(kāi)發(fā)過(guò)多種語(yǔ)言,大概總結(jié)如下兩個(gè)大類(lèi):

  • 字符串占位符替換
  • 字符串關(guān)鍵字替換

下面看看代碼

占位符格式化

第一種%占位符格式化

python中我們最常見(jiàn)的是'%‘ 這類(lèi)占位符號(hào)

str = "hello"
"this is a string: %s" % str 
"this is a string: %s, %s" % (str, str) 

上面我們觀察一下,可以發(fā)現(xiàn)輸出中‘%s'被替換為了'hello';

另一個(gè)是多個(gè)‘%s'的替換是用一個(gè)元組,按照對(duì)應(yīng)下標(biāo)來(lái)替換。

格式化基本上都可以使用'%s'來(lái)完成。

好,懂了這個(gè),我們繼續(xù)看看下面的代碼:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/30 10:13 上午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學(xué)委
# @XueWeiTag: CodingDemo
# @File : string_format.py
# @Project : hello
import sys
first = "持續(xù)學(xué)習(xí)"
second = "持續(xù)開(kāi)發(fā)"
slogan = first + second
print(slogan)
banner = "*" * 16
print(banner)
slice = slogan[2:4]
print(slice)
print(""""學(xué)習(xí)" in slogan : %s""" % ("學(xué)習(xí)" in slogan))
print(""""不學(xué)習(xí)" not in slogan : %s""" % ("不學(xué)習(xí)" not in slogan))
print(r"""打印\n換行被當(dāng)做普通字符輸出了!""")
# 以上我們都可以看到%,很多次代碼都有說(shuō)到這個(gè),但是并沒(méi)有過(guò)多解釋
print("%s" % slogan)  # 最常用了%s 格式化字符串
# print("%c"%'ccc')#TypeError: %c requires int or char
print("%c" % 'c')  # %c 通常用來(lái)強(qiáng)制檢測(cè)待輸出的字符串必須長(zhǎng)度為1
print("%c" % '雷')  # %c 通常用來(lái)強(qiáng)制檢測(cè)待輸出的字符串必須長(zhǎng)度為1
number = 102.40101
print("%%i 符號(hào)整數(shù) %i" % number)
print("%%i 符號(hào)整數(shù):%i" % -number)
print("%%d 符號(hào)整數(shù) %d" % number)
print("%%d 符號(hào)整數(shù) %d" % -number)
print("%%u 無(wú)符號(hào)整數(shù):%u" % number)
print("%%u 無(wú)符號(hào)整數(shù):%u" % -number)
#print("八進(jìn)制 %o" % number)
print("%%o 八進(jìn)制 %o" % 102)
print("%%x16進(jìn)制 %x" % 102)
#print("16進(jìn)制 %X" % 102)
print("%%e 自然常數(shù) e進(jìn)制: %e" % number)
#print("%E" % number)
print("%%f 浮點(diǎn)數(shù) %f" % number)
print("%%g 靈活的有效顯示:%g" % number) #保證顯示6微有效數(shù)字的前提下,靈活的選擇小數(shù)方式,或者科學(xué)計(jì)數(shù)法
#print("%G" % number)
print("%%g 靈活的有效顯示:%g" % (number*10001)) #保證顯示6微有效數(shù)字的前提下,靈活的選擇小數(shù)方式,或者科學(xué)計(jì)數(shù)法
#下面兩種寫(xiě)法需要注意執(zhí)行順序
#print("%g" % number*10001) #注意這種寫(xiě)法
#print("%g" % number**10) #注意這種寫(xiě)法

讀者可以直接復(fù)制運(yùn)行代碼,學(xué)委補(bǔ)充了運(yùn)行效果圖:

屏幕快照 2021-10-31 下午3.53.35.png

這里比較特殊的是‘%u'無(wú)符號(hào)整型的展示,正負(fù)數(shù)并無(wú)區(qū)別。

那是肯定的,無(wú)符號(hào)整型跟有符號(hào)整型是表示數(shù)的兩種手段。
但是無(wú)符號(hào)的比有符號(hào)多了一個(gè)位來(lái)放數(shù)字,所以范圍更大。

上面這段題外話(huà),小白稍微看看或者跳過(guò)。我們繼續(xù)看看其他格式化方式。

第二種占位符格式化

跟上面稍微區(qū)別就是我們會(huì)看到一下明顯的下標(biāo)。

{0}, {1}, … {n}

想要留幾個(gè)替換位,就放幾個(gè){}括起來(lái),但要求必須給到n個(gè)參數(shù),更多信息參考https://docs.python.org/3/library/string.html

這個(gè)非常簡(jiǎn)單直接,我們看看代碼:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/30 10:13 上午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學(xué)委
# @XueWeiTag: CodingDemo
# @File : string_format1.py
# @Project : hello
import sys
slogan = "持續(xù)學(xué)習(xí)持續(xù)開(kāi)發(fā)"
author = "雷學(xué)委"
text = "{0}, {1}".format(slogan, author)
print("text= %s" % text)

關(guān)鍵字格式化

非常好理解就是類(lèi)似{}一對(duì)大括弧中間為待替換的內(nèi)容。

這個(gè)非常簡(jiǎn)單直接,我們看看代碼:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/30 10:13 上午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學(xué)委
# @XueWeiTag: CodingDemo
# @File : string_format2.py
# @Project : hello
import sys
slogan = "持續(xù)學(xué)習(xí)持續(xù)開(kāi)發(fā)"
author = "雷學(xué)委"
text = f"{slogan} , {author}"
print("text= %s" % text)

運(yùn)行效果如下:

屏幕快照 2021-10-31 下午4.19.06.png

從這里看,關(guān)鍵字格式化比較友好!

總結(jié)

本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • Python實(shí)現(xiàn)剪刀石頭布小游戲(與電腦對(duì)戰(zhàn))

    Python實(shí)現(xiàn)剪刀石頭布小游戲(與電腦對(duì)戰(zhàn))

    這篇文章給大家分享Python基礎(chǔ)實(shí)現(xiàn)與電腦對(duì)戰(zhàn)的剪刀石頭布小游戲,練習(xí)if while輸入和輸出,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2019-12-12
  • pygame實(shí)現(xiàn)飛機(jī)大戰(zhàn)

    pygame實(shí)現(xiàn)飛機(jī)大戰(zhàn)

    這篇文章主要為大家詳細(xì)介紹了pygame實(shí)現(xiàn)飛機(jī)大戰(zhàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • python進(jìn)程池實(shí)現(xiàn)的多進(jìn)程文件夾copy器完整示例

    python進(jìn)程池實(shí)現(xiàn)的多進(jìn)程文件夾copy器完整示例

    這篇文章主要介紹了python進(jìn)程池實(shí)現(xiàn)的多進(jìn)程文件夾copy器,結(jié)合完整實(shí)例形式分析了Python基于多進(jìn)程與進(jìn)程池的文件操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2019-11-11
  • Django框架教程之正則表達(dá)式URL誤區(qū)詳解

    Django框架教程之正則表達(dá)式URL誤區(qū)詳解

    正則表達(dá)式對(duì)大家來(lái)說(shuō)應(yīng)該都不陌生,下面這篇文章主要給大家介紹了關(guān)于Django框架教程之正則表達(dá)式URL誤區(qū)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-01-01
  • Python3里的super()和__class__使用介紹

    Python3里的super()和__class__使用介紹

    這篇文章主要介紹了Python3里的super()和__class__使用介紹,本文用實(shí)例講解了這兩個(gè)方法之間的關(guān)系,需要的朋友可以參考下
    2015-04-04
  • python實(shí)現(xiàn)圖片轉(zhuǎn)字符畫(huà)

    python實(shí)現(xiàn)圖片轉(zhuǎn)字符畫(huà)

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)圖片轉(zhuǎn)字符畫(huà),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-02-02
  • python opencv實(shí)現(xiàn)旋轉(zhuǎn)矩形框裁減功能

    python opencv實(shí)現(xiàn)旋轉(zhuǎn)矩形框裁減功能

    這篇文章主要為大家詳細(xì)介紹了python opencv實(shí)現(xiàn)旋轉(zhuǎn)矩形框裁減功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • 解決nohup重定向python輸出到文件不成功的問(wèn)題

    解決nohup重定向python輸出到文件不成功的問(wèn)題

    今天小編就為大家分享一篇解決nohup重定向python輸出到文件不成功的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • 基于OpenCv實(shí)現(xiàn)的人臉識(shí)別(附Python完整代碼)

    基于OpenCv實(shí)現(xiàn)的人臉識(shí)別(附Python完整代碼)

    人臉識(shí)別是基于人的臉部特征信息進(jìn)行身份識(shí)別的一種生物識(shí)別技術(shù),下面這篇文章主要給大家介紹了關(guān)于如何基于OpenCv實(shí)現(xiàn)的人臉識(shí)別,文中還附Python完整代碼,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11
  • pyqt5 textEdit、lineEdit操作的示例代碼

    pyqt5 textEdit、lineEdit操作的示例代碼

    這篇文章主要介紹了pyqt5 textEdit、lineEdit操作的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08

最新評(píng)論