本案例需要创建名为:”my_utils”的Python软件包[ 包内带有”__init__.py”文件 ],和两个模块[ Python文件 ]:”str_util.py”,”file_util.py”

Admin_Log
复制代码
  1. """
  2. 字符串处理相关的工具模块
  3. """
  4.  
  5. def str_reverse(s):
  6. """
  7. 功能是将字符串完成反转操作
  8. :param s:将被反转的字符
  9. :return:反转后的字符串
  10. """
  11. return s[::-1]
  12.  
  13.  
  14. def substr(s, x, y):
  15. """
  16. 功能是按照给定的下标完成给定字符串的切片
  17. :param s:即将被切片的字符串
  18. :param x:切片的开始下标
  19. :param y:切片的结束下标
  20. :return:切片完成后的字符串
  21. """
  22. return s[x:y]
  23.  
  24.  
  25.  
  26. if __name__ == '__main__':
  27. print(str_reverse('Admin_Log'))
  28. print(substr('Admin_Log', 1, 3))
  29.  
复制代码
  1. """
  2. 文件处理相关的工具模块
  3. """
  4.  
  5.  
  6. def print_file_info(file_name):
  7. """
  8. 功能是:将给定路径的文件内容输出到控制台中
  9. :param file_name:即将被读取的文件
  10. :return:None
  11. """
  12.  
  13. f = None
  14. try:
  15. f = open(file_name, 'r', encoding='UTF-8')
  16. content = f.read()
  17. print(f'文件的全部内容如下:{content}')
  18. except Exception as e:
  19. print(f'程序出现异常了,原因是:{e}')
  20. finally:
  21. if f: # 如果变量是None,表示False,如果有任何内容,就是True
  22. f.close()
  23.  
  24.  
  25. def append_to_file(file_name, data):
  26. """
  27. 功能:将指定的数据追加到指定的文件中
  28. :param file_name:指定的文件的路径
  29. :param data:指定的数据
  30. :return:None
  31. """
  32. f = open(file_name, 'a', encoding='UTF-8')
  33. f.write(data)
  34. f.write('\n')
  35. f.close()
  36. if __name__ == '__main__':
  37. # print_file_info('E:/PycharmProjects/bill.txt')
  38. append_to_file('E:/PycharmProjects/test2.txt', 'Hello,World!')
复制代码
  1. """
  2. 演示异常、模块、包的综合案例练习
  3. """
  4. # 创建my_utils 包,在包内创建:str_util.py和file_util.py 2个模块,并提供相应的函数
  5.  
  6. import my_utils.str_util
  7. from my_utils import file_util
  8.  
  9. # 验证 - str_util模块功能
  10. print(my_utils.str_util.str_reverse('Admin_Log'))
  11. print(my_utils.str_util.substr('Admin_Log', 0, 4))
  12.  
  13. # 验证 - file_util模块功能
  14. # file_util.print_file_info('e:/PycharmProjects/test2.txt')
  15. file_util.append_to_file('e:/PycharmProjects/test2.txt', 'Hello,World!')
  16. file_util.print_file_info('e:/PycharmProjects/test2.txt')