如何预加前缀“quot_&引用;到文件夹中的所有文件,在文件列表中[Python]

如何预加前缀“quot_&引用;到文件夹中的所有文件,在文件列表中[Python],python,Python,每天我都在运行我的脚本,它输出一个日志文件。我有一个外部配置单元表,读取文件夹中没有前缀“\ux”的所有文件。因此,每当我运行脚本时,我都需要在文件夹中所有以“.log”结尾的文件前面加上“\ux”,而这些文件没有“\ux”前缀 我的文件夹结构是这样的 -output -_data-2020-04-10.log -data-2020-04-11.log 我的代码现在是这样的 if __name__ == "__main__" df = fetch_todays_dat

每天我都在运行我的脚本,它输出一个日志文件。我有一个外部配置单元表,读取文件夹中没有前缀“\ux”的所有文件。因此,每当我运行脚本时,我都需要在文件夹中所有以“.log”结尾的文件前面加上“\ux”,而这些文件没有“\ux”前缀

我的文件夹结构是这样的

 -output
   -_data-2020-04-10.log
   -data-2020-04-11.log
我的代码现在是这样的

 if __name__ == "__main__"
     df = fetch_todays_data() #Returns dataframe
     if not [f for f in os.listdir(dataPath) if not f.startswith('_') and f.endswith(".log")] == []:
            fileset = [f for f in os.listdir(dataPath) if not f.startswith('_') and f.endswith(".log")]
            for f in fileset:         
                 #### prepend "_" to all files.

     dataframe_to_json_log(output_path+/'data-{}'.format(datetime.date.today())) #Help function that transforms dataframe to json_blob in output folder
如何正确地在
文件集中的所有文件前加“u”

编辑:


我不知道append的意思,应该是prepend

与Mechanist的功能类似,但不影响已具有“u”前缀的文件:

导入全局操作系统
fileset=[f代表glob.glob(“*.log”)中的f,如果不是f.startswith(“”“)]
对于文件集中的f:
操作系统重命名(f,“”+f)
您可以使用glob:

从os.path导入basename
导入全局操作系统
路径='mypath'
os.chdir(路径)
基本名称(路径)
对于glob.glob(“*.log”)中的文件:
os.rename(basename,“”+basename)

首先,您可以检查文件(文件集中的f)是否以“”开头,这似乎是正确的。然后可以使用os.rename('originalFileName.log','newFileName.log')。您已经知道文件的原始名称,因此只需在文件末尾添加一个“”。您希望uuu在.log之前还是之后?当您说“将uuuu附加到所有文件”时,实际上是指“预结束”,对吗?“some\u file.log”变成“\u some\u file.log”嗨,是的,我以为append是prepend,对不起。它应该是prepend。没有basename你不能这样做吗?如果您正在迭代在
glob.glob()
调用中找到的所有文件,您可以使用
os.rename(file,“\u”+file)