有了这个,您可以使用任何类型的objectcode
名称,请注意它不是objectcode
您也想单独考虑的另一个名称的一部分:
import os, glob
# This assumes that this code is run inside
# the directory with the image files
# Path to the directory you will store
# the directories with files (current here)
path_to_files = os.getcwd()
objectcodes = ['QQS Eur F699-1', 'BL RL4_QRS Eur F699-1-2-7-5_379' ];
# For each objectcode
for obc in objectcodes:
# Make a directory if it doesn't already exist
file_dir = os.path.join(path_to_files, obc)
if not os.path.isdir(file_dir):
os.mkdir(file_dir)
# If you need to set the permissions
# (this enables it all - may not be what you want)
os.chmod(file_dir, 0o777)
# Then move all the files that have that objectcode
# in them and end with *.jpeg to the correct dir
for fname in glob.glob('*' + obc + '*.jpg'):
# Move the file
os.rename(fname, os.path.join(file_dir, fname))
这段代码不是解析文件名,而是在其中寻找一个模式,这个模式就是你的objectcode
. 它可以运行任意数量的objectcodes
,如果您希望将来以不同的名称重新使用它,这将非常有用。
如前所述,如果一个以上objectcode
的模式适合一个模式(我假设不是这种情况),那么您需要应用一些修改。
根据您的平台,您可能不需要更改您正在创建的目录的权限(我必须这样做),您还可以将权限修改为可以工作但更严格的东西(现在它只允许一切)。