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 ...
随机推荐
- Tabhost中Activity绑定Service
在android中,一个Activity绑定一个Service组件我们一般用Context().bindService方法就能够.可是假设这个 Activity属于一个Tabhost的话就不行了,在网 ...
- EBS採购模块中的级联接收和级联接收事务
EBS採购模块中的级联接收和级联接收事务 (版权声明,本人原创或者翻译的文章如需转载,如转载用于个人学习.请注明出处:否则请与本人联系.违者必究) 级联接收和级联接收事务 级联功能对来自于同一个供应商 ...
- Android TCP/IP 扫盲教程
TCP/IP 是因特网的通信协议. 通信协议是对计算机必须遵守的规则的描写叙述.仅仅有遵守这些规则.计算机之间才干进行通信. 浏览器和server都在使用 TCP/IP 因特网浏览器和因特网serve ...
- IIS 服务或万维网公布服务,或者依赖这 服务可能在启动期间错误发生或者已禁用
作者:jiankunking 出处:http://blog.csdn.net/jiankunking 详细错误信息例如以下: 解决方式: 在服务中禁用下面3个服务自己主动启动: Net.Msmq Li ...
- Elasticsearch批处理操作——bulk API
Elasticsearch提供的批量处理功能,是通过使用_bulk API实现的.这个功能之所以重要,在于它提供了非常高效的机制来尽可能快的完成多个操作,与此同时使用尽可能少的网络往返. 1.批量索引 ...
- 【功能代码】---3 JS判断字符串是否包含某个字符串
JS判断字符串是否包含某个字符串 var str ="abc"; if(str.indexOf("bc")>-1){ alert('str中包含bc字符串 ...
- 管道设计CAD系统中重量重心计算
管道设计CAD系统中重量重心计算 eryar@163.com Abstract. 管道设计CAD系统中都有涉及到重量重心计算的功能,这个功能得到的重心数据主要用于托盘式造船时方便根据重心设置吊装配件. ...
- 【java设计模式】代理模式
计算类中方法运行时间的几种方案: Client: package com.tn.proxy; public class Client { public static void main(String[ ...
- ES6之Symbol
ES6中Symbol是为了防止属性名冲突而引入的,是独一无二的.Symbol值是通过Symbol函数生成.Symbol值不能与其他类型的值运算否则会报错且Symbol的值可以转换为字符串或者是布尔值但 ...
- 常规流(Normal flow)
连我自己把float和绝对定位,都称为脱离文档流,想想概念又不那么清晰,于是寻找了W3C资料来理解,才发觉不应该叫文档流. 资料 英文:https://www.w3.org/TR/CSS22/visu ...