內建函数

本章内容

  1. type()
  2. cmp()
  3. str()和repr()

type()

type() 接受一个对象作为参数,并返回它的类型。返回值是一个类型对象。

>>> type(4)
<type 'int'>
>>> 
>>> type('zhangzhang')
<type 'str'>
>>> 
>>> type(type(4))
<type 'type'>
>>> 
  1. 通过內建函数type() 得到一个整数和一个字符串的类型;
  2. type()的返回值再次调用type(),来确认类型本身也是类型。

cmp()

內建函数 cmp() 用于比较两个对象 obj1 和 obj2, 如果obj1 小于 obj2,则返回一个负整数;如果obj1 大于 obj2,则返回一个正整数;相等则返回0。

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

cmp()同比较操作符一样,根据字符串的ASCII码值进行比较。

>>> str1 = 'A'
>>> str2 = 'a'
>>> str3 = 'b'
>>> cmp(str1,str2)
-1
>>> cmp(str3,str1)
1
>>> cmp(str2, 'a')
0
>>> 

str()和repr()

內建函数str() 和 repr() 或者反引号(``) 可以方便的以字符串的方式获取对象的内容、类型、数值属性等信息。
str() 函数得到的字符串的可读性好。
repr() 函数得到的字符串通常可以用来重新获得该对象。

>>> str(3430.22-2j)
'(3430.22-2j)'
>>> 
>>> str(1)
'1'
>>> str(2e100)
'2e+100'
>>> str(2e10)
'20000000000.0'
>>> 
>>> str([2,4,1,2])
'[2, 4, 1, 2]'
>>> 
>>> repr([0,1,2,4])
'[0, 1, 2, 4]'
>>> 
>>> `[2,2,1]`
'[2, 2, 1]'
  1. str(),repr()和 ··运算符功能相似,但repr()与`` 返回的是一个对象的“官方”字符串表示。
  2. str() 生成一个对象的可读性好的字符串,返回的结果无法用其他的函数(eval()求值函数);通常用于print语句输出。

为什么有repr()还要使用``?
运算符和函数做同样一件事,有些场合函数比运算符更适用。
例如:
双星号(**)乘方运算==pow() 內建函数
x ** y == pow(x, y) 都是x的y次方

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容