为了账号安全,请及时绑定邮箱和手机立即绑定

如何调用一个获取用户输入列表的函数,然后将该列表分配给全局变量?

如何调用一个获取用户输入列表的函数,然后将该列表分配给全局变量?

30秒到达战场 2022-08-11 17:01:33
假设我有一个函数,它接受字符串的输入并创建一个列表(这是我的):def listString():stringInput = input('Please input a single line of strings\n')if len(stringInput) < 20:    print("Error. Your input needs to have at least 20 characters")    print(inputStringList())elif len(stringInput) >= 20:    delimiter = ' '    var2 = stringInput.split(delimiter)    print(var2)我将如何创建一个存储该列表的全局变量,以便将其传递到其他函数中?显然,我需要调用函数(可能带有参数)并将其分配给函数外部的变量,但是如此简单的事情让我感到困惑。
查看完整描述

1 回答

?
临摹微笑

TA贡献1982条经验 获得超2个赞

所以全局变量是一件坏事,你应该尽可能避免使用它们,但你可以这样做:


global_list = []



def list_string():  # leave camelCase for javascript -- we use snake_case in Python land.

    while True:

        string_input = input("Please input a single line of strings\n")

        if len(string_input) >= 20:

            break

        else:

            print("Error. Your input needs to have at least 20 characters")


    # string_input is now guaranteed to be a string of 20 characters or longer

    global global_list  # indicate that you're changing the global now

    global_list = string_input.split(' ')

也就是说,这是一个坏主意,您可能根本不应该这样做。调试管理全局状态的代码是地狱般的。将此逻辑封装到一个对象中,并在那里对其进行操作。


查看完整回答
反对 回复 2022-08-11
  • 1 回答
  • 0 关注
  • 78 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信