python之Number
1、Python number数字
Python Number 数据类型用于存储数值。
数据类型是不允许改变的,这就意味着如果改变 Number 数据类型的值,将重新分配内存空间。
创建一个number数据值,改变数据的值,查看内存地址已发生改变:
>>> num = 123
>>> id(num)
8743872
>>> num = 456
>>> id(num)
13991590095640
使用del语句删除number对象,可以删除多个用','逗号分隔:
>>> num = 123
>>> num1 =888
>>> del num,num1
2、python支持四种不同的数据类型:
- 整形(int)-通常被称为整型或整数,是正数或者负整数。
- 长整型(long integers)-无限大小的整数,整数最后使用大写或小写的L表示。
- 浮点型(floating point real values)-浮点型由整数部分和小数部分组成。
- 复数(complex numbers)-复数由实数部分和虚数部分构成,可以使用a+bj,或者complex(a,b)表示,复数的a和b部分都是浮点型.
长整型的取值范围:
python2.7版本中长整型的取值范围为-2**63-1次方至2**63次方
python3中没有long类型,使用int表示长整型
In [1]: 2**63-1
Out[1]: 9223372036854775807L
In [2]: lo1 = 9223372036854775807
In [3]: type(lo1)
Out[3]: int
In [4]: lo2 = 9223372036854775808
In [5]: type(lo2)
Out[5]: long
In [6]: log8 = -2**62
In [7]: type(log8)
Out[8]: int
In [9]: log8 = -2**63-1
In [10]: type(log8)
Out[11]: long 创建复数:
>>> complex1 = 1.2+3.4j
>>> type(complex1)
<class 'complex'>
>>> complex2 = complex(0.3,3.2)
>>> print(complex1,complex2)
(1.2+3.4j) (0.3+3.2j)
3、python number类型转换
内置的函数可以执行数据类型之间的转换。这些函数返回一个新的对象,表示转换的值
>>> nu1 = 89
>>> nu2 = float(nu1) #转换浮点型
>>> type(nu2)
<class 'float'>
>>> nu3 =complex(nu2) #转复数
>>> type(nu3)
<class 'complex'>
>>> print(nu3)
(89+0j)
>>> nu4 = int(nu2) #转整数
>>> type(nu4)
<class 'int'>
>>> nu5 =str(nu4) #转字符
>>> type(nu5)
<class 'str'>
str(x ) 将对象 x 转换为字符串
repr(x ) 将对象 x 转换为表达式字符串
eval(str ) 用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s ) 将序列 s 转换为一个元组
list(s ) 将序列 s 转换为一个列表
chr(x ) 将一个整数转换为一个字符
unichr(x ) 将一个整数转换为Unicode字符
ord(x ) 将一个字符转换为它的整数值
hex(x ) 将一个整数转换为一个十六进制字符串
oct(x ) 将一个整数转换为一个八进制字符串
4、python数字内置函数,数字处理模块math
>>> import math #数字处理模块
>>> help(math.ceil) #查看帮助
>>> dir(math) #打印所有方法
['__doc__', '__file__', '__loader__', '__name__', '__package__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'hypot', 'isfinite', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'log2', 'modf', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc'] >>> nu1 = 12.34
>>> math.ceil(nu1) #取上入整数
13
>>> math.exp(nu1) #返回e的nu1次幂,e为定义的常量
228661.9520568098
>>> math.fabs(nu1) #返回绝对值
12.34
>>> math.floor(nu1) #返回数字的下舍整数部分
12
>>> math.modf(nu1) #返回小数部分与整数部分
(0.33999999999999986, 12.0)
>>> math.sqrt(nu1) #返回平方根
3.5128336140500593
>>> math.e #模块定义的常量e
2.718281828459045
>>> math.pi #模块定义的常量pi
3.141592653589793
内置函数:
>>> abs(11.2) #返回绝对值
11.2
>>> max(12,24) #最大值
24
>>> min(12,24) #最小值
12
>>> pow(2,4) #2**4幂次方
16
>>> round(1.245,3) #返回值的四舍五入值,3为定义到小数第几位
1.245
>>> round(1.245) #默认为0
1
5、python随机数模块random
>>> import random #导入模块
>>> random.random() #获取0到1之间的随机数
0.1781419039493949
>>> random.random()
0.914421842727102 >>> random.uniform(10,20) #生成10,20之间的浮点数
19.774883012515218
>>> random.uniform(10,20)
11.654111952867027 >>> random.randint(10,20) #生成指定范围内的整数
18
>>> random.randint(10,20)
11 >>> random.randrange(1,100,8) #从指定范围内按指定基数递增获取随机数
33
>>> random.randrange(1,100,8)
17
>>> random.randrange(1,100,8)
33 >>> random.choice([1,2,3,4,5]) #从序列元素中随机获取元素,只能是有序类型
2
>>> random.choice([1,2,3,4,5])
1
>>> random.choice([1,2,3,4,5])
2
>>> random.choice('abcd')
'd'
>>> random.choice('abcd')
'a'
>>> random.choice('abcd')
'c' >>> a = [1,2,3,4,5] #将一个列表元素打乱
>>> random.shuffle(a)
>>> a
[1, 2, 3, 5, 4]
>>> random.shuffle(a)
>>> a
[2, 5, 4, 3, 1]
>>> random.sample(a,2) #从指定序列中随机获取N个元素,生成新对象
[5, 2]
>>> random.sample(a,2)
[5, 4]
>>> random.sample(a,3)
[3, 4, 1]
>>> random.sample(a,5)
[5, 1, 4, 2, 3]
2017-09-2412:27:23™
python之Number的更多相关文章
- Python 数字(Number)
Python 数字(Number) Python 数字数据类型用于存储数值. 数据类型是不允许改变的,这就意味着如果改变数字数据类型的值,将重新分配内存空间. 以下实例在变量赋值时 Number 对象 ...
- python基础===Number
本文转自:python之Number 1.Python number数字 Python Number 数据类型用于存储数值. 数据类型是不允许改变的,这就意味着如果改变 Number 数据类型的值,将 ...
- [Python] 01 - Number
故事背景 一.大纲 如下,chapter4 是个概览,之后才是具体讲解. 二. 编译过程 Ref: http://www.dsf.unica.it/~fiore/LearningPython.pdf
- [Python] 01 - Number and Matrix
故事背景 一.大纲 如下,chapter4 是个概览,之后才是具体讲解. 二. 编译过程 Ref: http://www.dsf.unica.it/~fiore/LearningPython.pdf
- [LeetCode][Python]Largest Number
# -*- coding: utf8 -*-'''__author__ = 'dabay.wang@gmail.com'https://oj.leetcode.com/problems/largest ...
- python3笔记八:python数据类型-Number数字
一:学习内容 数字类型分类:整数.浮点数.复数.布尔值 数字类型转换 数字类型的数学功能:abs().max().min().pow().round().math函数.random函数 二:数字类型分 ...
- [LeetCode][Python]Palindrome Number
# -*- coding: utf8 -*-'''__author__ = 'dabay.wang@gmail.com'https://oj.leetcode.com/problems/palindr ...
- Python学习--Python基础语法
第一个Python程序 交互式编程 交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编写代码. linux上你只需要在命令行中输入 Python 命令即可启动交互式编程,提示窗 ...
- Python模块学习
6. Modules If you quit from the Python interpreter and enter it again, the definitions you have made ...
随机推荐
- BZOJ 1211 HNOI2004 树的计数 Prufer序列
题目大意:给定一棵树中全部点的度数,求有多少种可能的树 Prufer序列.详细參考[HNOI2008]明明的烦恼 直接乘会爆long long,所以先把每一个数分解质因数.把质因数的次数相加相减.然后 ...
- .Net 5分钟搞定网页实时监控
一.为什么会用到网页实时监控 LZ最近在无锡买房了,虽然在上海工作,但是上海房价实在太高无法承受,所以选择还可以接受的无锡作为安身之地.买过房的小伙伴可能知道买房的流程,买房中间有一步很重要的就是需要 ...
- ATL环境:设置父窗口激活属性
设置窗口激活属性:窗口A->B->C,这里设置在C对话框显示时A和B都不能操作 LRESULT sindykTools::AttrPOIDlg::OnBatchCreateSubPoint ...
- JDBC结果集rs.next()注意事项
写在前面: 用JDBC从数据库中查询数据要用到结果集ResultSet,其中我们在获取结果的时候经常用到rs.next()方法来判断是否查询到了数据. 但是要特别注意,next()方法用一次,游标就往 ...
- springboot 入门五-日志一
springboot内部采用commons logging作为日志纪录,但也保留了第三方的日志框架接入的实现,例如Java Util Logging,Log4J2还有Logback.如果你要实现一种日 ...
- mysql 先分组在排序
mysql语句的语法模板: select distinct <select_list> from <left_table><join_type> join < ...
- Overlapping rectangles判断两个矩形是否重叠的问题 C++
Given two rectangles, find if the given two rectangles overlap or not. A rectangle is denoted by pro ...
- 细谈最近上线的Vue2.0项目(一)
8月初离职,来到现在的新东家负责一个新的项目.而我最近开发的两个webapp一直都是以Vue为主,这也是这篇文章的由来. 正文前的胡侃&一点点吐槽 在经历了两个公司不同的项目后,发现都存在一个 ...
- SQL数据库语句
on xxx --主文件 ( name=‘xxxx’, fliename='里面写文件放的路径\xxxx.mdf', size=xxMB, filegrowth=xxMB, maxsize=xxMB ...
- MobaXterm
MobaXterm又名MobaXVT,是一款增强型终端.X服务器和Unix命令集(GNU/ Cygwin)封装在一个单一的便携式exe文件.MobaXterm可以开启多个终端视窗,以最新的X服务器为基 ...