python…创建作为文件名传递的变量
我有很多文件要查看,我想根据一组变量来标记每个文件,例如python…创建作为文件名传递的变量,python,Python,我有很多文件要查看,我想根据一组变量来标记每个文件,例如 location = 'home' source_system = 'Sys_' date = '20160608' file_name = location+source_system+date print(file_name) -> homeSys_20160608 …基于文件名,我想用它来标记数据帧,所以类似于 file_name = sqlContext.read.parquet(file_path) 我在别处定义了文
location = 'home'
source_system = 'Sys_'
date = '20160608'
file_name = location+source_system+date
print(file_name)
-> homeSys_20160608
…基于文件名,我想用它来标记数据帧,所以类似于
file_name = sqlContext.read.parquet(file_path)
我在别处定义了文件路径
当我尝试这样做时会发生什么呢?数据帧现在命名为file_path而不是homeSys_20160608,这是变量最初的名称
有什么办法可以满足我的要求吗
基本上,我想知道是否有一种基于变量创建数据框架的方法。我想创建多个数据帧,每个数据帧具有不同的名称,这样我就可以在一个python笔记本中分析它们。每个数据帧的结构相同,但填充的数据不同。您加入的是“位置+源\系统+日期”,没有任何文件系统分隔符 您的字符串将如下所示:
homeSys\u 20160608
我相信,你希望它是这样的:home/Sys\u 20160608
您可以手动将其放入,如下所示:
file_name = location + '/' + source_system + date
或者使用os
模块:
file_name = location + os.path.sep + source_system + date
为了让它在windows和Linux上工作。使用
os.path.join
也是一个选项,而且IMHO clearnetrue,但是我需要直接连接两个字符串,然后os.join
ed到第三个I,尽管这比filename=os.path.join(位置、源代码、系统+日期)更干净
这是个坏主意-你应该这样做。改用字典。