Python:只检测特定字符串,而不是它';词典的变体
我正在尝试接收给定路径上的所有文件,并根据我的数据标题名称对它们进行排序。 因此,我的数据标题名称为:Python:只检测特定字符串,而不是它';词典的变体,python,string,dictionary,Python,String,Dictionary,我正在尝试接收给定路径上的所有文件,并根据我的数据标题名称对它们进行排序。 因此,我的数据标题名称为: data_titles = ['CPU','Physical_Disk','Memory','Network','Network#2'] 此给定路径中的文件命名为'CPU_data.txt'和'Memory_data.txt','Network_data.txt','Network#2_data.txt'等 我正试图以以下方式创建一个dicitonary: {'Network': 'Netw
data_titles = ['CPU','Physical_Disk','Memory','Network','Network#2']
此给定路径中的文件命名为'CPU_data.txt'
和'Memory_data.txt'
,'Network_data.txt'
,'Network#2_data.txt'
等
我正试图以以下方式创建一个dicitonary:
{'Network': 'Network_data.txt',
'Network#2': 'Network#2_data.txt',
'Physical_Disk': ['Physical_Disk_data_1.txt','Physical_Disk_data_2.txt'],
'CPU': 'CPU_data.txt',
'Memory': 'Memory_data.txt'}
然而,我实际得到的是:
{'Network': ['Network_data.txt','Network#2_data.txt'],
'Network#2': ['Network#2_data.txt'],
'Physical_Disk': ['Physical_Disk_data_1.txt','Physical_Disk_data_2.txt'],
'CPU': ['CPU_data.txt'],
'Memory': ['Memory_data.txt']}
这是我的密码:
table_csv_files={}
for file_names in os.listdir(Data_folder):
for name in data_titles:
if name in file_names:
if name in table_csv_files:
table_csv_files[name].update(file_names)
else:
table_csv_files[name]=[file_names]
print table_csv_files
如何确保数据标题
'Network'
仅'Network\u data.txt'
未检测到'Network\u data.txt'
,这是因为Network
可以在'Network\u data.txt'
和'Network\u data.txt'
中找到。你需要比这更多的东西来获得一个独特的匹配
由于这两个名称可以通过添加一个\uu
来区分,因此您可以通过将测试更改为
if name+'_' in file_names: