Python实现自定义包的实例详解

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

Python实现自定义包的实例详解

阳862   2022-12-29 我要评论

一.实例:自定义包

创建一个自定义包,名称为:my_utils (我的工具),在包内提供2个模块

1.str_util.py(字符串相关工具,内含:)

  • 函数: str_reverse(s),接受传入字符串,将字符串反转返回
  • 函数: substr x. y),按照下标x和y,对字符串进行切片

2.file_util.py(文件处理相关工具,内含:)

  • 函数: print_file_info(file_name),接收传入文件的路径,打印文件的全部内容,如文件不存在则捕获异常,输出提示信息,通过finally关闭文件对象
  • 函数:append_to_file(file_name,data),接收文件路径以及传入数据,将数据追加写入到文件中

二.详解

在pycharm中操作

1.新建my_utils包

2.新建str_util.py和file_util.py两个python file

3.str_util.py中的代码

def str_reverse(s):
    """
    功能:将字符串反转
    s:将被反转的字符串
    return:反转后的字符串
    """
    return s[::-1]
 
def substr(s,x,y):
    """
    功能是按照给定的下标完成给定字符串的切片
    s:即将切片的字符串
    x:切片的开始下标
    y:切片的结束下标
    return:切片完成后的字符串
    """
    return s[x:y]
 
if __name__ == '__main__':
    print(str_reverse("好好学习!"))
    print(substr("床前明月光,疑是地上霜。",2,6))

演示

4.file_util.py的代码

def print_file_info(file_name):
    f=None
    try:
        f=open(file_name,"r",encoding="utf-8")
        count=f.read()
        print("文件内容有:")
        print(count)
    except Exception as e:
        print("文件出现了问题,程序无法运行")
    finally:
        if f:#如果变量是none,表示false,如果有任何内容就是true
            f.close()

def append_to_file(file_name,data):
    f=open(file_name,"a",encoding="utf-8")
    f.write(data)
    f.write("\n")
    f.close()#close自带flush功能,并且文件不存在时会自动生成,所以不需要判断文件是否存在

if __name__ == '__main__':
    append_to_file("D:\game.txt","weasdfad_sdf")
    print_file_info("D:\game.txt")                       

演示

5.导入my_utils包

import my_utils.str_util
from my_utils import file_util
 
print(my_utils.str_util.str_reverse("abcdefg!"))
print(my_utils.str_util.substr("sdf_123",0,4))
print("-----------------")
print(file_util.append_to_file("D:/game.txt","345_jhg"))
print(file_util.print_file_info("D:/game.txt"))

演示

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们