python 参数输入

在 Python 中,参数输入通常有多种方式,这取决于你要从何处获取参数。以下是几种常见的方法:

1. 命令行参数

使用 sys.argv 获取命令行参数,或者使用 argparse 模块进行更复杂的参数解析。

示例 1: 使用 sys.argv
python 复制代码
import sys

# 从命令行获取参数
if len(sys.argv) > 1:
    first_argument = sys.argv[1]
    print(f"First argument: {first_argument}")
else:
    print("No arguments provided.")

运行脚本时,你可以通过命令行传递参数:

sh 复制代码
python script.py argument1
示例 2: 使用 argparse

argparse 模块允许你定义命令行参数,并自动生成帮助和用法消息。

python 复制代码
import argparse

# 创建解析器
parser = argparse.ArgumentParser(description="Process some integers.")
parser.add_argument('number', type=int, help='An integer number')
parser.add_argument('--verbose', action='store_true', help='Increase output verbosity')

# 解析参数
args = parser.parse_args()

# 使用参数
print(f"Number: {args.number}")
if args.verbose:
    print("Verbose mode is on.")

运行脚本时:

sh 复制代码
python script.py 10 --verbose

2. 函数参数

函数可以接受参数,通过传递不同的值来调用函数。

示例:
python 复制代码
def greet(name, age):
    print(f"Hello, {name}. You are {age} years old.")

# 调用函数时传递参数
greet("Alice", 30)

3. 环境变量

使用 os.environ 获取环境变量中的参数。

示例:
python 复制代码
import os

# 获取环境变量
db_host = os.environ.get('DB_HOST', 'localhost')
print(f"Database host: {db_host}")

4. 配置文件

读取配置文件中的参数,常用的格式有 JSON、YAML、INI 等。

示例 1: 使用 JSON 配置文件
python 复制代码
import json

# 从配置文件读取参数
with open('config.json', 'r') as file:
    config = json.load(file)

print(f"Database host: {config['db_host']}")

config.json 示例内容:

json 复制代码
{
    "db_host": "localhost",
    "db_port": 3306
}
示例 2: 使用 configparser 读取 INI 文件
python 复制代码
import configparser

# 创建配置解析器
config = configparser.ConfigParser()
config.read('config.ini')

print(f"Database host: {config['Database']['host']}")

config.ini 示例内容:

ini 复制代码
[Database]
host = localhost
port = 3306

5. 用户输入

通过 input() 函数获取用户的输入。

示例:
python 复制代码
name = input("Enter your name: ")
age = input("Enter your age: ")
print(f"Hello, {name}. You are {age} years old.")

总结

  • 命令行参数 :使用 sys.argv 或 argparse 模块。
  • 函数参数:通过函数定义和调用传递参数。
  • 环境变量 :使用 os.environ 获取。
  • 配置文件:读取 JSON、INI 或其他格式的配置文件。
  • 用户输入 :通过 input() 函数获取。

选择适合的方法取决于你的应用场景和需求。如果你有更多问题或具体需求,请提供详细信息,我可以进一步帮助解决。

相关推荐
信誓旦旦的程序猿7 小时前
【Python量化实战宝典 #08】可转债与债券接口手册:转股价·溢价率·纯债价值(Python 可跑)
java·python·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口
砚底藏山河7 小时前
python量化:行情数据回溯
java·开发语言·python·金融·maven
今年下半年8 小时前
AI智能体项目实战记录(02):初始化 Python 项目
开发语言·人工智能·python·fastapi
Williamtym8 小时前
PickGo Lab实践:用浏览器、Python和MCP串起机器人搬运仿真
开发语言·python·机器人
CS创新实验室8 小时前
Python 对象“死“了之后去了哪?——引用计数与分代垃圾回收
开发语言·jvm·python
CCblandy8 小时前
雪花 ID 四个边界实测:时钟回拨重号 500 个,前端 JSON.parse 直接丢精度
后端·python·算法·性能优化·架构
quantdash_cc8 小时前
Pandas 处理分钟级股票行情:从原始数据清洗到 K 线聚合
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
把我格子衫拿来9 小时前
VTK 9.5 与 Qt 6 联合开发:从嵌入三维窗口到可维护的桌面架构
c++·python·qt·vtk·三维可视化
cpolar技术支持9 小时前
把配置发出去怕带出密钥?先把含凭据配置转成脱敏只读快照,用 cpolar 给同事核对差异
运维·python·内网穿透·cpolar·配置脱敏
惊讶的猫9 小时前
langchian_agent的高级使用
python