python - 将行解析为单独的段 - python

标签 python

我是 python 的新手,在处理文本文件时遇到问题。显示了正在使用的文本文件结构。我要做的是首先将两条折线拆分成它们自己的变量,然后将每个变量拆分成单独的坐标。最终目标是将其结构化为:

polyline 1:
[###, ###] [###, ###]

polyline 2:
[###, ###] [###, ###]

文本文件结构:

Polyline;

1: ###,###; ###,###

2: ###,###; ###,###; ###,###

我试过的代码只适用于一行。虽然我已经能够拆分单条线,但我无法进入下一步,即进一步拆分线。

    f=open('txt.txt', 'r')
    pl = []
    for line in f.read().split('\n'):
        if (line.find('1: ') !=-1):
            ln = line.split('1: ')
            print ln
    f.close()

将线拆分到结束状态的最佳方法是什么?

最佳答案

首先,您可以使用 with ... as 语句打开一个文件,该文件将在 block 末尾关闭文件,其次,您不必读取文件并拆分为\n 只需使用 for 循环来遍历您的文件对象。

还可以使用正则表达式来检查数字的开头,在这种情况下,您可以使用 re.match 函数,然后您可以使用 ; 和使用列表理解将另一部分拆分为 , :

import re
with open('txt.txt') as f:
    for line in f:
        if re.match(r'\d:.*',line):
            ln = [var.split(',') for var in line.split(';')]
            print ln

关于python - 将行解析为单独的段 - python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32844040/

相关文章:

python - 从多级字典中提取特定路径

python - 如何将以建筑格式显示的测量值转换为 float ?

python - 创建一个计算单词和字符的函数(包括标点符号,但不包括空格)

python - 在生产中禁用 pyc 文件

python - Python/Django 中的个性化/随机 URL

python3 如何匹配 == 多个字符串

python - Python中的“就地”字符串修改

python - 当脚本可以从不同位置调用时,如何编写导入语句?

python - 如何在 Python 中实现基于指针的数据结构?

python - 如何将 UNIX 时间戳列表转换为 pandas 数据框中的日期时间对象列表?