26 练习题:反射

# 用反射完成了
# python D:\Python\Python_Project\day27\03.作业.py cp path1 path2
# python D:\Python\Python_Project\day27\03.作业.py rm path
# python D:\Python\Python_Project\day27\03.作业.py mv path1 path2
import sys
import shutil
ins_box = sys.argv
class Operate_file:
    def __init__(self, ins_box):
        self.path1 = ins_box[0]
        if len(ins_box) == 2:
            self.path2 = ins_box[1]
    def cp(self):
        print('copy')
        # shutil.copy2(self.path1, self.path2)
    def rm(self):
        print('remove')
        # shutil.rmtree(self.path)
    def mv(self):
        print('move')
        # shutil.move(self.path1, self.path2)

file_obj = Operate_file(ins_box[2:])
if hasattr(file_obj, ins_box[1]):
    if callable(getattr(file_obj, ins_box[1])):
        getattr(file_obj, ins_box[1])()
posted @ 2020-07-25 22:43  Raigor  阅读(109)  评论(0编辑  收藏  举报