Python中的多个返回值以避免全局
我可以浏览下面的代码,通过从设置函数返回多个值,然后从Python中的多个返回值以避免全局,python,return-value,Python,Return Value,我可以浏览下面的代码,通过从设置函数返回多个值,然后从main函数将它们传递给各种其他函数,避免使用全局变量 我以前从未见过这种编码风格。这是避免在Python程序中使用全局变量的好方法吗 是否存在任何潜在的不利因素?是“蟒蛇”吗 SPACE='''#为空间命名的常量 def InputMaxNumberOfSymbols(): 数字=0 当数字%2==0时: 打印(“基础有多少个符号?”) Number=int(输入(“输入奇数:”) 返回号码 def SetValues(): Symbol=
main
函数将它们传递给各种其他函数,避免使用全局变量
我以前从未见过这种编码风格。这是避免在Python程序中使用全局变量的好方法吗
是否存在任何潜在的不利因素?是“蟒蛇”吗
SPACE='''#为空间命名的常量
def InputMaxNumberOfSymbols():
数字=0
当数字%2==0时:
打印(“基础有多少个符号?”)
Number=int(输入(“输入奇数:”)
返回号码
def SetValues():
Symbol=输入(“您想使用什么符号?”)
MaxSymbols=InputMaxNumberOfSymbols()
空格=(MaxSymbols+1)//2
符号=1
返回符号、最大符号、空格、符号
def输出字符(数字、符号):
对于范围内的计数(数字):
打印(符号,结束=“”)
def调整值角列(空格、符号):
空格=空格-1
符号=符号+2
返回空格、符号
def main():
ThisSymbol、MaxNumberOfSymbols、NumberOfSpaces、NumberOfSymbols=SetValues()
而许多符号显然是如此。在任何语言中都应该避免使用全局变量。返回多个值不仅是避免全局变量的常见做法。
SPACE = ' ' # constant to give a space a name
def InputMaxNumberOfSymbols():
Number = 0
while Number % 2 == 0:
print("How many symbols make the base?")
Number = int(input("Input an odd number: "))
return Number
def SetValues():
Symbol = input("What symbol do you want to use? ")
MaxSymbols = InputMaxNumberOfSymbols()
Spaces = (MaxSymbols + 1) // 2
Symbols = 1
return Symbol, MaxSymbols, Spaces, Symbols
def OutputChars(Number, Symbol):
for Count in range(Number):
print(Symbol, end='')
def AdjustValuesForNextRow(Spaces, Symbols):
Spaces = Spaces - 1
Symbols = Symbols + 2
return Spaces, Symbols
def main():
ThisSymbol, MaxNumberOfSymbols, NumberOfSpaces, NumberOfSymbols = SetValues()
while NumberOfSymbols <= MaxNumberOfSymbols:
OutputChars(NumberOfSpaces, SPACE)
OutputChars(NumberOfSymbols, ThisSymbol)
print() # move to new line
NumberOfSpaces, NumberOfSymbols = AdjustValuesForNextRow(NumberOfSpaces, NumberOfSymbols)
main()