python读取浮点数和读取文本文件示例
从文本文件中读入浮点数据,是最常见的任务之一,python没有scanf这样的输入函数,但我们可以利用正规表达式从读入的字符串中提取出浮点数
import re
fp = open('c:/1.txt', 'r')
s = fp.readline()
print(s)
aList = re.findall('([-+]?\d+(\.\d*)?|\.\d+)([eE][-+]?\d+)?',s) #使用正规表达式搜索字符串
print(aList)
for ss in aList:
print(ss[0]+ss[2])
aNum = float((ss[0]+ss[2]))
print(aNum)
fp.close()
12.540 56.00 1.2e2 -1.2E2 3.0e-2 4e+3
12.540 56.00 1.2e2 -1.2E2 3.0e-2 4e+3
[('12.540', '.540', ''), ('56.00', '.00', ''), ('1.2', '.2', 'e2'), ('-1.2', '.2', 'E2'), ('3.0', '.0', 'e-2'), ('4', '', 'e+3')]
12.540
12.54
56.00
56.0
1.2e2
120.0
-1.2E2
-120.0
3.0e-2
0.03
4e+3
4000.0
注解:
按行读入文本文件,利用正规表达式找出字符串中的浮点数,使用float()函数将字符串转换为浮点数
相关推荐
-
Python字符串转换成浮点数函数分享
利用map和reduce编写一个str2float函数,把字符串'123.456'转换成浮点数123.456 from functools import reduce def str2float(s): return reduce(lambda x,y:x+int2dec(y),map(str2int,s.split('.'))) def char2num(s): return {'0':0,'1':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':
-
python中精确输出JSON浮点数的方法
有时需要在JSON中使用浮点数,比如价格.坐标等信息.但python中的浮点数相当不准确, 例如下面的代码: 复制代码 代码如下: #!/usr/bin/env python import json as json data = [ 0.333, 0.999, 0.1 ]print json.dumps(data) 输出结果如下: 复制代码 代码如下: $ python floatjson.py[0.33300000000000002, 0.999, 0.10000000000000001] 能
-
关于Python中浮点数精度处理的技巧总结
前言 最近在使用Python的时候遇到浮点数运算,发现经常会碰到如下情况: 出现上面的情况,主要还是因浮点数在计算机中实际是以二进制保存的,有些数不精确. 比如说: 0.1是十进制,转化为二进制后它是个无限循环的数: 0.00011001100110011001100110011001100110011001100110011001100 而python是以双精度(64)位来保存浮点数,多余的位会被截掉,所以看到的是0.1,但在电脑上实际保存的已不是精确的0.1,参与运算后,也就有可能点误差,特
-
python使用正则搜索字符串或文件中的浮点数代码实例
用python和numpy处理数据次数比较多,写了几个小函数,可以方便地读写数据: # -*- coding: utf-8 -*- #---------------------------------------------------------------------- # FileName:gettxtdata.py #功能:读取字符串和文件中的数值数据(浮点数) #主要提供类似matlab中的dlmread和dlmwrite函数 #同时提供loadtxtdata和savetxtdata函
-
Python中的浮点数原理与运算分析
本文实例讲述了Python中的浮点数原理与运算.分享给大家供大家参考,具体如下: 先看一个违反直觉的例子: >>> s = 0. >>> for i in range(10): s += .1 >>> s 0.9999999999999999 # 错误被累加 再看一个更为普遍,直接影响判断逻辑的例子: >>> from math import sqrt >>> a = sqrt(2) >>> a*a
-
Python双精度浮点数运算并分行显示操作示例
本文实例讲述了Python双精度浮点数运算并分行显示操作.分享给大家供大家参考,具体如下: #coding=utf8 def doubleType(): ''''' Python中的浮点数是双精度浮点数,可以用十进制或科学计数法表示. 实际精度依赖于机器架构和创建Python解释器的编译器. 浮点数值通常都有一个小数点和一个可选的后缀e(大写或小写,表示科学计数法). 在e和指数之间可以用正(+)或负(-)表示指数的正负(正数可以省略符号) ''' (one,two,three,four,fiv
-
Python两个整数相除得到浮点数值的方法
在python中进行两个整数相除的时候,在默认情况下都是只能够得到整数的值,而在需要进行对除所得的结果进行精确地求值时,想在运算后即得到浮点值,那么如何进行处理呢? 1.修改被除数的值为带小数点的形式即可得到浮点值,这种方法在被除数事先知道的情况下才可以采用有效,而这种情况意味着被除数的值是写死的.固定的,在绝大多数的情况下是不可行的: 2.在进行除法运算前导入一个实除法的模块,即可在两个整数进行相除的时候得到浮点的结果; 复制代码 代码如下: from __future__ import di
-
python中实现精确的浮点数运算详解
为什么说浮点数缺乏精确性? 在开始本文之前,让我们先来谈谈浮点数为什么缺乏精确性的问题,其实这不是Python的问题,而是实数的无限精度跟计算机的有限内存之间的矛盾. 举个例子,假如说我只能使用整数(即只精确到个位,计算机内的浮点数也只有有限精度,以C语言中的双精度浮点数double为例,精度为52个二进制位),要表示任意实数(无限精度)的时候我就只能通过舍入(rounding)来近似表示. 比如1.2我会表示成1,2.4表示成2,3.6表示成4. 所以呢? 在算1.2 - 1.2的时候,由于计
-
python读取浮点数和读取文本文件示例
从文本文件中读入浮点数据,是最常见的任务之一,python没有scanf这样的输入函数,但我们可以利用正规表达式从读入的字符串中提取出浮点数 复制代码 代码如下: import refp = open('c:/1.txt', 'r')s = fp.readline()print(s)aList = re.findall('([-+]?\d+(\.\d*)?|\.\d+)([eE][-+]?\d+)?',s) #使用正规表达式搜索字符串print(aList)for ss in aList:
-
Python如何实现逐行读取文本文件
目录 Python 中的 open() 函数是什么 文件名和正确路径 open() 中的可选模式参数 Python 中 open() 函数的其他参数 Python 中的 read() 方法 Python 中的 close() 方法 Python 中的 readline() 方法 Python 中的 readlines() 方法 总结 在Python 中有几种方法可以读取文本文件. 在本文中,我将介绍 open() 函数.read() 方法.readline() 方法.readlines() 方法
-
Python学习笔记之读取文件、OS模块、异常处理、with as语法示例
本文实例讲述了Python学习笔记之读取文件.OS模块.异常处理.with as语法.分享给大家供大家参考,具体如下: 文件读取 #读取文件 f = open("test.txt","r") print(f.read()) #打印文件内容 #关闭文件 f.close() 获取文件绝对路径:OS模块 os.environ["xxx"] 获取系统环境变量 os.getcwd 获取当前python脚本工作路径 os.getpid() 获取当前进程ID
-
Python 文件操作之读取文件(read),文件指针与写入文件(write),文件打开方式示例
本文实例讲述了Python 文件操作之读取文件(read),文件指针与写入文件(write),文件打开方式.分享给大家供大家参考,具体如下: demo.py(读取文件): # 1. 打开文件 file = open("readme.txt") # 文件不存在会抛异常. 默认以只读方式打开 # with open("readme.txt") as file: # 这种方式,会自动close()释放资源 # 2. 读取文件内容 text = file.read() #
-
python将txt文件读取为字典的示例
如下所示: # -*- coding: utf-8 -*- # @Time :18-8-2 下午3:23 import sys reload(sys) sys.setdefaultencoding('utf8') fp = open("file", "r") sample = fp.readlines() result_list = [] # 创建一个空列表 with open('file', 'w') as f: for line in sample: resul
-
Python vtk读取并显示dicom文件示例
因为做项目的原因,所以接触到了医学图像dicom文件.vtk刚开始看,这里仅仅只是其最简单的读取显示功能.此处用到了vtk库,可自行百度安装方法. 下面附上代码: from vtk import * # reader the dicom file reader = vtkDICOMImageReader() reader.SetDataByteOrderToLittleEndian() reader.SetFileName("00efb2fedf64b867a36031a394e5855a.dc
-
Python读取分割压缩TXT文本文件实例
废话不多说,上代码看吧! ''' 为了避免截断中文字符 文件要求是 unicode 编码 txt文件另存为对话框下面有下拉框,可选存 储编码格式 ''' import os import struct #导入所需python模块方法 filename = str(raw_input("Please enter an old file name: ")) filenamepre = str(raw_input("Please enter an new file name pre
-
Python OpenCV读取显示视频的方法示例
目标 学习读取视频,显示视频和保存视频. 学习从相机捕捉并显示它. 你将学习以下功能:cv.VideoCapture(),cv.VideoWriter() 从相机中读取视频 通常情况下,我们必须用摄像机捕捉实时画面.提供了一个非常简单的界面.让我们从摄像头捕捉一段视频(我使用的是我笔记本电脑内置的网络摄像头) ,将其转换成灰度视频并显示出来.只是一个简单的任务开始. 要捕获视频,你需要创建一个 VideoCapture 对象.它的参数可以是设备索引或视频文件的名称.设备索引就是指定哪个摄像头的数
-
python在CMD界面读取excel所有数据的示例
代码 import xlrd import os from prettytable import PrettyTable import pandas #创建一个Excel表类 class Excel(object): def __init__(self, path): self.path = path //路径要加上文件名 #读取Excel内全部数据 参数sname是sheet页名字 def read_all_data(self, sname): workbook = xlrd.open_wor
-
python读取Windows注册表的示例代码
运行结果 代码 import winreg def read_reg(): location = r"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders" # 获取注册表该位置的所有键值 key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, location) print("\n" + "-"*100 + "\
随机推荐
- 基于JavaScript实现跳转提示页面
- redis的hGetAll函数的性能问题(记Redis那坑人的HGETALL)
- Js使用WScript.Shell对象执行.bat文件和cmd命令
- 反序显示输入内容批处理
- 仅需几行代码实现方便易用的状态栏指示器
- Java集合框架LinkedList详解及实例
- iOScollectionView广告无限滚动实例(Swift实现)
- asp.net c#采集需要登录页面的实现原理及代码
- C#异常处理总结及简单实例
- 探讨Vue.js的组件和模板
- PL/SQL 日期时间类型函数及运算
- jquery利用拖拽方式在图片上添加热链接
- jQuery实现6位数字密码输入框
- 利用jQuery和CSS将背景图片拉伸
- Javascript 圆角div的实现代码
- Android 分享功能的实现代码
- listview点击无效的处理方法(推荐)
- C#中Serializable序列化实例详解
- python直接获取API传递回来的参数方法
- 简单理解java泛型的本质(非类型擦除)