如何使用'def'获取输入值

时间:2013-02-21 22:24:15

标签: python global-variables local function

如果我使用全局变量。我可以这样写。

while True:
    name_str = input('Please give me the file name:')
    if name_str == 'table.csv':
        break
    else:
        print('Bad file name, please try again.')

如何定义函数并从此函数获取输入? 在开始函数中获取用户输入并调用main函数以获得用户的输入。

def get_name(n):
    x = input('Please give me the file name:')
    ...
    ...

def main():
    ...
    ...

2 个答案:

答案 0 :(得分:2)

您希望将其保存在文件(test.py)中:

def get_input():
    return raw_input('get file: ')

if __name__ == '__main__':
    print get_input()

然后叫它:

$ python test.py

注意两件事:

  1. input()vs raw_input() - input()为not safe
  2. script environment使用成语'if name ...'而不是使用main()函数。

答案 1 :(得分:0)

取决于你想要完成的事情。

如果您的方法收集来自用户的信息,您可以这样写:

def get_name():
    return input('Please give me the file name. ')

如果您的方法解析来自用户的信息,它将接受文件名作为参数,并写成如下:

def check_file_name(fname):
    if fname == 'table.csv':
        return True
    return False