Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发。

在这篇文章中,我将向您解释如何用python生成一系列浮点数。我已经用python写了几个示例,演示了如何在自定义range()函数的start,stop和step参数中使用浮点数来打印一系列浮点数。

在这篇文章中提到的例子适用于python的所有版本即python3和python2。

在举例之前先去了解一下现有的range()函数处理浮点值的局限性吧。

Python的一系列浮点数

内容列表

1.python的range()函数的局限性

2.在Python中使用numpy的arange()函数去生成一系列浮点数

3.不使用任何的库或模块用Python生成一系列浮点数

3.1.frange()函数来返回两个浮点数之间的一系列浮点值

4.使用Python Generator生成一系列浮点数

4.1.使用生成器生成一系列仅正浮点数的程序

4.2.使用生成器生成一些列仅负浮点数的程序

5.在range()函数的step参数中使用浮点数

6.在range函数中使用浮点数的其它实例

6.1.使用Scipy生成一系列浮点数

6.2.Python中使用迭代工具生成一系列浮点数

python的range()函数的局限性

你必须知道Python range()函数和它的使用方法。Python的range()函数最普遍的用法是在给定的开始整型数到结束整型数之间生成数字。

Python的range()函数的局限性主要是它只适用于整型数。

Python的range()函数不支持浮点类型即我们不能在它的任何参数中(即start,stop,step)使用浮点数或者非整型数。

举个例子,让我们来看下面的源代码。在这个代码中,我们尝试去在python使用打印两个浮点数之间的一系列数字。

如果你尝试执行上面的代码,Python将引发一个类型错误:'float' object cannot be interpreted as an intege。即python的range()函数中浮点数不能解释为一个整数。

那么如何在python中生成一系列浮点数呢?

有多种多样的方法去实现。让我们一一举例说明。

在Python中使用numpy的arange()函数去生成一系列浮点数。

你可以使用Python编程语言的numpy模块来打印一系列浮点数。

· NumPy库有许多数值函数和数学函数来处理多维数组和矩阵。

· NumPy不是python标准库的一部分(即它不会伴随python默认安装)但是相对容易安装和使用。

那么numpy库的哪些函数能生成一系列非整型数字?

NumPy拥有arange()函数来得到开始和结束两个浮点数之间的浮点数。

arange()函数具有和python range()函数一样的语法和功能。

此外,他的所有参数还支持浮点数。即我们可以给start,stop和step参数传递浮点数。

Numpy的arange()函数的语法:

你需要使用pip安装numpy模块以使用这个函数。

让我们用下面这个实例演示一下。

输出:

你也可以使用numpy的lincespae()函数来实现相同的功能。

但是主要问题是numpy是一个第三方库并且增加了依赖性管理、存储方面的开销(对于软件包本身),尤其是当你想要去使用arange()函数时。

因此一些人不想仅仅为了这个用numpy或者其它库。你可以编写自己的的函数来生成一系列浮点数。我已经举了这样的例子。

不使用任何的库或模块用Python生成一系列浮点数

我已经使用简单的逻辑写了一个代码样品来生成一系列浮点数。这个代码正浮点数和负浮点数都适用。

这个程序分为2部分。第一部分包括函数frange()。另一部分包括用下面的方法使用浮点数测试frange()函数。

1.在range()的参数中使用正浮点值。

2.在range()的参数中使用负浮点值。

3.在frange()参数中使用正数和负数步长值。

4.用相反的顺序显示一系列浮点数。

我们使用for循环来迭代一系列浮点数。

frange()函数来返回两个浮点数之间的一系列浮点值

输出:

在执行完上面提到的所有代码后你应该得到下面的输出。

使用Python Generator生成一系列浮点数

你可以像python的range()函数一样定义一个生成器即range(start, stop, step)接受浮点数或者分数并且输出数字。在这个例子中我为正值使用+或者<,为负值使用-和>。

我为正浮点数步长和负浮点数步长创造了两个单独的函数frange()。

使用生成器生成一系列仅正浮点数的程序

输出:

使用生成器生成一系列仅负浮点数的程序

输出:

在range()函数的step参数中使用浮点数

像整数的step值一样,我们可以在我们定制的range()函数中使用浮点数step值。我们可以使用浮点数step生成一个特殊间隔的浮点数。让我们用一个例子看一下如何在pyhton的range()函数中使用浮点数step。在这个例子中,step值为2.5。

你应该得到下面的输出:

在range函数中使用浮点数的其它实例

下面的代码对于不太熟悉python的同学很有用。

让我们运行上面的代码来得到一系列正小数和负小数。

输出:

用Scipy生成一系列浮点数

Scipy有一个内建函数arange(),它泛化了Python的range()构造器去处理浮点数。实际上你可以发现它和numpy的arange()函数一样准确。

Python中使用迭代工具生成一系列浮点数

输出:

英文原文:https://pynative.com/python-range-for-float-numbers/

译者:嘉兴

python语言中浮点数_举例说明python如何生成一系列浮点数相关推荐

  1. python语言基础实验_实验二Python语言基础函数包练习.doc

    实验二Python语言基础函数包练习 实验 Python语言基础函数包练习:1208 学号: 实验目的 1.Python语言包,如math.NumPySciPy和Matplotlib等函数包的使用实验 ...

  2. python语言中一切皆对象_2 python 中一切皆对象

    python 中一皆对象 在 python 编程语言中所有的一切都是对象 , python 语言相对于 C++ 或 java 这样的语言 (静态语言), 面向对象这个思想更加的彻底. 2.1 函数和类 ...

  3. 程序异常是python语言基本控制结构_计算机二级python 知识点篇(程序的控制结构)...

    计算机二级python 知识点篇(程序的控制结构) 程序的基本结构 程序由三种基本结构组成: 顺序结构. 分支结构和循环结构 分支结构 单分支结构 if and 表示多个条件"与" ...

  4. python声明匿名函数_举例讲解Python的lambda语句声明匿名函数的用法

    所谓匿名函数,即是不需要定义函数,像表达式一样使用,不需要函数名(很多时候名字让我很困扰),一些简单的函数简单化, 举个例子 我需要两个整数相加的函数,通常是这么定义的def add(x, y): r ...

  5. python语言画图代码_零: python matplotlib 画图进阶(含完整代码)

    导论: 在科研和研究的过程中,无论是哪个学科或者将来走上工作岗位,可视化是非常重要的一个环节. 这里的重要性,在我看来有三点:人是视觉动物,老板看你工作做的怎么样,paper reviewer看你研究 ...

  6. python语言format用法_详解Python中的format格式化函数的使用方法

    format函数实现字符串格式化的功能 基本语法为: 通过 : 和 {} 来控制字符串的操作 一.对字符串进行操作 1. 不设置指定位置,按默认顺序插入 ①当参数个数等于{}个数的时候 str_1 = ...

  7. python语言打小数点_如何在python中打小数点-问答-阿里云开发者社区-阿里云

    python提供了三种浮点值:内置的float与complex类型,以及标准库的decimal.Decimal类型. float类型存放双精度的浮点数,具体取值范围依赖于构建python的c编译器,由 ...

  8. python语言arrows用法_如何在Python中使用pyarrow读取parquet文件

    我已经从数据库中创建了一个具有三列(id.author.title)的parquet文件,并希望使用条件(title='learnpython')读取拼花板文件. 下面提到的是我用于这个POC的pyt ...

  9. python类中函数_如何在Python类中使用模块函数

    参见英文答案 > How do you call a private module function from inside a class?                           ...

最新文章

  1. android 蓝牙耗电量,外媒测试手机蓝牙耗电情况:近乎毫无影响
  2. Hybird混合开发APP初学体验
  3. java 图片上传
  4. python-模块入门二(模块循环导入,区分python文件的两种用途,模块搜索路径,软件开发的目录规范)...
  5. tp的echo输出字符串后换行
  6. G - Caesar Cipher Gym - 102798G
  7. Mariadb升级到mysql_mariadb的版本升级方法
  8. 数据智能知多少?(超大礼包等你拿)
  9. java-io-FileReader和FileWriter类
  10. java jdk的作用_Java JDK环境配置及配置作用说明
  11. 2018怎么打开2019_2019年养老金涨幅5%,这几个方面有调整,你到手的钱增加没
  12. 第十章 深度强化学习-Prioritized Replay DQN
  13. linux子系统安装docker,linux上安装Docker(非常简单的安装方法)
  14. 技巧:linux开机自动启动脚本(转)
  15. 手机3D建模初现端倪,预计今年市场规模将达1.45亿美元
  16. (已更新)【全开源商城小程序源码】ThinkPHP 5.1+带后台商城源码程序+带详细安装使用文档
  17. 最极致Windows仿Mac2.0【win11可用】——30分钟完成(W001)
  18. 二级路由器下的pc如何使用映射网络驱动器的方式添加一级路由器下nas共享的文件夹
  19. python毒酒检测_Turkey HSD检验法/W法
  20. Linux运维入门到高级

热门文章

  1. 【陈工笔记】# 人脸识别的实际操作记录 #
  2. python web开发-Python Web开发从入门到精通
  3. 联想拯救者y7000p电脑坏了,拿去维修了
  4. 全球及中国持续内存行业容量预测及需求规模调研报告2021年版
  5. Oracle 初始化参数详解
  6. Python如何写出健壮的代码
  7. Manytasking optimization MATP
  8. 【PP生产订单】入门介绍(一)
  9. 苹果开发者账号申请流程完整版 https://www.jianshu.com/p/655380201685
  10. wukong-robot-基于树莓派构建智能问答机器人