本文转自:python之Number

1、Python number数字

Python Number 数据类型用于存储数值。

数据类型是不允许改变的,这就意味着如果改变 Number 数据类型的值,将重新分配内存空间。

创建一个number数据值,改变数据的值,查看内存地址已发生改变:

1
2
3
4
5
6
>>> 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]

python基础===Number的更多相关文章

  1. Python开发【第二篇】:Python基础知识

    Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...

  2. 进击的Python【第三章】:Python基础(三)

    Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...

  3. 进击的Python【第二章】:Python基础(二)

    Python基础(二) 本章内容 数据类型 数据运算 列表与元组的基本操作 字典的基本操作 字符编码与转码 模块初探 练习:购物车程序 一.数据类型 Python有五个标准的数据类型: Numbers ...

  4. python基础之day1

    Python 简介 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. Python为我们提供了非常完善的基础代码库,覆盖了 ...

  5. Python基础+Pythonweb+Python扩展+Python选修四大专题 超强麦子学院Python35G视频教程

    [保持在百度网盘中的, 可以在观看,嘿嘿 内容有点多,要想下载, 回复后就可以查看下载地址,资源收集不易,请好好珍惜] 下载地址:http://www.fu83.cc/ 感觉文章好,可以小手一抖 -- ...

  6. python基础-函数式编程

    python基础-函数式编程  高阶函数:map , reduce ,filter,sorted 匿名函数:  lambda  1.1函数式编程 面向过程编程:我们通过把大段代码拆成函数,通过一层一层 ...

  7. python基础知识理解

    一.概述 看了一天的python基础语法,基本对python语法有了一个大概的了解(其实之前断断续续也看过python),学习网址:Python 基础教程.因为之前我学过C++,因此在学习python ...

  8. .Net程序员之Python基础教程学习----列表和元组 [First Day]

    一. 通用序列操作: 其实对于列表,元组 都属于序列化数据,可以通过下表来访问的.下面就来看看序列的基本操作吧. 1.1 索引: 序列中的所有元素的下标是从0开始递增的. 如果索引的长度的是N,那么所 ...

  9. Python之路【第二篇】:Python基础

    参考链接:老师 BLOG : http://www.cnblogs.com/wupeiqi/articles/4906230.html 入门拾遗 一.作用域 只要变量在内存中就能被调用!但是(函数的栈 ...

随机推荐

  1. 【Python】从简单案列中揭示常用内置函数以及数据类型

    前面提到了BIF(内置函数)这个概念,什么是内置函数,就是python已经定义好的函数,不需要人为再自己定义,直接拿来就可以用的函数,那么都有哪些BIF呢? 可以在交互式界面(IDLE)输入这段代码, ...

  2. HUAS 1480 虫洞(最短路)

    把每个点拆成两个点,分别表示黑洞和白洞,然后按题意模拟加边跑最短路即可. # include <cstdio> # include <cstring> # include &l ...

  3. BZOJ 1076 奖励关(状压期望DP)

    当前得分期望=(上一轮得分期望+这一轮得分)/m dp[i,j]:第i轮拿的物品方案为j的最优得分期望 如果我们正着去做,会出现从不合法状态(比如前i个根本无法达到j这种方案),所以从后向前推 如果当 ...

  4. Codeforces Round #521 Div. 3 玩耍记

    A:签到. #include<iostream> #include<cstdio> #include<cmath> #include<cstdlib> ...

  5. hdu 1392 Surround the Trees (凸包)

    Surround the Trees Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

  6. kafka搭建笔记

    环境CentOS7.0,JDK1.8 一.下载安装 在kafka官网 http://kafka.apache.org/downloads下载到最新的kafka安装包 下载 2.0.0 release, ...

  7. BZOJ4946 & 洛谷3826 & UOJ318:[NOI2017]蔬菜——题解

    https://www.lydsy.com/JudgeOnline/problem.php?id=4946 https://www.luogu.org/problemnew/show/P3826 ht ...

  8. BZOJ2242 [SDOI2011]计算器 【BSGS】

    2242: [SDOI2011]计算器 Time Limit: 10 Sec  Memory Limit: 512 MB Submit: 4741  Solved: 1796 [Submit][Sta ...

  9. B树,B+树,B*树简介

    B树(有些人也叫B-树) 是一种多路搜索树 : 1.定义任意非叶子结点最多只有M个儿子:且M>2: 2.根结点的儿子数为[2, M]: 3.除根结点以外的非叶子结点的儿子数为[M/2, M]: ...

  10. Redux的应该注意的问题

    1. Store中的State修改不能直接修改原有的State,若直接修改State,则redux中的所有操作都将指向 内存中的同一个state,将无法获取每一次操作前后的state,就无法追溯sta ...