1.用del删除对对象的引用

  1. >>> a = 123
  2. >>> a
  3. 123
  4. >>> del a
  5. >>> a
  6. Traceback (most recent call last):
  7. File "<stdin>", line 1, in <module>
  8. NameError : name 'a' is not defined

2.整型

(1)布尔型    该类型取值范围只要两个值:布尔值True 和 布尔值False

(2)标准整型   长整型

①python标准整型取值范围是 -231~231-1,也就是-2 147 483 648~2 147 483 648.

②python标准整型等价于C中的长整型

③整型一般以10进制表示,但python也支持八进制、十六进制。八进制整数以0开始,十六进制整数以0x 或 0X开始

④在整型的后面加上大写的L来表明这是一个长整型

3.浮点型

浮点型通常有一个小数点和一个可选的后缀e表示科学记数法,e后面接指数,e和指数之间用正负号表示指数的正负,正数可以省略。

4.复数

①复数由实数部分和虚数部分构成,实数部分和虚数部分都是浮点型,虚数部分必须有后缀

②复数的属性包括:

  1. >>> acomplex = 2.22-1.33j
  2. >>> acomplex
  3. (2.22-1.33j)
  4. >>> acomplex.real
  5. 2.22
  6. >>> acomplex.imag
  7. 1.33
  8. >>> acomplex.conjugate()
  9. (2.22+1.33j)

5.操作符

(1)混合模式操作符

python中不同类型的数字相加时,会使用数字类型强制转换的方式解决数字类型不一致的问题。转换规则在于:

如果一个操作数是复数,则另一个操作数被转换为复数;

否则,如果有一个是浮点数,另一个被转换成浮点数;

否则,如果有一个是长整型,另一个被转换成长整型;

否则,两者都是整型,无须转换

(2)算数操作符

①python中除法包括一下几种:

传统除法,操作符"/"。传统除法的两个操作数如果都是整型,那么传统除法会舍去小数部分,返回一个整型;如果其中一个操作数是浮点数,则执行真正的除法。

  1. >>> 1 / 2
  2. 0
  3. >>> 1.0 / 2
  4. 0.5

真正的除法,通过执行 from __future__ import division 指令,操纵符"/"无法两个操作数是整型还是浮点型,均执行真正的除法

  1. >>> from __future__ import division
  2. >>>
  3. >>> 1 / 2
  4. 0.5
  5. >>> 1.0 / 2

地板除,python 2.2 引入的新操作符"//",执行地板除,不管操作数是何种类型的数值,总是舍去小数部分,返回比真正的商小的最接近的数字

  1. >>> 1 // 2
  2. 0
  3. >>> 1.0 // 2
  4. 0.0

6.内建函数与工厂函数

(1)转换工厂函数

int()、long()、float()、complex()函数用来将其他数值类型转换为相应的数值类型,也可以返回字符串表示的数值

int()、long()可以接受第二个可选参数,用来将给定的实参转换成相应进制

complex()可以接受两个参数,第一个参数是复数的实部,第二个参数是复数的虚部,第二个参数默认为0.

  1. >>> int(1.23)
  2.  
  3. >>> long()
  4. 123L
  5. >>> float()
  6. 123.0
  7. >>> complex()
  8. (+0j)
  9. >>> complex(,)
  10. (+456j)
  11. >>> complex(1.23e-2,1.23e3)
  12. (0.0123+1230j)

(2)功能函数

python有5个内建函数用于数值运算,包括abs()   coerce()   divmod()   pow()   round()

① abs()

abs()返回给定参数的绝对值。若参数是复数,则返回复数的模,即复数实部和虚部的平方和的正的平方根(math.sqrt(real2+imag2)).参数可以是表达式。

  1. >>> abs(-1)
  2. 1
  3. >>> abs(1.1)
  4. 1.1
  5. >>> abs(3+4j)
  6. 5.0
  7. >>> abs(1.22 - 10.22)
  8. 9.0

②coerce()

coerce()是一个数据类型转换函数,接受两个参数,返回一个包含转换类型后的两个数值的元组

  1. >>> coerce(1,2)
  2. (1,2)
  3. >>>
  4. >>> coerce(1.3,134L)
  5. (1.3,134.0)
  6. >>>
  7. >>> coerce(1,12L)
  8. (1L,12L)
  9. >>>
  10. >>> (1j,12L)
  11. (1j,(12+0j))

③divmod()

divmod()函数结合了除法和取余,接受两个参数,被除数和除数,返回一个包含商、余数的元组。执行的除法都是地板除,余数通过取余运算得到。

  1. >>> divmod(11,3)
  2. (3,2)
  3. >>> divmod(3,11)
  4. (0,3)
  5. >>> divmod(3,1.5)
  6. (2.0,0.0)
  7. >>> divmod(1.5,3)
  8. (0.0,1.5)
  9. >>> divmod(2+34j,1+17j)
  10. ((2+0j),0j) #复数的商仅取实数部分的商

④pow()

pow()和双星号**功能类似,都是指数运算。pow()接受三个参数,第一个参数是底数,第二个参数是指数,这两个是必选的;pow()还可以接受第三个可选参数,如果给出这个参数,pow()先进行指数运算,然后将运算结果和第三个参数进行取余运算。这个特性主要用于密码运算,且效率比pow(x,y) % z 好!

  1. >>> pow(2,3)
  2. 8
  3. >>> pow(3,2)
  4. 9
  5. >>> pow(2,3,3)
  6. 2
  7. >>> pow(1+2j,4)
  8. (-7-24j)

⑤round()

内建函数round()用来对浮点型进行四舍五入。接受两个参数第一个是要进行四舍五入的浮点型,第二个可选参数告诉round()函数将结果精确到小数点后指定位数。不指定第二个参数,则返回与第一个参数最接近的整型,即保留小数点后0位(仍然是浮点型)

  1. >>> round(3)
  2. 3.0
  3. >>> round(3.45)
  4. 3.0
  5. >>> round(3.4999)
  6. 3.0
  7. >>> round(3.499999,1)
  8. 3.5
  9. >>> round(-3.5)
  10. -4.0
  11. >>> round(-3.4)
  12. -3.0

⑥int()   round()    math.floor()区别

函数int()直接截去小数部分,返回值是整型

函数math.floor()得到最接近原数但小于原数的整型,返回值是浮点型

函数round()按四舍五入的规则进行取整,得到最接近原数的整型,返回值是浮点型

(3)仅用于整型的函数

①进制转换函数

python内建函数oct()接受一个任意进制的整型对象,返回相应的八进制(以0开头)的字符串对象

内建函数hex()接受一个任意进制的整型对象,返回相应的十六进制(以0X开头)的字符串对象

  1. >>> oct(25)
  2. ''
  3. >>> oct(31)
  4. ''
  5. >>> hex(255)
  6. '0xff'
  7. >>> hex(192)
  8. '0xc0'

②ASCII转换函数

python内建函数chr()接受一个单字节整型值,返回一个字符串,字符串值为对应的字符

内建函数ord()则相反,接受一个字符,返回其对应的整型值

  1. >>> chr(65)
  2. 'A'
  3. >>> chr(97)
  4. 'a'
  5. >>> chr(48)
  6. ''
  7. >>>
  8. >>> ord('a')
  9. 97
  10. >>> ord('A')
  11. 65
  12. >>> ord('')
  13. 48

③全家福:

7.其他数字类型

(1)布尔型

几条性质:

①布尔值事实上是整型的子类,True对应整型1,False对应整型0

②所以的python对象都有一个内建的True或False值。下列对象的布尔值是False:

None;
False (布尔类型);

所有的值为零的数;

0 (整型);

0.0(浮点型);

0L (长整型);

0.0+0.0j(复数);

"" (空字符串);

[] (空列表);

() (空元组);

{} (空字典);

值不是上面列出来的任何值的对象的布尔值都是 True,例如 non-empty、 non-zero 等等。 用户创建的类实例如果定义了 nonzero(__nonzero__())或 length(__len__())且值为 0,

那 么它们的布尔值就是 False。

  1. >>> bool(1)
  2. True
  3. >>> bool(True)
  4. True
  5. >>> bool(0)
  6. False
  7. >>> bool("")
  8. True
  9. >>> bool(0.0)
  10. False
  11. >>> bool(0L)
  12. False
  13. >>> bool([])
  14. False

8.相关模块

①python关于数值的常见模块如图

②关于random的介绍

例:

  1. >>> import random
  2. >>> random.randint(12,23)
  3. 16
  4. >>> random.randrange(12,23)
  5. 18
  6. >>> random.uniform(12,23)
  7. 13.5080332618
  8. >>>

python核心编程-第五章-个人笔记的更多相关文章

  1. 【3】python核心编程 第五章-数字

    1.用大写字母 “L”表示长整数 尽管 Python 也支持用小写字母 L 标记的长整型,但是我们郑重推荐您仅使用大写的 “L”, 这样能有效避免数字1 和小写L 的混淆.Python 在显示长整数类 ...

  2. python核心编程-第四章-个人笔记

    1.所有的python对象都拥有三个特性: ①身份:每个对象都有唯一的身份标识自己,可用内建函数id()来得到.基本不会用到,不用太关心 >>> a = 2 >>> ...

  3. python核心编程-第三章-个人笔记

    1.语句和语法 (1)反斜杠"\"表示语句继续.python良好的编程习惯是一行最后不超过80个字符,一行字符过多时便须用到反斜杠换行继续该语句. PS:在使用小括号.中括号.大括 ...

  4. python核心编程-第五章-习题

    1.长整型表示数的范围比整型更大.在python中,整型.长整型趋于统一,普通用户不用特别关注两者区别,仅当需引用C语言时需要特别注意. 2.操作符 (a) def product(x,y): ret ...

  5. UNIX 网络编程第五章读书笔记

    刚看完 UNIX 第五章内容,我想按照自己的方式将自己获得的知识梳理一遍,以便日后查看!先贴上一段简单的 TCP 服务器端代码: #include <sys/socket.h> #incl ...

  6. 【7】python核心编程 第十一章-函数和函数式编程

    1.*函数(与方法)装饰器 装饰器背后的主要动机源自python 面向对象编程.装饰器是在函数调用之上的修饰.这些修饰 仅是当声明一个函数或者方法的时候,才会应用的额外调用. 装饰器的语法以@开头,接 ...

  7. python核心编程2第二章课后练习

    2-1 变量, print 和字符串格式化运算符.启动交互式解释器.给一些变量赋值(字符串,数值等等)并通过输入变量名显示它们的值.再用 print 语句做同样的事.这二者有何区别? 也尝试着使用字符 ...

  8. 【1】python核心编程 第三章

    1.继续( \ ) 有两种例外情况一个语句不使用反斜线也可以跨行.在使用闭合操作符时,单一语句可以跨多行,例如:在含有小括号.中括号.花括号时可以多行书写.另外就是三引号包括下的字符串也可以跨行书写 ...

  9. python核心编程-第三章-习题

    1.这是python的语言特性,python先创建对象,在给变量赋值时,不需要定义变量的名称和类型,它实际是用变量引用对象.变量类型在给变量赋值时自动声明 2.原因类似变量无须声明类型 3.pytho ...

随机推荐

  1. sqlCacheDependency 更新缓存Cache

    第一步 修改web,config <!--定义数据库连接--> <connectionStrings>  <add name="NorthwindConnect ...

  2. djangoPOST请求403 forbidden

    处理过程 网上搜索修改setting.py,在MIDDLEWARE_CLASSES增加django.middleware.csrf.CsrfResponseMiddleware  没能解决问题 有说在 ...

  3. 1005 Jugs

    辗转相减,新手入门题.两个容量的灌水题,无所谓最优解. #include<stdio.h> int main(){ int A,B,T,sA,sB; ){ sA=sB=; ){ ){ pr ...

  4. TabHost刷新activity的方法

    在android中,使用tabHost的时候,如果tab被点击,该tab所对应的activity被加载了,从别的tab切换回来的时候,activity不会再次被创建了(onCreate),所以要想每次 ...

  5. Log4net 可直接使用的配置

    config配置 <xml version="1.0"> <configuration> <configSections> <!--配置一 ...

  6. 开源C/C++网络库比较

    在开源的C/C++网络库中, 常用的就那么几个, 在业界知名度最高的, 应该是ACE了, 不过是个重量级的大家伙, 轻量级的有libevent, libev, 还有 Boost的ASIO. ACE是一 ...

  7. Regex类

    一.属性 CacheSize 获取或设置已编译的正则表达式的当前静态缓存中的最大项数. 默认是15个,最近使用的15个会存在缓存中,避免重新创建.当有第16个进来会替换掉第  1个.保持15个.Opt ...

  8. 剑指offer-面试题10:二进制中1的个数

    题目:请实现一个函数,输入一个函数,输出该数二进制表示中1的个数.例如把9 表示成二进制是1001,有2位是1.因此如果输入9,该函数输出2. 这道题最典型的方法就是用移位统计,就比如统计9的二进制1 ...

  9. ZOJ 1008 Gnome Tetravex(DFS)

    Gnome Tetravex Time Limit: 10 Seconds      Memory Limit: 32768 KB Hart is engaged in playing an inte ...

  10. Ffmpeg和SDL创建线程(转)

    Spawning Threads Overview Last time we added audio support by taking advantage of SDL's audio functi ...