首页 > 解决方案 > 尝试使用 Python 清理 QGIS 的文本文件

问题描述

我有一些文本文件想作为表格导入 QGIS,但像往常一样,数据有点混乱。所以我正在尝试编写代码来清理它,而无需花费数小时在数据输入地狱中。我有它来删除多余的逗号和换行符,但现在我希望它在任何实际单词之前放置一个冒号,因为大多数数据是数字,但每行的开头是一个州名。如果我能做到,QGIS 会完美地处理这些文件。

我有一些我认为应该可以工作的代码,并且运行良好,但是带有 join 函数的部分似乎没有做任何事情,所以我需要弄清楚我哪里出错了。

data_path = ('C:/GISclass/Homework/QGIS/BeeData/TestFile.txt')
data_file = open(data_path, 'r+')

data_content = data_file.read()

data_content = data_content.replace(':', '')
data_content = data_content.replace(', ,', ',')
data_list = data_content.split(',')

for word in data_list:
    if word[0].isalpha():
        ' '.join(':' + word for word in data_list)
    else:
        ' '.join(',' + word for word in data_list)

data_content = ''.join(data_list)

data_file.truncate(0)
data_file.seek(0, 0)

data_file.write(data_content)
data_file.close()

它以 for 语句开头的部分似乎不起作用。

标签: python-3.x

解决方案


推荐阅读