如何使用python读取文件的一部分?

时间:2017-03-30 02:28:08

标签: python

我目前正在尝试创建一个打印出文件特定部分的python程序。我尝试使用file.read()和file.readline(),但我似乎无法得到一个确切的位置,只是整行或位。是否有更好的使用功能或我可以使用的导入?

我遇到的问题是我的文件输出读取

facet normal 0.00000e+00 0.00000e+00 0.00000e+00

我想取值并将它们放入变量中。我想创建一个if语句,它接受这三个值并将它们添加到不同的变量,但是我不知道这样做的函数。我应该首先尝试解析文件吗?

我提供输出的代码是

f = open ('/pycharm/sphere.stl')
for line in f:
  print(line)

我想按照

的说法进行if声明
f = open ('/pycharm/sphere.stl')
for line in f:
  if line == "facet normal"
    a = nextFloat()
    if a == true
      b = nextFloat()
      if b == true
        c = nextFloat()
      if c == true
        d = a + b + c
        print (d)

我正在尝试解决d但我无法找到一种方法来使用文件的输出来输入d。

1 个答案:

答案 0 :(得分:-1)

我认为你要找的是regular expressions。但是,您原则上可以执行split

之类的操作
for line in f.readlines():
  if line.split()[0] == 'fact normal':
    a = nextFloat() ## the rest of your code...
希望能帮到你。