国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python隨手筆記之標準類型內建函數

2020-01-04 17:55:17
字體:
來源:轉載
供稿:網友
Python提供了一些內建函數用于基本對象類型:cmp(),repr(),str(),type()和等同于repr()的(' ')操作符,本文給大家分享Python隨手筆記之標準類型內建函數,對python內建函數相關知識感興趣的朋友一起學習吧
 

Python提供了一些內建函數用于基本對象類型:cmp(),repr(),str(),type()和等同于repr()的(' ')操作符

(1)type()

   type的用法如下:

          type(object)

   接受一個對象作為參數,并返回它的類型。他的返回值是一個類型對象。

>>>type('r')
<type 'str'>
>>>type(3)
<type 'int'>
>>>type(type(5))
<type 'type'>

(2)cmp()

內建函數cmp()用于比較兩個對象obj1和obj2。如果obj1大于obj2,則返回一個正整數,如果小于,則返回一個負整數,等于的話返回0.

>>>a,b=4,12
>>>cmp(a,b)
-1
>>>b=4
>>>cmp(a,b)
0
>>>a,b='xyz','abc'
>>>cmp(a,b)
23

 (3)str()、repr()

     可以方便的以字符串的方式獲取對象的內容、類型、數值屬性等信息。str()函數得到的字符串可讀性好,而repr()得到的字符串通常可以用來重新獲得該對象。

>>>str(1)
'1'
>>>str(2e4)
'20000.0'
>>>repr([0,1,2,3])
'[0,1,2,3]'

下面抽點時間單獨給大家介紹python中的內建函數

在python中,輸入如下命令即可查看python的內建函數dir:

>>> dir(__builtins__)

1、str()和repr()以及''運算符

內建函數 str() 和 repr() 或反引號運算符(``) 可以方便的以字符串的方式獲取對象的
內容、類型、數值屬性等信息。str()函數得到的字符串可讀性好, 而repr()函數得到的字符
串通常可以用來重新獲得該對象, 通常情況下 obj == eval_r(repr(obj)) 這個等式是成立的。
這兩個函數接受一個對象做為其參數, 返回適當的字符串。在下面的例子里, 我們會隨機取
一些Python 對象來查看他們的字符串表示。

>>> str(4.53-2j)
'(4.53-2j)'
>>>
>>> str(1)
'1'
>>>
>>> str(2e10)
'20000000000.0'
>>>
>>> str([0, 5, 9, 9])
'[0, 5, 9, 9]'
>>>
>>> repr([0, 5, 9, 9])
'[0, 5, 9, 9]'
>>>
>>> `[0, 5, 9, 9]`
'[0, 5, 9, 9]'

    盡管str(),repr()和``運算在特性和功能方面都非常相似, 事實上 repr() 和 `` 做的是完全一樣的事情,它們返回的是一個對象的“官方”字符串表示, 也就是說絕大多數情況下
可以通過求值運算(使用eval_r()內建函數)重新得到該對象,但str()則有所不同。str() 致力于生成一個對象的可讀性好的字符串表示,它的返回結果通常無法用于eval_r()求值, 但很適
合用于 print 語句輸出。需要再次提醒一下的是, 并不是所有repr()返回的字符串都能夠用val_r()內建函數得到原來的對象:

>>> eval_r(`type(type))`)
File "<stdin>", line 1
eval_r(`type(type))`)
^
SyntaxError: invalid syntax

    也就是說 repr() 輸出對 Python 比較友好, 而str()的輸出對人比較友好。雖然如此,
很多情況下這三者的輸出仍然都是完全一樣的。

核心筆記:為什么我們有了repr()還需要``?

    在Python 學習過程中,你偶爾會遇到某個運算符和某個函數是做同樣一件事情。之所以如此是因為某些場合函數會比運算符更適合使用。舉個例子, 當處理類似函數這樣的可執行對象或根據不同的數據項調用不同的函數處理時,函數就比運算符用起來方便。另一個例子就是雙星號(**)乘方運算和pow()內建函數,x ** y 和 pow(x,y) 執行的都是x 的y 次方。

譯者注:事實上Python 社區目前已經不鼓勵繼續使用``運算符。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沾益县| 滦平县| 常山县| 正宁县| 延吉市| 乳山市| 东乡县| 淅川县| 靖远县| 甘谷县| 和林格尔县| 云霄县| 洪雅县| 兰坪| 邛崃市| 卫辉市| 乌拉特前旗| 罗源县| 高雄市| 浙江省| 雅江县| 宜州市| 吉林市| 浏阳市| 临沧市| 收藏| 南靖县| 永泰县| 土默特右旗| 清徐县| 瓮安县| 红原县| 漳州市| 犍为县| 莱州市| 普安县| 子长县| 新巴尔虎右旗| 永宁县| 鲜城| 保靖县|