因此,有些企业形象的东西,比如颜色、字体等很少改变,但当它们改变时,每个人都应该以同样的方式实现它们。 例如,我想编写一个单独的子例程,每个人都调用该子例程来导入颜色,以便每个人的报告都具有相同的外观。 问题是传递这些变量的最佳方式是什么?
选项1:正常传递变量
def main():
company_BLUE = "#015b95"
company_GREEN = "#3D8B37"
company_GREY = "#656565"
company_RED = "#8F2D22"
return company_BLUE, company_GREEN, company_GREY, company_RED
导入然后使用以下方式调用:
import getColors
[Blue, Green, Grey, Red] = getColors.main()
如果有更多变量不是每个人都需要,那么这个就会变得乏味。
选项 2:使用全局变量
def main():
global company_BLUE
global company_GREEN
global company_GREY
global company_RED
company_BLUE = "#015b95"
company_GREEN = "#3D8B37"
company_GREY = "#656565"
company_RED = "#8F2D22"
这个使用起来很烦人,必须始终放在全局中。或者你写一个新变量,比如,
Blue = global company_BLUE
但这只会增加不必要的变量。
选项 3:以某种方式使用类,但我不确定如何在这里进行调整。
您有什么意见或者有更好的解决方案吗?
您的所有实现实际上都是可行的,但您可能想问或知道如何以不更改每个变量值的方式调用 python 函数。
下面给出了一个可以轻松适应您的情况的示例:
def my_function():
return 1, 2, 3, 4, 5
#Suppose you only need the first two outputs
a, b, *_ = my_function()
print(a) # 1
print(b) # 2