本案例需要创建名为:”my_utils”的Python软件包[ 包内带有”__init__.py”文件 ],和两个模块[ Python文件 ]:”str_util.py”,”file_util.py”
Admin_Log
复制代码
- """
- 字符串处理相关的工具模块
- """
- def str_reverse(s):
- """
- 功能是将字符串完成反转操作
- :param s:将被反转的字符
- :return:反转后的字符串
- """
- return s[::-1]
- def substr(s, x, y):
- """
- 功能是按照给定的下标完成给定字符串的切片
- :param s:即将被切片的字符串
- :param x:切片的开始下标
- :param y:切片的结束下标
- :return:切片完成后的字符串
- """
- return s[x:y]
- if __name__ == '__main__':
- print(str_reverse('Admin_Log'))
- print(substr('Admin_Log', 1, 3))
复制代码
- """
- 文件处理相关的工具模块
- """
- def print_file_info(file_name):
- """
- 功能是:将给定路径的文件内容输出到控制台中
- :param file_name:即将被读取的文件
- :return:None
- """
- f = None
- try:
- f = open(file_name, 'r', encoding='UTF-8')
- content = f.read()
- print(f'文件的全部内容如下:{content}')
- except Exception as e:
- print(f'程序出现异常了,原因是:{e}')
- finally:
- if f: # 如果变量是None,表示False,如果有任何内容,就是True
- f.close()
- def append_to_file(file_name, data):
- """
- 功能:将指定的数据追加到指定的文件中
- :param file_name:指定的文件的路径
- :param data:指定的数据
- :return:None
- """
- f = open(file_name, 'a', encoding='UTF-8')
- f.write(data)
- f.write('\n')
- f.close()
- if __name__ == '__main__':
- # print_file_info('E:/PycharmProjects/bill.txt')
- append_to_file('E:/PycharmProjects/test2.txt', 'Hello,World!')
复制代码
- """
- 演示异常、模块、包的综合案例练习
- """
- # 创建my_utils 包,在包内创建:str_util.py和file_util.py 2个模块,并提供相应的函数
- import my_utils.str_util
- from my_utils import file_util
- # 验证 - str_util模块功能
- print(my_utils.str_util.str_reverse('Admin_Log'))
- print(my_utils.str_util.substr('Admin_Log', 0, 4))
- # 验证 - file_util模块功能
- # file_util.print_file_info('e:/PycharmProjects/test2.txt')
- file_util.append_to_file('e:/PycharmProjects/test2.txt', 'Hello,World!')
- file_util.print_file_info('e:/PycharmProjects/test2.txt')