mirror of
https://github.com/hpcaitech/ColossalAI.git
synced 2025-12-25 05:22:43 +00:00
* [workflows]bug_repair * [workflow]new_pr_fixing_bugs Co-authored-by: binmakeswell <binmakeswell@gmail.com>
39 lines
1.3 KiB
Python
39 lines
1.3 KiB
Python
import os
|
|
|
|
|
|
def show_files(path, all_files):
|
|
# Traverse all the folder/file in current directory
|
|
file_list = os.listdir(path)
|
|
# Determine the element is folder or file. If file, pass it into list, if folder, recurse.
|
|
for file in file_list:
|
|
# Get the abs directory using os.path.join() and store into cur_path.
|
|
cur_path = os.path.join(path, file)
|
|
# Determine whether folder
|
|
if os.path.isdir(cur_path):
|
|
show_files(cur_path, all_files)
|
|
else:
|
|
all_files.append(cur_path)
|
|
return all_files
|
|
|
|
|
|
def join(input_list, sep=None):
|
|
return (sep or ' ').join(input_list)
|
|
|
|
|
|
def main():
|
|
contents = show_files('examples/', [])
|
|
all_loc = []
|
|
for file_loc in contents:
|
|
split_loc = file_loc.split('/')
|
|
# must have two sub-folder levels after examples folder, such as examples/images/vit is acceptable, examples/images/README.md is not, examples/requirements.txt is not.
|
|
if len(split_loc) - split_loc.index('examples') >= 3:
|
|
tmp_loc = split_loc[(split_loc.index('examples') + 1):(split_loc.index('examples') + 3)]
|
|
re_loc = join(tmp_loc, '/')
|
|
if re_loc not in all_loc:
|
|
all_loc.append(re_loc)
|
|
print(all_loc)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
main()
|