日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python输出举例_python字符串格式化输出及相关操作代码举例

發(fā)布時間:2023/12/20 python 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python输出举例_python字符串格式化输出及相关操作代码举例 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

字符串的格式化

Python 支持格式化字符串的輸出 。盡管這樣可能會用到非常復雜的表達式,但最基本的用法是將一個值插入到一個有字符串格式符 %s 的字符串中。在 ? Python 中,字符串格式化使用與 C 中 sprintf 函數(shù)一樣的語法。

在python中格式化輸出字符串通用的形式為:

格式標記字符串 % 要輸出的值組

其中,左邊部分的"格式標記字符串"可以完全和c中的一致。右邊的"值組"如果有兩個及以上的值則需要用小括號括起來,中間用逗號隔開。

重點來看左邊的部分。左邊部分的最簡單形式為:

%code

其中的code有多種,不過由于在python中,所有東西都可以轉換成string類型,因此,如果沒有什么特殊需求完全可以全部使用‘%s’來標記。比如:

‘%s %s %s‘ % (1, 2.3, [‘one‘, ‘two‘, ‘three‘])

它的輸出為‘1 2.3 [‘one‘, ‘two‘, ‘three‘]‘,就是按照%左邊的標記輸出的。雖然第一個和第二值不是string類型,一樣沒有問題。在這個過程中,當電腦發(fā)現(xiàn)第一個值不是%s時,會先調用整型數(shù)的函數(shù),把第一個值也就是1轉成string類型,然后再調用str()函數(shù)來輸出。前面說過還有一個repr()函數(shù),如果要用這個函數(shù),可以用%r來標記。除了%s外,還有很多類似的code:

整型數(shù):%d

無符號整型數(shù):%u

八進制:%o

十六進制:%x ? %X

浮點數(shù):%f

科學記數(shù)法: %e ? %E

根據(jù)數(shù)值的不同自動選擇%e或%f: %g

根據(jù)數(shù)值的不同自動選擇%E或%f: %G

就跟前面說用\進行轉義一樣,這里用%作為格式標記的標識,也有一個%本身應該如何輸出的問題。如果要在"格式標記字符串"中輸出%本身,可以用%%來表示。

上面說的只是格式標記的最簡間的形式,來看復雜一點的:

‘%6.2f’ % 1.235

在這種形式中,在f的前面出現(xiàn)了一個類似小數(shù)的6.2它表示的意思是,總共輸出的長度為6個字符,其中小數(shù)2位。還有更復雜的:

‘%06.2f’ % 1.235

在6的前面多了一個0,表示如果輸出的位數(shù)不足6位就用0補足6位。這一行的輸出為‘001.24’,可以看到小數(shù)也占用一位。類似于這里0這樣的標記還有-、+。其中,-表示左對齊,+表示在正數(shù)前面也標上+號,默認是不加的。最后來看最復雜的形式:

‘%(name)s:%(score)06.1f’ %{‘score‘:9.5, ‘name‘:‘newsim‘}

這種形式只用在要輸出的內(nèi)容為dictionary(一種python的數(shù)據(jù)類型)時,小括號中的(name)和(score)對應于后面的鍵值對中的鍵。前面的例子可以看到,”格式標記字符串“中標記的順序和"要輸出的值組"中的值是一一對應的,有順序,一對一,二對二。而在這種形式中,則不是,每個格式標記對應哪個值由小括號中的鍵來指定。這行代碼的輸出為:‘newsim:0009.5‘。

有時候在%6.2f這種形式中,6和2也不能事先指定,會在程序運行過程中再產(chǎn)生,那怎么輸入呢,當然不能用%%d.%df或%d.%d%f。可以用%*.*f的形式,當然在后面的”要輸出的值組“中包含那兩個*的值。比如:‘%*.*f‘ % (6, 2, 2.345)就相當于‘%6.2f‘ % 2.345。

這是這本書到此為止看起來最復雜的內(nèi)容。不過如果記不住,或不想那么耐煩,完全可以全部用%s代替,或者用多個"+"來構造類似的輸出字符串。這里的%真有點除法的味道,怪不得設計者會選擇用%這個除號。

字符串格式化代碼如下:

%%百分號標記

%c字符及其ASCII碼

%s字符串

%d有符號整數(shù)(十進制)

%u無符號整數(shù)(十進制)

%o無符號整數(shù)(八進制)

%x無符號整數(shù)(十六進制)

%X無符號整數(shù)(十六進制大寫字符)

%e浮點數(shù)字(科學計數(shù)法)

%E浮點數(shù)字(科學計數(shù)法,用E代替e)

%f浮點數(shù)字(用小數(shù)點符號)

%g浮點數(shù)字(根據(jù)值的大小采用%e或%f)

%G浮點數(shù)字(類似于%g)

%p指針(用十六進制打印值的內(nèi)存地址)

%n存儲輸出字符的數(shù)量放進參數(shù)列表的下一個變量中

字符串的相關操作舉例

# 字符串對齊

word = "version3.0"

# 20個字符中間對齊

print word.center(20)

# 20個字符兩邊補齊*

print word.center(20, "*")

# 左對齊

print word.ljust(0)

# 20個字符右對齊

print word.rjust(20)

# 前面空20個字符

print "% 30s" % word

#去除轉義字符

strip()

lstrip()

rstrip()

#字符的分割

split()

split(",")

split(",", 2)

#字符串比較

startswith()

endswith()

#查找替換

find(substring [, start [, end]])

rfind()

replace(new, old [, max])

#字符串與日期

time.strftime(format[, tuple]) ->string

time.strptime(string, format) ->struct_time

字符串的格式化

>>> k = "uid"

>>> v = "sa"

>>> "%s=%s" % (k, v)

‘uid=sa‘ 整個表達式的值為一個字符串。第一個 %s 被變量 k 的值替換;第二個 %s 被 v 的值替換。Python格式化字符串的所有其它字符 (在這個例子中,是等號) 按原樣打印輸出。注意 (k, v) 是一個 tuple。字符串格式化不只是連接。它甚至不僅僅是格式化。它也是強制類型轉換。

字符串格式化與字符串連接的比較

>>> uid = "sa"

>>> pwd = "secret"

>>> print pwd + " is not a good password for " + uid

secret is not a good password for sa

>>> print "%s is not a good password for %s" % (pwd, uid)

secret is not a good password for sa

>>> userCount = 6

>>> print "Users connected: %d" % (userCount, )

Users connected: 6

>>> print "Users connected: " + userCount

Traceback (innermost last):

File "", line 1, in ?

TypeError: cannot concatenate ‘str‘ and ‘int‘ objects

總結

以上是生活随笔為你收集整理的python输出举例_python字符串格式化输出及相关操作代码举例的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。