在此添加简短描述!
geopathfinder的Python项目详细描述
============= 地质探测器
用于在包含地理数据集的数据结构中创建、查询和搜索的包。
说明
此软件包旨在提供一个丰富的工具箱,用于高效、快速和精确地处理地理数据的文件名和文件夹结构,当与网格对象(如https://github.com/TUW-GEO/Equi7Grid)结合使用时最为方便。
通过由字符串定义、文件夹路径逻辑和文件名en-/decoders组成的预定义集,可以实现各种文件/文件夹命名约定。
基类smartpath()和smarttree()还包含用于文件搜索和文件夹(-tree)卷确定的函数。
添加新的文件命名约定
一般来说,请遵循现有命名约定的代码和测试准则。 以下描述旨在说明如何实现新的命名约定:在文件夹“geopathfinder/naming_conventions/”中创建一个新的.py文件。文件名应该是新命名约定的缩写,与带有下划线的“naming”分开,例如“sgrt_naming.py”ot“eodr_naming.py”。
在这个文件中,编写一个新类,它继承自smartfilename。在这个类中,您可以定义文件名结构的外观。对于每个字段,如果分隔符应该位于文件名的当前部分和上一部分之间(“delim”,布尔值),则可以定义字段的长度(“len”,整数),如果需要,还可以定义解码和编码函数(“decoder”,“encoder”)。后一个参数应该通过lambda函数指向在同一类中定义的解码或编码方法。
最后,父类smartfilename可以用给定的字段、字段定义、填充、分隔符和布尔值(如果是否应该应用en-/decoding)启动。
有时需要文件名中的信息,可以直接从一个或多个文件名条目中导出。例如,从文件名中指定的开始日期和结束日期派生的平均日期。 要允许这样做,可以在当前类中定义用property标记的方法。smartfilename然后将继承类的属性与字段定义中给定的公共文件名项同等处理。
第二个重要部分是按照新的文件命名约定解析字符串的功能。为此, 在类定义下创建一个新函数。应将其命名为“create_[]_filename”,其中“[%”应替换为新命名约定的缩写。 此函数应将文件名字符串拆分为初始化字段字典所需的部分。因此,函数返回之前定义的类的类实例。
将测试添加到“tests”中,并将测试文件命名为“test\u[]\u naming.py”,其中“[%”应替换为新命名约定的缩写。
注
这个项目是使用PyScaffold 2.5.11建立的。详细信息和用法 有关pyscaffold的信息,请参见http://pyscaffold.readthedocs.org/。