阅读包含
的文本文件段:xy(10472.14 3793.00)xy(10471.87 3796.71)宽度(0.00)
并获取xy()中的值并将其写入磁盘上的新文本文件
答案 0 :(得分:2)
你真的应该尝试自己编写某些东西:
打开输入文件并阅读line
。
打开输出文件进行写入。
来自finditer
模块的 re
执行连续搜索,并在成功时返回匹配对象。在循环中调用它。构造一个寻找'xy(',然后是任何东西,然后')'的正则表达式。内括号捕获“任何东西”。你需要一个最小的匹配。
写出由匹配对象(groups()
)上调用的m
方法重新调整的元组的第一个元素。这将是捕获的“任何东西”。
现在去阅读手册。
答案 1 :(得分:0)
您没有提供太多信息,但这个非常基本的代码将完成这项工作(未经测试的代码):
whole = open('my_file','r').read()
for x in whole.split('\n'):
buf = x[10:28] + x[34:49] # adjust these values accordingly
open('out_file','w').write(buf)
请注意,此代码不会“适应”不同类型的字符串(例如模式小数点),因此正则表达式解决方案可能是更好的方法,但这将是您的作业; - )