Py_ClassAndMod

来源:互联网 发布:大乐透真假揭秘知乎 编辑:程序博客网 时间:2024/06/05 22:30

本篇讲py-Class and Mod

0x1.Class

0x1.1 类内静态(c++)变量:varStrRemoveRepeatL

对所有实例只有一份.
class RandomSequence(object):    varStrRemoveRepeatL = []    varStrRemoveRepeatL.append('ahoo')    def __init__(self,path):        self.author = 'ahoo'        self.path = path         pass

0x1.2 self.path

对每个实例都是独立的.

0x1.3 引用自己编写的类(copyweb)

1, 首先自己写好一个文件如:read_file_class.py,路径为:/home/wst/mylib/python-lib,内容如下:#!/usr/bin/env pythonimport xlrd#Function:Read records from xls file.#Depending lib:xlrdclass ReadXlsFile(object):    def __init__(self,filename):        self.filename=filename    def fetch_records(self):        wb=xlrd.open_workbook(self.filename)        sheet=wb.sheets()[0]        records=[]        for i in range(1,sheet.nrows):            records.append(sheet.row_values(i))        return records2, 当你想要引用这个文件的时候,方式如下:import syssys.path.append(r'/home/wst/mylib/python-lib')from read_file_class import ReadXlsFileobj=ReadXlsFile('somefile.xls')records=obj.fetch_records()

0x2. Mod

0x2.1.package

  • 文件夹中存在 __intit__.py文件(即便是空的)那这个文件夹为一个模块.

  • 同一个文件夹中引用其他的py文件.

    from FileRead2Write(文件名) import FileRead2Write(类名)

  • 同一个文件夹中引用其他的py文件(做安装包时).

    from Obfuscateer(文件夹名).FileRead2Write(文件名) import FileRead2Write(类名)

0x2.2 调用

from Obfuscateer.RandomSequence import RandomSequencerdClass = RandomSequence()rdClass.randSelfTypeStr2ArraryTypeStr(strtemp)  --------------------------------from Obfuscateer.ObfuscateEngM  import EngClaeng = EngCla(PutPath,OutPath)eng.Eng()

0x3参考

  • Python自定义Module中init.py文件介绍

  • __init__文件

  • Class文档

原创粉丝点击