我在python中生成日志文件。我有大约20个参数,我正在从config.cnf文件中读取。根据这些参数的值,我命名日志文件。 我想使用缩写来缩短文件名。从我的代码生成的文件和目录的当前名称非常长。
这是文件名“ cifar10_symm_ter_1bits_128_256_512_f1024_2_det_fil_ssl_1e-06_chan_ssl_1e-06_fco_ssl_1e-06_fci_ssl_1e-06_prthr1e-06_bc_init_cgs_c_50_4_cgs_f_50_16.txt ”的示例。在这里,我插入了不同的参数名称,例如“symm_ter”,并在参数后面添加了参数的详细信息为“1bits”。如果他们是一些推荐的命名技术等,而不是一个也应该有帮助的库。
我想缩短文件和文件夹名称,同时在文件名中包含有关参数的详细信息。 如果有一些python库可以帮助我缩写文件名中使用的参数的名称,这将解决我的任务。另外,如果该库可以帮助显示有助于缩写参数的详细信息,这将有助于。我查看了argparse库,但这是针对命令行参数的。在我的代码中,我正在从config.cnf,配置文件中读取。我已经阅读了python模块命名约定;但是我担心这里名字的简洁。
答案 0 :(得分:0)
您可以通过自己的字典对选项进行编码来缩短(例如,如果某些选项只有128,256,512,您可以决定它将是A B或C)但是您将失去可读性。
事实上,我认为你走错了路。该名称不是存储20个参数的位置。如果21或者很长的选择会发生什么?你已经遇到麻烦了
如果我必须这样做,我将使用日志文件的通用名称(例如:Mylog + datetime),并将20个参数作为我的第一个日志行,添加具有相同根目录的辅助文件(例如:mylog + datetime +。 desc)存储和检索这些值。
心连心
您似乎想要使用文件名作为描述符来设计cms(内容管理系统)。如果您需要将这些文件夹作为个人移动,这(有点)是有意义的
如果您的商店将保持相同的位置,使用sqlite数据库链接文件夹名称及其参数将更加强大,在python中非常简单。