Python 数字处理函数(三)


文章目录

  • Python 数字处理函数(三)
  • 四、实现复数运算
  • 五、使用fractions模块处理分数
  • 六、使用NumPy模块

  本篇在Python 数字处理函数(一)和(二)的基础上,继续讲解 Python数字处理函数的知识。


四、实现复数运算

  在Python程序中,有如下两种方式实现复数运算:
  (1)使用“浮点数+后缀j”的格式进行指定。
  (2)使用函数complex(real, imag)实现复数运算功能,函数complex()的功能是创建一个值为“real+mag *j"的复数或者转化一个字符串或数为复数。其语法格式如下所示:

class comple([real[, imag]])

  参数real是int、long、float 或字符串格式,参数imag是int、long或float 格式;如果第一个参数为字符串,则不需要指定第二个参数。例如在下面的实例文件中,演示了操作处理复数数据的过程:

a = complex(2,4)
b = 3-5j
print(a)
print(b)
print(a.real)
print(a.imag)
print(a.conjugate())
print (a + b)
print(a * b)
print(a / b)
print(abs(a))
import cmath
print(cmath.sin (a))
print(cmath.cos(a))
print(cmath.exp(a))

  第一行使用函数complex()的格式来处理复数。第二行使用浮点数加后缀j的格式处理复数。
  第5~7行提取复数的实部、虚部和共辄值。
  第8~11行使用常见的算术运算来操作处理复数。
  最后4行使用 cmath模块执行和复数有关的求正弦、余弦或平方根函数操作。执行后会输出:

五、使用fractions模块处理分数

  在 Python程序中,通过内置模块fractions来处理分数。类Fraction是 fractions模块的核心,它继承了numbers.Rational类并且实现了该类所有的方法。类 Fraction句括加下所示的两个构造函数:

class fractions.Fracion (numerator=0,denominator=1)
class fractions.Fraction (int | float | str | Decimal | Fraction)

  开发者可以同时提供分子(numerator) 和分母 (denominator)给构造函数用于实例化Fraction类,但两者必须同时是int类型或者numbers.Rational类型,否则会抛出类型错误。当分母为0,初始化的时候会导致抛出异常ZeroDivisionError。
  如果只提供一个参数,则可以用上述五种类型进行初始化。当使用字符串进行初始化时,fractions模块使用内置的正则表达式进行匹配。而使用浮点数或者 Decimal 进行初始化时,fractions模块会在内部调用as_integer_ratio()。例如在下面的实例文件中,演示了使用fractions模块处理分数的过程:

from fractions import Fraction
print (Fraction(16,-10))
print (Fraction(123))
print (Fraction())
print (Fraction('3/7'))
print (Fraction('-3/7'))
print (Fraction('1.414213 \t\n'))
print (Fraction('-.1251'))
print (Fraction('7e-6'))
print(Fraction(2.25))
print(Fraction(1.1))
from decimal import Decimal
print (Fraction(Decimal('1.19')))

  执行后会输出:

六、使用NumPy模块

  在Python程序中,模块numpy (Numerical Python)提供了对多维数组对象的支持。不仅具有矢量运算能力,并且支持高级大量的维度数组与矩阵运算,也针对数组运算提供大量的数学函数库。例如在下面的实例文件中,演示了使用NumPy模块分别创建一维数组和二
维数组的过程:

import numpy as np
data = np.array([2,5,6,8,31]) #构造一个简单的数组
print (data)
datal = np.array([[2,5,6,8,3],np.arange(5)]) #构建一个二维数组
print (datal)

  执行后会输出:
[2 5 6 8 3]
[[2 5 6 8 3]
[0 1 2 8 4]]
  模块NumPy的主要功能是为Python提供数组对象,因为比标准Python中的列表有更好的性能表现,所以更加适合于做数学计算方面的工作。

自学Python 45 数字处理函数(三)相关推荐

  1. python爬虫实战技巧保盈_自学Python十 爬虫实战三(美女福利续)

    1 #-*- coding: utf-8 -*- 2 from __future__ importunicode_literals3 from HttpClient importHttpClient4 ...

  2. python中divmod的意思是_python 中的divmod数字处理函数浅析

    divmod(a,b)函数 中文说明: divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数 返回结果类型为tuple 参数: a,b可以为数字(包括复数) 版本: 在python2 ...

  3. python中divmod_python 中的divmod数字处理函数浅析

    divmod(a,b)函数 中文说明: divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数 返回结果类型为tuple 参数: a,b可以为数字(包括复数) 版本: 在python2 ...

  4. python苦逼_自学Python编程的第十天(希望有IT大牛看见的指点小弟我,万分感谢)---------来自苦逼的转行人...

    2019-09-20-23:24:15 今天逛论坛.逛知识星球时.逛b站up主时,都说到低学历,非科班的人最好不要去自学Python 他们都说:如果我们学python是为了找工作,最好不要把pytho ...

  5. 毫无头绪的自学Python,你可能连门槛都摸不到!

    目前的IT行业发展日趋迅猛,IT产业的产值成倍增长,不少人都打算从零基础开始学习python. 对于零基础的初学者来说,最迷茫的是不知道怎样开始学习? 那这里小编为大家规划了一条零基础自学必看pyth ...

  6. 毫无头绪的自学Python,你可能连门槛都摸不到

    Python入门到精通学习路线学习五个点: 目前的IT行业发展日趋迅猛,IT产业的产值成倍增长,不少人都打算从零基础开始学习python. 对于零基础的初学者来说,最迷茫的是不知道怎样开始学习? 那这 ...

  7. 【python开发】毫无头绪的自学Python,你可能连门槛都摸不到!

    目前的IT行业发展日趋迅猛,IT产业的产值成倍增长,不少人都打算从零基础开始学习python.对于零基础的初学者来说,最迷茫的是不知道怎样开始学习? 那这里小编为大家规划了一条零基础自学必看pytho ...

  8. 孤荷凌寒自学python第三十八天初识python的线程控制

    孤荷凌寒自学python第三十八天初识python的线程控制 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.线程 在操作系统中存在着很多的可执行的应用程序,每个应用程序启动后,就可以看着 ...

  9. 带你自学Python系列(十一):Python函数的用法(一)

    ↑ 点击上方[计算机视觉联盟]关注我们 今天是小编持续更新关于Python的知识总结以及Python实践项目应用的第11天,带你利用零碎时间自学最受欢迎的编程语言之一Python语言.你和小编一起打卡 ...

最新文章

  1. Quartz 2D Programming Guide笔记
  2. CTF-杂项16进制字符串类型的题目
  3. 机器学习中的训练与损失 test and loss (训练loss不下降原因集合)
  4. php accesscontrolalloworigin,php – Access-Control-Allow-Origin没有显示在codeigniter的响应头中...
  5. QT的QScriptEngineDebugger类的使用
  6. android分辨率比例成像,像素不是唯一 决定成像效果你必知的真相
  7. 第1章 计算机系统漫游(深入理解计算机系统)
  8. 分组分页连接查询子查询9202-0422
  9. 使用Maven构建Struts2项目
  10. 使用STM32CubeMX创建USB MSC工程
  11. firefox新标签页背景_如何更改或自定义Firefox的“新标签页”
  12. allwinner gsensor 校准调试
  13. 从未谋面只闻其名——缅怀张孝祥老师!
  14. 数据库连接池之自定义连接池(mysql)
  15. python 三维地球代码_Python地图可视化三大秘密武器
  16. 京东商城手机爬虫和数据分析项目
  17. 记一次错,数据库报syntax
  18. 如何判断一件事值不值得做?
  19. 电子计算机师德风范 论文,浅谈师德师风
  20. DNS被污染后怎么才能解决?

热门文章

  1. kubernetes节点减容与扩容
  2. python tensorflow学习笔记(六)最小二乘法
  3. 网页基础知识思维导图
  4. dede php,织梦(Dedecms){dede:php}{/dede:php}如何运用
  5. windows 7 cmd(ms DOS)命令窗口没有滚动条 还原CMD默认设置
  6. MongoDB数据库的下载, 安装与配置
  7. matlab响应曲面设计,响应曲面法与设计
  8. 耿丹CS16-2班第六次作业汇总
  9. Atitit.论图片类型 垃圾文件的识别与清理  流程与设计原则 与api概要设计 v2 pbj...
  10. 后疫情时代 亿联网络的攻与守