繁体   English   中英

更改全局对象同时仍然能够验证参数

[英]Changing global objects while still being able to validate arguments

目前,我的python模块中有2个全局变量。 我想摆脱使用全局变量作用域,而仍然能够在我的模块中调用这两个变量。 基本上,什么是摆脱全局对象的最佳方法,同时仍然能够验证参数。

我试图在一个函数中创建一个类,但我意识到这是行不通的。

全局gl_args全局gl_hashType

gl_args 1⁄4 parser.parse_args()

if gl_args.md5:
    gl_hashType = 'MD5'
elif gl_args.sha256:
    gl_hashType = 'SHA256'
elif gl_args.sha512:
    gl_hashType = 'SHA512'
elif gl_args.sha224:
    gl_hashType = 'SHA224'
elif gl_args.sha384:
    gl_hashType = 'SHA384'
else:
    gl_hashType = "Unknown"
    logging.error('Unknown Hash Type Specified')

DisplayMessage("Command line processed: Successfully")

return

这只是使用它的一部分,但是在整个程序中使用了2个变量。

在整个模块中调用变量。

听起来像是要上课

class MyClass(object):

    def __init__(self,x,y):
         self.x = x
         self.y = y

    def f1(self):
        return self.x + self.y

    def f2(self):
        return self.y - self.x

    def area(self):
        return self.y*self.x

像这样使用:

my_instance = MyClass(4,5)

my_instance.f1()
my_instance.f2()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM