我正在尝试检查tfw file中的值。 我有很多tfw文件,我需要循环浏览所有文件,并检查第一行中的值是否等于x。
我在任何地方都找不到如何处理tfw文件的方法。我知道它就像一个文本文件(ASCII),但不能与xxx.readlines
一起使用。有人知道我怎么读第一行吗?
示例:
0.6 -----> I NEED TO CHECK THIS VALUE
0
0
-0.6
355000.317
459999.682
答案 0 :(得分:1)
由于它是文本文件,因此您应该可以这样做:
tfw_file = open("filename", "r")
tfw_raw_data = tfw_file.read() #reading all text from file
tfw_file.close()
value_from_file = float(tfw_raw_data.split("\n")[0]) # splitting file by lines, getting first line and converting it to float
答案 1 :(得分:0)
下面的代码(如果不起作用,则必须将输入文件上传到公共位置,以便可以对代码进行测试)
with open('tfw.txt','r') as tfw:
x-scale= float(tfw.readlines()[0])
print('x-scale value: {}'.format(x-scale))
答案 2 :(得分:0)
现在可以使用:
for filename in os.listdir(root):
if filename.endswith('.tfw'):
with open (os.path.join(root,filename)) as f:
content = f.read()
line = float(content.split("\n")[0]
答案 3 :(得分:0)
您只能读取文件的第一行:
with open('data.tfw', 'r') as f:
value = float(f.readline())
print(f'Value: {value}')