>백엔드 개발 >파이썬 튜토리얼 >python读取浮点数和读取文本文件示例

python读取浮点数和读取文本文件示例

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-06-16 08:44:151887검색

从文本文件中读入浮点数据,是最常见的任务之一,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()函数将字符串转换为浮点数

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.