python学习笔记(第四章 python对象 & 第五章 数字)

第四章 python对象

python的任何类型的值都是一个对象,拥有三个特性:身份(唯一标识,id()可以得到,是该对象的内存地址),类型,值(数据项)

type()可以得到对象的类型,type的类型是type。isinstance()的用途与type()相似,用法举例:isinstance(num,(int,long,float,complex)),返回值是布尔类型。

整型对象和字符串对象是不可变对象,python会很高效的缓存它们。

cmp(a,b):用于比较a,b的大小,如果a>b,返回正整数,如果a

str()与repr()都是将对象转化为字符串形式,str()的结果更适合print函数处理,而repr()的结果可以通过eval()得到原来的对象类型。

python提供了 is 和 is not 操作符来测试两个变量是否指向同一个对象,即两个对象指向的地址是否相同。


python不可变类型:数字,字符串,元组。      可变类型:列表,字典。

按访问方式对数据类型进行分类:非容器类型可以直接访问,序列类型是按容器类的元素的索引顺序进行访问,映射类型是通过唯一的键来访问。


python中,一切都是指针。

第五章 数字

数字提供标量存储和直接访问,它是不可改变的(改变它会生成新的对象)。

复数:虚数不能单独存在,它总是和值为0.0的实数部分构成一个复数。

            实数和虚数部分都是浮点型。

            虚数部分必须带后缀 i 或 j 。

复数是一个类,它有数据属性real和imag,以及方法,如conjugate(),返回值是该复数的共轭复数

除法:传统除法,单斜杠 / :如果是整数相除,自动舍弃小数部分;如果是浮点数相除,得到真实的结果。

            地板除法,双斜杠 // :不管操作数的类型,结果都舍弃小数部分。(结果的类型跟操作数有关)

            真正的除法:在未来的python中,/ 将执行真正的除法,而不管操作数类型,现阶段需要导入模块__future__

         

位操作符:取反 ~ , 按位与 & , 或 | ,异或 ^ ,左移 << ,右移 >>。优先级'~' > '<<' = '>>' > '&' = '|' = '^',同级的遵循左结合。

工厂函数(产生新的对象):bool(),int(),long(),~~~

运算内建函数:

abs():返回参数的绝对值,复数返回模大小

coerce():从技术上而言是个类型转换符,将两个参数转化成类型一样的值。

divmod():返回的是商和余数的元组。对于浮点型而言,商是math.floor(num1/num2),floor()是取比参数小的最大整数。

pow():两个参数时与**相同是指数运算,三个参数时pow(a,b,c)=pow(a,b)%c,为前两个参数指数运算的结果与c取余。

round():用于对浮点数进行四舍五入运算,有一个可选参数表示精确到小数点后的位数。

整型进制转换函数:

oct():接受整型参数,返回这个数8进制表示的字符串。

hex():接受整型参数,返回这个数16进制表示的字符串。

ASCLL转换函数:

ord():接受一个字符,返回其对应的数值。

chr():接受一个单字节整型值,返回该值对应的字符。

random模块,里面包含多个伪随机数发生器,都是以当前时间戳为随机数种子。具体有:

randint():两个整型参数,返回二者之间的随机整型。

randrange():接受和range()一样的参数,随机返回range()的结果的一项。

uniform():两个参数,返回两个参数间的随机浮点数。(不包括上限)

random():不需要参数,返回0.0和1.0之间的随机浮点数。

choice():参数是序列,随机返回给定序列的一个元素。

你可能感兴趣的:(python)