Python中的str可以表示字符串類,也可以是將變量強(qiáng)制轉(zhuǎn)換為字符串的函數(shù),寫作str()。str函數(shù)是Python內(nèi)置函數(shù)的一種,可以直接使用,無需調(diào)用。 擴(kuò)展資料
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供中衛(wèi)網(wǎng)站建設(shè)、中衛(wèi)做網(wǎng)站、中衛(wèi)網(wǎng)站設(shè)計(jì)、中衛(wèi)網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、中衛(wèi)企業(yè)網(wǎng)站模板建站服務(wù),十余年中衛(wèi)做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
python中srt的全稱是SubRip Text,srt文件打開方式srt文件可以使用系統(tǒng)自帶的.文本處理器來打開,比如notepad.exe,write.exe,word等文件處理軟件。在Python中,str 表示字符串類 ,也可以是將變量強(qiáng)制轉(zhuǎn)換為字符串的函數(shù),寫作str()。
是將一個(gè)對(duì)象轉(zhuǎn)成字符串顯示,注意只是顯示用,有些對(duì)象轉(zhuǎn)成字符串沒有直接的意思。
str():將變量轉(zhuǎn)化為字符串類型
a = 1
b = [1, 2, 3]
str_a = str(a)
print(a)
print(type(a))
str_b = str(b)
print(b)
print(type(b))
The str() function is meant to return representations of values which are fairly human-readable, while repr() is meant to generate representations which can be read by
the interpreter (or will force a SyntaxError if there is not equivalent syntax). For objects which don't have a particular representation for human consumption, str() will
return the same value as repr(). Many values, such as numbers or structures like lists and dictionaries, have the same representation using either function. Strings and。
__str__方法:總結(jié)
在python中方法名如果是__xxxx__()的,那么就有特殊的功能,因此叫做“魔法”方法,當(dāng)使用print輸出對(duì)象的時(shí)候,只要自己定義了__str__(self)方法,那么就會(huì)打印從在這個(gè)方法中return的數(shù)據(jù)
例子1:如:
class Car:
def __init__(self, newWheelNum, newColor):
? ??self.wheelNum = newWheelNum
? ? self.color = newColor
def __str__(self):
? ??msg = "嘿。。。我的顏色是" + self.color + "我有" + int(self.wheelNum) + "個(gè)輪胎..."
? ??return msg
def move(self):
? ??print('車在跑,目標(biāo):夏威夷')
BMW = Car(4, "白色")
print(BMW)
例子2:如:
class Cat:
"""定義了一個(gè)Cat類"""
#初始化對(duì)象
def __init__(self, new_name, new_age):
? ? self.name = new_name
? ? self.age = new_age
def __str__(self):
? ? return "%s的年齡是:%d"%(self.name, self.age)
#方法
def eat(self):
? ? print("貓?jiān)诔贼~....")
def drink(self):
? ? print("貓正在喝kele.....")
def introduce(self):
? ? print("%s的年齡是:%d"%(self.name, self.age))
#創(chuàng)建一個(gè)對(duì)象
tom = Cat("湯姆", 40)
lanmao = Cat("藍(lán)貓", 10)
print(tom)
print(lanmao)
運(yùn)行結(jié)果:
湯姆的年齡是:40
藍(lán)貓的年齡是:10
repr()和str,一個(gè)最簡(jiǎn)單的區(qū)別:repr是函數(shù),str跟int一樣是一種對(duì)象類型。
repr ( object )
返回對(duì)象的可打印形式字符串。對(duì)于很多類型而言,本函數(shù)試圖返回的字符串,會(huì)與將對(duì)象傳給 eval() 所生成的結(jié)果相同;不然,結(jié)果就是一個(gè)尖括號(hào)包裹的字符串,包含了對(duì)象類型名稱及其附加信息,附加信息通常包括對(duì)象的名稱和內(nèi)存地址。通過定義 __repr__() 方法,類可以控制本函數(shù)將為實(shí)例返回的內(nèi)容。
class str ( object='' ) class str ( object=b'' , encoding='utf-8' , errors='strict' )
返回 object 的 字符串 版本。 如果未提供 object 則返回空字符串。 在其他情況下 str() 的行為取決于 encoding 或 errors 是否有給出,具體見下。
如果 encoding 或 errors 均未給出,str(object) 返回 object.__str__(),這是 object 的“非正式”或格式良好的字符串表示。 對(duì)于字符串對(duì)象,這是該字符串本身。 如果 object 沒有 __str__() 方法,則 str() 將回退為返回 repr(object)。
如果 encoding 或 errors 至少給出其中之一,則 object 應(yīng)該是一個(gè) bytes-like object (例如 bytes 或 bytearray)。 在此情況下,如果 object 是一個(gè) bytes (或 bytearray) 對(duì)象,則 str(bytes, encoding, errors) 等價(jià)于 bytes.decode(encoding, errors)。 否則的話,會(huì)在調(diào)用 bytes.decode() 之前獲取緩沖區(qū)對(duì)象下層的 bytes 對(duì)象。 請(qǐng)參閱 二進(jìn)制序列類型 --- bytes, bytearray, memoryview 與 緩沖協(xié)議 了解有關(guān)緩沖區(qū)對(duì)象的信息。
將一個(gè) bytes 對(duì)象傳入 str() 而不給出 encoding 或 errors 參數(shù)的操作屬于第一種情況, 將返回非正式的字符串表示(另請(qǐng)參閱 Python 的 -b 命令行選項(xiàng))。 例如:
什么時(shí)候應(yīng)該使用str(),什么時(shí)候應(yīng)該使用repr()?
在為最終用戶創(chuàng)建輸出時(shí),幾乎總是使用str。repr()主要用于調(diào)試和 探索 。例如,如果您懷疑字符串中有非打印字符,或者浮點(diǎn)數(shù)有一個(gè)小的舍入錯(cuò)誤,則repr()將顯示給您;str可能不會(huì)。repr()在生成要粘貼到源代碼中的文字時(shí)也很有用。
Python中的str可以表示字符串類,也可以是將變量強(qiáng)制轉(zhuǎn)換為字符串的函數(shù),寫作str()。str函數(shù)是Python內(nèi)置函數(shù)的一種,可以直接使用,無需調(diào)用。
Python由荷蘭數(shù)學(xué)和計(jì)算機(jī)科學(xué)研究學(xué)會(huì)的Guido van Rossum于1990年代初設(shè)計(jì),作為一門叫做ABC語言的替代品。Python提供了高效的高級(jí)數(shù)據(jù)結(jié)構(gòu),還能簡(jiǎn)單有效地面向?qū)ο缶幊獭?/p>
Python語法和動(dòng)態(tài)類型,以及解釋型語言的本質(zhì),使它成為多數(shù)平臺(tái)上寫腳本和快速開發(fā)應(yīng)用的編程語言,隨著版本的不斷更新和語言新功能的添加,逐漸被用于獨(dú)立的、大型項(xiàng)目的開發(fā)。
Python解釋器易于擴(kuò)展,可以使用C或C++(或者其他可以通過C調(diào)用的語言)擴(kuò)展新的功能和數(shù)據(jù)類型。Python也可用于可定制化軟件中的擴(kuò)展程序語言。Python豐富的標(biāo)準(zhǔn)庫,提供了適用于各個(gè)主要系統(tǒng)平臺(tái)的源碼或機(jī)器碼。