创建一个自定义包,名称为:my_utils (我的工具)
在包内提供2个模块
str_util.py (字符串相关工具,内含:)
函数:str_reverse(s),
接受传入字符串,将字符串反转返回
函数:substr(s, x, y),按
照下标x和y,对字符串进行切片
file_util.py(文件处理相关工具,内含:)
函数:print_file_info(file_name),
接收传入文件的路径,打印文件的全部内容,如文件不存在则捕获异常,输出提示信息,通过finally关闭文件对象
函数:append_to_file(file_name, data),
接收文件路径以及传入数据,将数据追加写入到文件中
构建出包后,尝试着用一用自己编写的工具包。
from my_utils import str_util
from my_utils import file_util
# import my_utils.str_util
# import my_utils.file_util
s_1 = 'abc'
print(f'反转前字符串为{s_1}')
s_1 = str_util.str_reverse(s_1)
print(f'反转后字符串为{s_1}')
# @Time : 2023/8/8 18:01
# @Author : 木丂
# @File :file_util.py
# @Software : PyCharm
"""
file_util.py(文件处理相关工具,内含:)
函数:print_file_info(file_name),
接收传入文件的路径,打印文件的全部内容,如文件不存在则捕获异常,输出提示信息,通过finally关闭文件对象
函数:append_to_file(file_name, data),
接收文件路径以及传入数据,将数据追加写入到文件中
"""
def print_file_info(file_name):
"""
:param file_name:传入文件路径
:return: 打印文件内容
"""
file = None # 注意这步
try:
file = open(file_name, 'r', )
except FileNotFoundError as e:
print('文件不存在')
else:
for line in file:
print(line)
print('\n')
finally:
if file: # 如果不是None,表示True,可以继续,反之进不来
file.close()
# file.close()
def append_to_file(file_name, data):
"""
:param file_name: 文件路径
:param data: 追加的数据
:return: 写入追加数据成功
"""
with open(file_name, 'a') as file:
file.write(data)
# file.write('\n')
file.flush()
return True
# @Time : 2023/8/8 17:44
# @Author : 木丂
# @File :str_util.py
# @Software : PyCharm
"""
str_util.py (字符串相关工具,内含:)
函数:str_reverse(s),
接受传入字符串,将字符串反转返回
函数:substr(s, x, y),按
照下标x和y,对字符串进行切片
"""
def str_reverse(s):
"""
:param s:传入字符串
:return: 反转字符串
"""
s_alt = s[::-1]
return s_alt
def substr(s, x, y):
"""
:param s:传入字符串
:param x: 起始下标
:param y: 结束下标
:return: 切片后结果
"""
s_cut = s[x:y]
return s_cut
if __name__ == '__main__':
s_1 = 'abc'
s_1 = str_reverse(s_1)
print(s_1)
s_2 = '0123456789'
s_2 = substr(s_2, 2, 5)
print(s_2)