Python学习笔记二:数值类型

1、数值类型

Python 3中有6种标准的数据类型:
Number(数字)、String(字符串)、 List(列表)、Tuple(元组)、Sets(集合)、Dictionary(字典)。其中,Python 3 支持3种不同的数值类型:整型(int)、浮点型(float)、复数(comlex)

1)整型

int通常被称为整型或整数,是正、负整数,不带小数点。在Python 3中,整型没有限制大小,可以当做long类型使用,所以Python 3没有Python 2的long类型。

在整数除法中,除法(/)计算结果是浮点数,即使两个整数恰好整除,结果也是浮点数。如果只想得到整数的结果,丢弃可能的分数部分,可以使用取整除(//),整数的取整除(//)永远是整数,及时除不尽。

2)浮点型

浮点数由整数部分与小数部分组成,也可以是用科学计数法表示。
整数和浮点数在计算机内部存储的方式不同,整数运算数永远是精确的,而浮点数运算可能会有四舍五入的误差。
对于金融等对数值精度高要求的情况下,可以使用decimal模块

3)复数

复数由实数部分和虚数部分构成,可以用a + b j或complex(a,b)表示,复数的实部a和虚部b都是浮点型。

2、数据类型转换

有时需要对数据内置的类型进行转换,只需要将数据类型作为函数名即可。
数据的类型转换时有如下4个函数可以使用:

  • int(x) 将x转换为一个整数
  • float(x) 将x转换为一个浮点数
  • complex(x) 将x转换为一个复数,实数部分为x,虚数部分为0
  • complex(x,y) 将x和y转换为一个复数,实数部分为x,虚数部分为y。x和y是数字表达式。
  • 二进制 ob bin(x)将x转换为2进制
  • 八进制 0o oct(x)将x转换为8进制
  • 十六进制 0x hex(x)将x转换为16进制

3、常量、变量

1)常量

所谓常量,就是不能变的变量。在Python中,通常用全部大写的变量名表示常量。
Python中有两个比较常见的常量,即PI和E

  • PI:数学常量pi(圆周率)
  • E :数学常量e,即自然常数

2)变量

变量指向各种类型值的名字,以后再用这个值时,直接引用名字即可,不用再写具体的值,在Python中,变量的使用环境非常宽松,没有明显的变量声明,而且类型不是固定的。可以把一个整数赋值给变量,如果觉得不合适的话,把字符串赋值给变量也可以。

在使用变量前需要对其赋值,没有值得变量是没有意义的,编译器也不会编译通过。

变量名是由数字或字符组成的任意长度的字符串,必须以字母开头。使用大写字母是合法的,但变量名建议使用小写字母开头。Python是区分大小写的。

下划线“_”可以出现在变量名中,经常用于连接词组,如do_it_with_more_practice, happy_study。如果给变量取非法的名称,解释器会显示语法错误。

扫描二维码关注公众号,回复: 398945 查看本文章

4、动态类型

静态类型:定义变量时就确定变量类型,后期存储数值时不可以超出该变量类型
动态类型:定义变量时不需要定义变量类型,而是通过赋值内容来确定变量类型

  • 变量没有类型约束
  • 类型取决于关联对象

Python中有内存存储和变量表两部分,Python会先在内存存储空间内创建变量内容,然后在变量表创建变量名,然后将变量名和变量内容进行相关联,

5、变量存储

  • 对象有类型,存储在内存区域
  • 变量名指向实际对象,变量本身无类型
  • 对象本身带有类型描述及引用计数器

6、共享引用

共享引用:多个变量引用同一个对象,即变量的id相同;

  • ==判断字面值是否相等
  • is判断引用对象地址是否相同;
  • Python已经在内存中已经自动缓存好0-255,即定义这些变量,它们的地址是相同的,共享引用;
  • 小型字符串也可能被Python缓存
  • 通过id(obj)检测对象地址

7、垃圾回收机制

Python自动释放未被引用的对象,通过对象引用计数器统计引用。

8、常用数学函数

1)数学函数

函数 描述
abs(x) 返回数字的绝对值,如abs(-10) 返回 10
ceil(x) 返回数字的上入整数,如math.ceil(4.1) 返回 5
cmp(x, y) 如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1。 Python 3 已废弃 。使用 使用 (x>y)-(x
exp(x) 返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045
fabs(x) 返回数字的绝对值,如math.fabs(-10) 返回10.0
floor(x) 返回数字的下舍整数,如math.floor(4.9)返回 4
log(x) 如math.log(math.e)返回1.0,math.log(100,10)返回2.0
log10(x) 返回以10为基数的x的对数,如math.log10(100)返回 2.0
max(x1, x2,…) 返回给定参数的最大值,参数可以为序列
min(x1, x2,…) 返回给定参数的最小值,参数可以为序列
modf(x) 返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示
pow(x, y) x**y 运算后的值
round(x [,n]) 返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数
sqrt(x) 返回数字x的平方根

2)随机数函数

随机数可以用于数学,游戏,安全等领域中,还经常被嵌入到算法中,用以提高算法效率,并提高程序的安全性。

函数 描述
choice(seq) 从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数
randrange ([start,] stop [,step]) 从指定范围内,按指定基数递增的集合中获取一个随机数,基数缺省值为1
random() 随机生成下一个实数,它在[0,1)范围内
seed([x]) 改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定
shuffle(lst) 将序列的所有元素随机排序
uniform(x, y) 随机生成下一个实数,它在[x,y]范围内

3)三角函数

Python包括以下三角函数:

函数 描述
acos(x) 返回x的反余弦弧度值
asin(x) 返回x的反正弦弧度值
atan(x) 返回x的反正切弧度值
atan2(y, x) 返回给定的 X 及 Y 坐标值的反正切值
cos(x) 返回x的弧度的余弦值
hypot(x, y) 返回欧几里德范数 sqrt(x*x + y*y)
sin(x) 返回的x弧度的正弦值
tan(x) 返回x弧度的正切值。
degrees(x) 将弧度转换为角度,如degrees(math.pi/2) , 返回90.0
radians(x) 将角度转换为弧度

4)数学常量

函数 描述
pi 数学常量 pi(圆周率,一般以π来表示)
e 数学常量 e,e即自然常数(自然常数)

猜你喜欢

转载自blog.csdn.net/viatorsun/article/details/80178527