📅  最后修改于: 2023-12-03 15:09:14.725000             🧑  作者: Mango
在编写 Python 程序时,通常需要与用户交互,即要求用户输入数据。在本文中,将介绍几种获取用户输入的方法。
Python 的内置函数 input()
可以接受用户的输入,并将其作为字符串返回。用户输入的数据以一行文本的形式呈现。
以下是一个简单的示例:
name = input("请输入您的姓名:")
print("您的姓名是:", name)
在这个示例中,当程序运行时,它将在屏幕上打印一条消息,要求用户输入他们的姓名。用户输入后,程序将显示一条消息,其中包含用户输入的姓名。
除了 input() 函数外,还可以使用 sys.argv 参数。sys.argv 是一个列表,它包含传递给 Python 脚本的命令行参数。第一个参数是脚本的名称,其余是命令行参数。
以下是一个示例,展示如何接受命令行参数:
import sys
print(sys.argv)
如果将以上代码放到名为 test.py
的文件中,在命令行中运行 python test.py hello world
,则输出将是:
['test.py', 'hello', 'world']
这种方法可以用于从命令行中传递输入数据,例如脚本可以从文件中读取输入数据,并将其传递给 sys.argv。
argparse 模块是在 Python 2.7 中引入的,其目的是使命令行界面更容易解析。它可以帮助程序员指定程序所需的输入,而无需手动解析命令行参数。
以下是一个使用 argparse 模块的示例:
import argparse
parser = argparse.ArgumentParser(description='示例程序')
parser.add_argument('filename', help='要读取的文件名')
parser.add_argument('-n', '--number', type=int, default=10, help='要显示的行数')
args = parser.parse_args()
print(args.filename)
print(args.number)
在这个示例中,我们使用了 argparse 模块来解析命令行参数。我们指定了一个文件名参数和一个名为“行数”的参数,以指定要显示的行数。如果用户未指定行数,则默认为 10。
运行以下命令:
python test.py example.txt -n 5
则输出将是:
example.txt
5
综上所述,我们介绍了三种获取用户输入的方法。在编写 Python 程序时,需要根据实际情况选择最适合的方法。