日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達者為師

網(wǎng)站首頁 編程語言 正文

Python實現(xiàn)自定義包的實例詳解_python

作者:陽862 ? 更新時間: 2023-02-05 編程語言

一.實例:自定義包

創(chuàng)建一個自定義包,名稱為:my_utils (我的工具),在包內(nèi)提供2個模塊

1.str_util.py(字符串相關(guān)工具,內(nèi)含:)

  • 函數(shù): str_reverse(s),接受傳入字符串,將字符串反轉(zhuǎn)返回
  • 函數(shù): substr x. y),按照下標(biāo)x和y,對字符串進行切片

2.file_util.py(文件處理相關(guān)工具,內(nèi)含:)

  • 函數(shù): print_file_info(file_name),接收傳入文件的路徑,打印文件的全部內(nèi)容,如文件不存在則捕獲異常,輸出提示信息,通過finally關(guān)閉文件對象
  • 函數(shù):append_to_file(file_name,data),接收文件路徑以及傳入數(shù)據(jù),將數(shù)據(jù)追加寫入到文件中

二.詳解

在pycharm中操作

1.新建my_utils包

2.新建str_util.py和file_util.py兩個python file

3.str_util.py中的代碼

def str_reverse(s):
    """
    功能:將字符串反轉(zhuǎn)
    s:將被反轉(zhuǎn)的字符串
    return:反轉(zhuǎn)后的字符串
    """
    return s[::-1]
 
def substr(s,x,y):
    """
    功能是按照給定的下標(biāo)完成給定字符串的切片
    s:即將切片的字符串
    x:切片的開始下標(biāo)
    y:切片的結(jié)束下標(biāo)
    return:切片完成后的字符串
    """
    return s[x:y]
 
if __name__ == '__main__':
    print(str_reverse("好好學(xué)習(xí)!"))
    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("文件內(nèi)容有:")
        print(count)
    except Exception as e:
        print("文件出現(xiàn)了問題,程序無法運行")
    finally:
        if f:#如果變量是none,表示false,如果有任何內(nèi)容就是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.導(dǎo)入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"))

演示

原文鏈接:https://blog.csdn.net/weixin_63318044/article/details/128405784

欄目分類
最近更新